Fastn MCP 服务器

使用说明(Markdown 格式)

  • 项目简介

    • 该仓库实现了一个基于 MCP(Model Context Protocol)的后端服务器,用于向 AI 客户端(如 Claude、Cursor、Lovable 等)提供统一的资源访问、工具执行与提示模板渲染能力。服务器通过多种传输协议(stdio、SSE、Streamable HTTP)与客户端通信,内置 OAuth 2.1 授权、会话管理以及工具/流程编排等能力。
  • 主要功能点

    • MCP 传输支持:stdio、SSE、shttp(Streamable HTTP),支持本地开发与远程部署。
    • 资源与工具暴露:集合了大量 connectors 的工具发现、执行、连接器浏览等能力,以及流程管理(创建、执行、删除、部署等)。
    • 授权与安全:内置 OAuth 2.1 桥接、可选的保护资源元数据端点,支持自定义鉴权提供者,以及 token 的解析与映射。
    • Flow 与 Prompt:提供 flow 构建、执行、获取 schema、工具组合、以及提示模板渲染,方便对话式与自动化工作流。
    • 客户端配置简化:提供标准化的 MCP 客户端配置示例(JSON),可指向服务器端的不同工具端点,支持按项目/技能预设上下文。
    • 拓展性设计:模块化的工具处理、可选的 Firestore 会话存储、按模式的服务器实例(每个 HTTP 端点对应一个预配置工具集)。
  • 安装步骤

    • 环境准备:Python 3.x,推荐虚拟环境。
    • 安装(开发版本即可运行):pip install fastn-mcp-server
    • 运行选项(其中任意组合均可启用对应传输):
      • stdio 模式用于本地桌面/脚本集成
      • SSE 与 shttp 组合用于远程/云端部署
    • 启动示例(无代码块,供理解)
      • 使用 SSE 与 Streamable HTTP 启动:快速执行命令 python -m fastn_mcp --sse --shttp --port 8000
      • 只使用 SSE:python -m fastn_mcp --sse --port 8000
      • 只使用 Streamable HTTP:python -m fastn_mcp --shttp --port 8000
    • 自定义配置
      • 如需自定义服务器地址、认证等,请按需要传递参数,例如服务器地址、公开地址等,以便生成 OAuth 元数据端点。
  • 服务器配置(给 MCP 客户端的配置,是 JSON 格式,不包含代码)

    • 示例配置(解释性文本,非代码块): { "server_name": "fastn-mcp", "command": "python", "args": [ "-m", "fastn_mcp", "--sse", "--shttp", "--host", "0.0.0.0", "--port", "8000", "--server-url", "https://your-public-domain.com" ] }
    • 说明
      • server_name:MCP 服务器实例名称,标识当前运行的 MCP 后端。
      • command/args:启动服务器的命令及参数,包含所需传输模式与端口信息。MCP 客户端通常不需要直接查看该信息,但用于容器化/编排时可作为启动参数参考。
      • 另外可通过环境变量控制传输模式、认证开关等,例如 FASTN_MCP_TRANSPORT、FASTN_MCP_NO_AUTH、FASTN_MCP_SERVER_URL 等。
  • 基本使用方法

    • 客户端接入与配置
      • 通过配置文件或初始化命令指向服务器地址,例如 /shttp 或 /sse 端点,确保使用 MCP OAuth 2.1 或 API Key 方式进行鉴权。
      • 客户端在启动时需要指定 server_url、传输方式、以及认证方式等信息,以确保正确的上下文和权限管理。
    • 典型工作流
      • 使用 find_tools/execute_tool 发现并执行连接器工具
      • 使用 list_connectors 浏览可用连接器
      • 使用 list_projects/list_skills 管理项目与技能
      • 使用 generate_flow/run_flow/delete_flow/deploy_flow 进行流程编排与发布
    • 安全注意
      • 如使用 OAuth,请确保正确配置服务器的 public URL,以便端点元数据正确暴露。
      • 根据环境选择是否启用认证(no-auth 仅用于本地开发)。
  • 注意与建议

    • MCP 客户端需要正确配置服务器 URL、传输方式与鉴权信息以建立连接。
    • 如在自托管环境中,推荐使用 SSE + shttp 的组合,以兼容大多数云端/本地 AI 平台的接入方式。

服务器信息