使用说明
项目简介
Julia Documentation Server 是一个 MCP 服务器,旨在为大型语言模型 (LLM) 客户端(如 Claude Desktop)提供关于 Julia 编程语言的文档和源代码信息。通过此服务器,LLM 可以访问 Julia 包、模块、类型、函数和方法的详细文档和源代码,从而更好地理解和生成 Julia 代码。
主要功能点
- 获取 Julia 文档: 可以查询 Julia 包、模块、类型、函数和方法的详细文档,支持不同详细程度的文档信息。
- 查看 Julia 源代码: 可以获取 Julia 函数、类型和方法的源代码,并显示源代码上下文,方便理解代码实现。
- 内置缓存: 具备缓存机制,减少重复查询 Julia 进程,提高响应速度。
- 项目结构探索: 可以查看 Julia 项目的依赖关系和结构信息。
- 错误处理: 能够处理 Julia 相关的错误,并返回清晰的错误信息。
安装步骤
- 安装 Node.js: 确保您的系统中已安装 Node.js 16 或更高版本 (https://nodejs.org/)。
- 安装 Julia: 确保您的系统中已安装 Julia 1.9 或更高版本 (https://julialang.org/),并且 Julia 可执行文件已添加到系统的 PATH 环境变量中,或者您知道 Julia 可执行文件的完整路径。
- 克隆仓库: 打开终端,执行命令 'git clone https://github.com/jonathanfischer97/juliadoc-mcp.git' 克隆项目代码。
- 进入目录: 执行 'cd juliadoc-mcp' 进入项目目录。
- 安装依赖: 执行 'npm install' 安装项目依赖。
- 构建项目: 执行 'npm run build' 构建项目。
服务器配置
要将 Julia Documentation Server 与 Claude Desktop 客户端连接,您需要编辑 Claude Desktop 的配置文件。
- 打开 Claude Desktop 配置文件,通常位于 '~/Library/Application Support/Claude/claude_desktop_config.json' (macOS)。如果文件不存在,请先创建。
- 在配置文件中,添加 'mcpServers' 字段,并在其中配置 'juliadoc' 服务器(服务器名称可以自定义)。以下是配置示例:
{ "mcpServers": { "juliadoc": { // 服务器名称,在 Claude Desktop 中使用 @juliadoc 触发 "command": "npx", // 启动服务器的命令,npx 用于运行 npm 包 "args": [ // 传递给命令的参数 "-y", // 自动确认安装 npm 包,无需手动输入 yes "@jonathanfischer97/server-juliadoc" // 要运行的 npm 包名称,即 Julia Documentation Server ], "env": { // 环境变量 (可选) "JULIA_PROJECT": "/path/to/your/julia/project" // (可选) Julia 项目路径。如果需要使用特定的 Julia 项目环境,请设置此项为您的 Julia 项目路径。留空则使用全局 Julia 环境。 } } } }
请注意:
- 'command' 和 'args' 字段指定了启动 Julia Documentation Server 的命令。
- 'server name' (本例中为 'juliadoc') 将用于在 Claude Desktop 中触发此 MCP 服务器,例如 '@juliadoc get-doc ...'。
- 'env' 字段中的 'JULIA_PROJECT' 是可选的,用于指定 Julia 项目环境的路径。如果您的 Julia 代码依赖于特定的项目环境,请设置此项。
基本使用方法
-
启动服务器: 配置完成后,Julia Documentation Server 会在 Claude Desktop 启动时自动启动。您也可以在项目目录下,执行 'npm start' 命令手动启动服务器进行开发和测试。
-
在 Claude Desktop 中使用: 在 Claude Desktop 的对话框中,您可以使用 '@juliadoc' (或您在配置中设置的服务器名称) 加上工具名称和参数来调用 Julia Documentation Server 的功能。
常用工具示例:
- 获取文档: '@juliadoc get-doc path:Base.println' 获取 'Base.println' 函数的文档。
- 获取源代码: '@juliadoc get-source path:LinearAlgebra.det' 获取 'LinearAlgebra.det' 函数的源代码。
- 列出包内容: '@juliadoc list-package path:Statistics' 列出 'Statistics' 包中的符号。
- 探索项目结构: '@juliadoc explore-project path:/path/to/your/julia/project' 探索指定 Julia 项目的结构和依赖 (请替换 '/path/to/your/julia/project' 为实际的项目路径)。
参数说明:
- 'path': 通常用于指定 Julia 对象路径,例如 'Base.sort', 'LinearAlgebra.eigen', 'AbstractArray' 等。
- 'detail_level': (用于 'get-doc' 工具) 可选参数,指定文档详细程度,可选值包括 'concise', 'full', 'all'。 默认为 'full'。
- 'include_unexported': (用于 'get-doc' 和 'list-package' 工具) 可选参数,布尔值,指定是否包含未导出的符号。默认为 'false'。
请根据您的具体需求,结合工具名称和参数,在 Claude Desktop 中灵活使用 Julia Documentation Server 提供的功能。
信息
分类
开发者工具