项目简介

Modex 是一个使用 Clojure 语言开发的 Model Context Protocol (MCP) 服务器,它允许你为 AI 模型(如 Claude)添加自定义的工具 (Tools)、资源 (Resources) 和 Prompt 模板 (Prompts),从而增强 AI 的上下文理解和功能执行能力。与官方 Java SDK 不同,Modex 是原生的 Clojure 实现,并且直接支持 'stdio' 传输协议,无需额外的代理服务。

主要功能点

  • 工具 (Tools): 允许 AI 调用外部功能。Modex 示例中提供了一个名为 'foo' 的工具,可以返回 "Hello, AI!"。你可以根据需要扩展工具,例如连接数据库、调用 API 等。
  • 资源 (Resources): 允许 AI 访问外部数据,如文件或数据库信息。 (目前示例中未明确展示资源管理,但 MCP 服务器具备此能力,可根据项目扩展)
  • Prompt 模板 (Prompts): 支持自定义 Prompt 模板,以定制 AI 的交互模式。(目前示例中未明确展示 Prompt 模板功能,但 MCP 服务器具备此能力,可根据项目扩展)
  • Stdio 传输: 实现了 MCP 协议的 'stdio' 传输方式,可以直接与支持 stdio 的 MCP 客户端(如 Claude Desktop)通信。
  • Clojure 实现: 使用 Clojure 语言开发,如果你熟悉 Clojure,可以方便地进行二次开发和扩展。

安装步骤

  1. 克隆仓库:

    git clone https://github.com/theronic/modex.git
    cd modex
  2. 构建 Uberjar: 运行 'build.sh' 脚本构建可执行的 Uberjar 文件。

    ./build.sh

    构建成功后,会在 'target' 目录下生成 'modex-mcp-server-0.1.0.jar' 文件。

服务器配置

要将 Modex 配置为 MCP 服务器供客户端(例如 Claude Desktop)使用,你需要编辑 Claude Desktop 的配置文件 'claude_desktop_config.json'。

  1. 打开配置文件: 打开 Claude Desktop 配置文件,通常位于:

    ~/Library/Application Support/Claude/claude_desktop_config.json  (MacOS)
  2. 配置 MCP 服务器: 在 'mcpServers' 字段下添加一个新的服务器配置项。你需要提供服务器的名称、启动命令 ('command') 和参数 ('args')。

    {
      "mcpServers": {
        "modex-mcp-hello-world": {  // 服务器名称,可以自定义
          "command": "java",         // 启动命令,使用 java 运行 jar 文件
          "args": [                 // 启动参数
            "-jar",                 // 指定运行 jar 文件
            "/Users/your-username/code/modex/target/modex-mcp-server-0.1.0.jar" // Modex Uberjar 的完整路径,请替换为你的实际路径
          ]
        }
      },
      "globalShortcut": ""
    }

    请务必将 '/Users/your-username/code/modex/target/modex-mcp-server-0.1.0.jar' 替换为你实际的 Modex Uberjar 文件路径。

  3. 重启 Claude Desktop: 保存配置文件并重启 Claude Desktop,配置的 MCP 服务器即可生效。

基本使用方法

配置完成后,你可以在 Claude Desktop 中与 AI 对话时,通过指令调用 Modex 服务器提供的工具。

例如,在 Claude 中输入以下指令:

run foo

what does foo say?

Claude 就会调用 Modex 服务器的 'foo' 工具,并返回 "Hello, AI!" 的响应。

你可以根据 Modex 项目的源代码,扩展和修改 'foo' 工具的功能,或者添加新的工具、资源和 Prompt 模板,以满足你的实际需求。

注意: Modex 项目目前还处于开发阶段,可能只实现了 MCP 协议的部分功能。请参考项目仓库的 'README.md' 和源代码了解详细信息和最新进展。

信息

分类

开发者工具