使用说明

项目简介

mcp-framework 是一个基于 TypeScript 开发的框架,旨在帮助开发者快速、优雅地构建 Model Context Protocol (MCP) 服务器。它提供了一套完整的架构和工具,包括自动发现机制、类型安全的抽象层以及便捷的 CLI 工具,让开发者能够专注于实现业务逻辑,而无需从零开始搭建 MCP 服务器的基础设施。

主要功能点

  • 自动化组件发现: 自动扫描并加载 'tools', 'prompts', 和 'resources' 目录下的组件,无需手动注册。
  • 强大的抽象: 提供类型安全的基类和接口 ('MCPTool', 'MCPPrompt', 'MCPResource'),简化组件定义和开发。
  • 简易服务器配置: 提供简单的 API 和配置选项,快速启动和部署 MCP 服务器。
  • CLI 工具: 内置命令行工具 (mcp-cli) 用于快速创建项目、添加组件和构建项目,提升开发效率。
  • 类型安全: 使用 TypeScript 和 Zod 进行类型定义和运行时验证,确保数据类型安全和代码健壮性。

安装步骤

  1. 全局安装 mcp-framework CLI (推荐):

    npm install -g mcp-framework
  2. 创建新的 MCP 服务器项目:

    mcp create my-mcp-server
    cd my-mcp-server

    或者,你也可以手动安装框架到现有Node.js项目中:

    npm install mcp-framework

服务器配置

MCP 服务器主要与 MCP 客户端(例如 Claude Desktop)配合使用。你需要将 MCP 服务器的启动配置添加到客户端的配置文件中。以下是针对 Claude Desktop 的配置示例:

本地开发配置 (claude_desktop_config.json):

{
  "mcpServers": {
    "my-mcp-server": {  // "my-mcp-server" 可以替换为你项目名称,客户端用此名称识别服务器
      "command": "node",  // 启动服务器的命令,这里使用 node
      "args": ["/absolute/path/to/my-mcp-server/dist/index.js"] // 服务器入口文件路径,需要替换为你的项目绝对路径
    }
  }
}

发布后配置 (claude_desktop_config.json):

{
  "mcpServers": {
    "my-mcp-server": {  // "my-mcp-server" 可以替换为你项目名称,客户端用此名称识别服务器
      "command": "npx",  // 启动服务器的命令,这里使用 npx,假设你已将项目发布到 npm
      "args": ["my-mcp-server"] //  使用 npx 运行已发布的包,"my-mcp-server" 为你的项目 npm 包名
    }
  }
}

配置说明:

  • '"my-mcp-server"': 服务器名称,在 Claude Desktop 客户端中用于标识和选择你的 MCP 服务器。可以自定义。
  • '"command"': 启动 MCP 服务器的命令。本地开发时通常使用 'node',发布后可以使用 'npx' 运行已安装的 npm 包。
  • '"args"': 传递给启动命令的参数。
    • 本地开发时,需要提供服务器入口文件 'index.js' 的绝对路径。请务必替换 '/absolute/path/to/my-mcp-server' 为你项目 'dist/index.js' 文件的实际绝对路径。
    • 发布后,如果使用 'npx',则参数为你的项目名称(即 'package.json' 中的 'name' 字段)。

请注意: Claude Desktop 客户端的配置文件路径因操作系统而异:

  • MacOS: '~/Library/Application Support/Claude/claude_desktop_config.json'
  • Windows: '%APPDATA%/Claude/claude_desktop_config.json'

基本使用方法

  1. 创建工具 (Tools), Prompt模板 (Prompts), 资源 (Resources):

    使用 mcp-cli 快速添加组件到你的 MCP 服务器项目中:

    mcp add tool <tool-name>      # 添加工具
    mcp add prompt <prompt-name>    # 添加 Prompt模板
    mcp add resource <resource-name>  # 添加资源

    例如:

    mcp add tool weather-fetcher
    mcp add prompt summarize-text
    mcp add resource user-profile

    这些命令会在 'src/tools', 'src/prompts', 'src/resources' 目录下创建相应的组件文件,你可以根据模板修改代码,实现你的具体功能。

  2. 构建项目:

    npm run build

    此命令会将 TypeScript 代码编译到 'dist' 目录。

  3. 运行服务器:

    本地开发时,可以直接运行编译后的 'dist/index.js' 文件。发布后,根据你的部署方式运行。

  4. 在 MCP 客户端中使用:

    配置好 Claude Desktop 或其他 MCP 客户端后,客户端将能够自动发现并调用你 MCP 服务器提供的工具、Prompt模板和资源,从而扩展 LLM 的能力。

信息

分类

开发者工具