Phil-AI MCP 服务端

使用说明(Markdown 格式)

  • 项目简介

    • 该仓库实现了一个 MCP 服务器端(MCP 即 Model Context Protocol),用于向 LLM 客户端提供可执行的工具集合、以及基础的上下文能力管理。服务器通过标准的 JSON-RPC 接口响应 ListTools 与 CallTool 请求,并对外暴露若干工具集(如学习、文档、上下文、工作流、引导等),用于增强 LLM 的能力执行和上下文联系。
  • 主要功能点

    • 提供并注册多组工具集,能被 MCP 客户端查询到工具名称、描述及输入模式(inputSchema)。
    • 支持工具调用:客户端通过 CallTool 请求执行指定工具,服务器返回执行结果(如文本内容、结构化数据等)。
    • 使用标准的 JSON-RPC 交互格式,方便与各类 LLM 客户端对接。
    • 通过 STDIO 传输作为默认传输方式,便于在本地开发与测试环境中运行和调试;未来可拓展为 SSE/WebSocket 等传输。
    • 将多组工具按分类聚合(学习、Docs、Context、Workflow、Guide),并在启动时汇总为一个统一的工具集合供客户端查询。
  • 安装步骤

    • 环境准备:请确保已经在开发环境中安装了 Bun v1+(用于执行脚本和仓库内 TypeScript/JS 代码)。
    • 启动服务器:
      • 直接在仓库根目录或 mcp 目录下执行:运行命令将启动 MCP 服务器(默认通过 STDIO 传输,与 MCP 客户端通过标准输入/输出进行通信)。
    • 验证服务器是否运行正常:启动后应看到输出信息,表示 MCP 服务器正在通过标准输入/输出与客户端建立连接。
  • 服务器配置(MCP 客户端所需配置,JSON 格式) 说明:MCP 客户端需要配置一个连接到服务器的入口信息。以下为一个示例配置,包含服务器名称、启动命令以及参数说明,便于客户端了解如何启动并连接到 MCP 服务器。注:该客户端配置不需要直接包含服务器实现的代码,仅用于描述连接参数。

    { "serverName": "phil-ai", "description": "MCP 服务端,向 MCP 客户端暴露工具集合并执行工具", "command": "bunx phil-ai-mcp", "args": [], "transport": "stdio", "notes": "启动后,客户端通过标准输入输出与服务器进行 JSON-RPC 交互。服务器暴露的工具包括学习、文档、上下文、工作流和引导等。" }

    配置项说明(简要注释,便于理解)

    • serverName: MCP 服务器标识,应与服务器实现中的名称对齐,这里设为“phil-ai”。
    • command/args: 启动服务器所需的命令及参数。当前实现通过 bunx phil-ai-mcp 启动。
    • transport: 通信传输方式,当前实现使用标准输入/输出(stdio)。
    • notes: 说明性信息,帮助客户端理解连接方式和暴露的能力。
  • 基本使用方法

    • 启动服务器后,MCP 客户端通过 JSON-RPC 向服务器发送 ListTools 请求以获取可用工具列表;服务器返回工具名称、描述和输入模式。
    • 客户端可通过 CallTool 请求调用指定的工具,传入所需的参数,服务器执行并返回结果(如文本、数据结构等)。
    • 如需调试或开发,建议在本地直接通过 STDIO 连接进行交互测试,确保工具集(学习、docs、context、workflow、guide)能够正确注册和执行。
  • 运行与交互要点

    • 服务器按需加载并暴露工具集,执行器在命令和参数层面保持简单,便于 LLM 客户端将自然语言指令映射为工具参数。
    • 当前实现聚焦工具注册与执行的 MCP 功能,作为上下文服务的一部分,后续可扩展资源、提示模板等能力。

备注:以上描述基于仓库中 mcp 目录的实现情况,该实现通过 JSON-RPC 接口提供工具查询与执行能力,具备一个完整的 MCP 服务器的核心运行要素。

服务器信息