MCP Inspector 服务器端实现

  • 项目简介

    • 该仓库实现了 MCP Inspector 的服务端部分,用于对接 MCP 客户端,提供资源、工具、提示等核心 MCP 功能的服务端实现与中间件能力,并实现对 MCP 的路由、资源渲染、以及工具执行的测试环境。
  • 主要功能点

    • 资源管理:托管、读取、描述与预览 MCP 服务端暴露的资源(如文本、图片等)。
    • 工具注册与执行:支持服务端注册工具、执行工具、并对结果进行渲染(含对话、要素化结果、Widget 支持)。
    • 提示与模板:提供 Prompts 的定义、渲染与测试能力,支持交互式参数输入。
    • MCP Apps / OpenAI Apps 集成:内置对 MCP Apps、ChatGPT Apps 等的支持与示例,含 dev widget/ content 流程、CSP 等安全策略处理。
    • JSON-RPC 通信模型:服务器端遵循 MCP 的通信语义,通过 JSON-RPC 与客户端交互,包含流式响应与工具调用事件。
    • 会话与认证:包含 API Key、自定义头部、OAuth 等多种认证测试场景,便于对接不同场景的 MCP 客户端。
    • 多传输协议支持:为客户端提供多种传输方案(SSE、WebSocket、stdin/stdio)的接入能力。
  • 安装步骤

    • 克隆仓库并进入项目目录。
    • 安装依赖:安装所需 Node 环境及包管理工具(如 Node.js 18+,pnpm/yarn/npm)。
    • 构建 Inspector UI:执行构建以生成前端静态资源(dist/web)。
    • 启动服务器:运行服务器端代码,监听 MCP 服务端端点(如 /mcp 路径)。
    • 客户端连接:MCP 客户端通过 JSON-RPC 与服务器交互,示例连接通常指向 http://<host>:<port>/mcp。
    • 运行认证测试服务器(可选):如 API Key、Custom Header、OAuth(Linear、Supabase、GitHub、Vercel)的测试环境,用于端对端验证。
  • 服务器配置(MCP 客户端连接所需的配置信息,JSON 格式;包含 server name、command、args 等字段;示例仅供理解,实际部署按需调整) { "serverName": "ConformanceInspectorServer", "description": "MCP Inspector Conformance Test Server", "command": "node", "args": ["dist/server/index.js", "--port", "3002"] } 说明:以上配置用于 MCP 客户端启动并连接到 MCP Inspector 服务器的运行实例。serverName 为服务器标识,command/args 指定启动 MCP 服务器的命令与参数。实际部署时可将 dist/server/index.js 替换为实际打包后的入口,并调整端口号以避免冲突。

  • 基本使用方法

    • 启动与连接
      • 构建 UI 后启动 MCP Inspector 服务端,确保服务器对外暴露的 MCP 端点可达。
      • 使用 MCP 客户端指向该服务器的 MCP 端点(如 http://localhost:3002/mcp)进行连接。
    • 功能使用
      • 通过 MCP Inspector 的管理界面或直接使用工具、资源、Prompts 等体验 MCP 服务器的能力。
      • 使用聊天/提示、工具调用等功能测试 MCP 服务器对 LLM 请求的处理、工具执行路径及返回的结构化数据。
    • 安全与认证
      • 根据需要配置 API Key、自定义头、OAuth 等认证方式,Inspector 提供示例与帮助来测试不同认证场景。
    • 调试与扩展
      • Inspector 提供了开发时若干调试与扩展能力(如 CSP、Dev Widget、Widget CSP、HMR 相关测试等),可用于 MCP 服务器的本地开发与测试。
  • 备注

    • 本仓库实现的 MCP Inspector 服务端侧具备完整的路由、资源管理、工具执行、脚本渲染、以及与 MCP 客户端的通信能力,符合 MCP 服务器的核心功能要求与运行条件。若仅看测试代码或示例,需确保以服务器实现为核心进行集成与部署。

服务器信息