使用说明

项目简介

FastMCP 是一个基于 TypeScript 的框架,旨在简化 MCP 服务器的开发过程。它提供了一套易于使用的 API,用于定义和管理 MCP 服务器的核心组件,如工具 (Tools)、资源 (Resources) 和 Prompt 模板 (Prompts)。

主要功能点

  • 简化工具、资源和 Prompt 的定义。
  • 支持会话管理,为每个客户端连接分配独立的服务器实例。
  • 支持多种传输协议,包括 Stdio 和 SSE。
  • 内置身份验证、日志记录、错误处理和进度通知等功能。
  • 提供 CLI 工具 'fastmcp dev' 和 'fastmcp inspect' 用于开发和调试。

安装步骤

npm install fastmcp

服务器配置

MCP 客户端需要配置服务器的启动命令和参数才能连接。FastMCP 服务器可以通过 'stdio' 或 'sse' 两种传输方式启动。以下是两种方式的配置示例,请根据实际使用场景选择:

stdio 传输配置 (JSON):

{
  "serverName": "My FastMCP Server",
  "command": "npx",
  "args": ["fastmcp", "dev", "path/to/your/server_file.ts"]
}
  • 'serverName': 自定义服务器名称,客户端显示用。
  • 'command': 运行服务器的命令,通常为 'npx'。
  • 'args': 命令参数,包括 'fastmcp dev' 命令和你的服务器入口文件路径 'path/to/your/server_file.ts' (例如 'src/examples/addition.ts')。请将 'path/to/your/server_file.ts' 替换为你的实际服务器文件路径。

SSE 传输配置 (JSON):

{
  "serverName": "My FastMCP Server (SSE)",
  "command": "npx",
  "args": ["fastmcp", "inspect", "path/to/your/server_file.ts"],
  "transport": {
    "type": "sse",
    "options": {
      "endpoint": "/sse",
      "url": "http://localhost:8080/sse"
    }
  }
}
  • 'serverName': 自定义服务器名称,客户端显示用。
  • 'command': 运行服务器的命令,通常为 'npx'。
  • 'args': 命令参数,包括 'fastmcp inspect' 命令和你的服务器入口文件路径 'path/to/your/server_file.ts' (例如 'src/examples/addition.ts')。请将 'path/to/your/server_file.ts' 替换为你的实际服务器文件路径。
  • 'transport': 传输配置。
    • 'type': 传输类型,这里设置为 'sse'。
    • 'options': SSE 传输选项。
      • 'endpoint': SSE 端点,默认为 '/sse'。
      • 'url': 完整的 SSE 服务器 URL,需要根据服务器实际启动地址进行修改。

基本使用方法

  1. 安装 FastMCP: 在你的项目目录下运行 'npm install fastmcp' 安装框架。
  2. 创建服务器文件: 创建一个 TypeScript 文件 (例如 'server.ts'),并引入 'FastMCP' 类开始构建你的 MCP 服务器。参考 'src/examples/addition.ts' 文件学习如何定义工具、资源和 Prompt,以及如何启动服务器。
  3. 启动服务器: 使用 'fastmcp dev path/to/your/server_file.ts' 命令 (stdio 传输) 或 'fastmcp inspect path/to/your/server_file.ts' (SSE 传输,用于配合 MCP Inspector) 启动服务器。
  4. 配置 MCP 客户端: 在你的 MCP 客户端应用中,根据你选择的传输方式 (stdio 或 SSE) 配置连接到 FastMCP 服务器所需的信息,例如启动命令和参数。

信息

分类

开发者工具