← 返回目录
M

MCP Interviewer

官方
在智能体遇到问题之前,先发现 MCP 服务器的问题。
GitHub 源仓库 ↗
★ 155 Stars 分类 · 开发工具 非常热门
52FMRS · D

MCP Interviewer 是微软开源的 MCP 服务器预检工具,把约束检查、可选功能测试、实验性 LLM 评估和报告生成打包成一个 CLI(也可作为 Python 库使用)。它的价值在于让开发者更早发现服务器配置与行为问题,并可在 CI/CD 中用 --fail-on-warnings 把关。但它会执行任意服务器命令、测试时会实际调用工具,且官方明确标注为研究与实验用途,输出需要人工复核,因此不适合在不做隔离和审查的情况下直接用于生产环境。

可靠性
9/20
安全与权限
8/20
维护活跃度
10/20
文档质量
14/20
安装易用性
11/20
查看 FMRS 评分方法 →

MCP Interviewer 是微软开发的一个 Python 命令行工具,用于在 LLM 智能体使用 MCP 服务器之前对其进行检查。它提供三个层面的能力:约束检查(例如 OpenAI 对工具数量、名称长度、名称模式和 token 长度的限制)、可选的功能测试(由你指定的 LLM 根据服务器能力生成测试计划并调用工具执行,收集工具行为统计),以及实验性的 LLM 评估(对服务器特性给出结构化与自然语言的评价)。检查完成后会生成 Markdown 报告以及原始数据的 JSON 文件。该工具需要执行你提供的 MCP 服务器命令,官方建议在容器中隔离运行,并明确说明其面向研究与实验用途,尚未经过商业或真实场景的充分验证。

安装接入

  1. 作为 CLI 工具安装:pip install mcp-interviewer。
  2. 将 MCP 服务器命令作为参数传入,例如先设置容器命令 NPX_CONTAINER="docker run -i --rm node:lts npx",然后执行 mcp-interviewer "$NPX_CONTAINER -y @modelcontextprotocol/server-everything"。
  3. 如需功能测试或 LLM 评估,添加 --model 和 --test / --judge-tools / --judge-test / --judge 等标志(这些选项需要模型)。
  4. 运行后会生成 mcp-interview.md 报告和对应的 mcp-interview.json 数据文件。
  5. 也可以作为依赖使用:uv add mcp-interviewer 或 pip install mcp-interviewer,并在 Python 中导入 mcp_interviewer。

选型与风险

适合谁

  • 想要在部署前发现 MCP 服务器配置与约束问题的开发者
  • 需要在 CI/CD 中加入 MCP 服务器质量检查的团队
  • 愿意在容器中隔离运行被测服务器并手动复核输出的研究人员

不适合谁

  • 希望直接在生产环境中无隔离运行任意服务器命令的用户
  • 期望获得经充分验证、可直接商用结论的用户
  • 不希望配置容器隔离或 LLM 模型客户端的用户

所需权限

  • 执行用户提供的 MCP 服务器命令(在子进程中运行,MCP Python SDK 会在主机上执行任意命令)
  • 启用功能测试(--test)时会调用服务器的工具
  • 使用 LLM 功能时需要访问所指定的 OpenAI 兼容 API(可能包括本地 Ollama 端点)

风险与副作用

  • 被测服务器命令会在主机上执行,若不在容器中隔离,可能危及主机系统、敏感数据或文件
  • 启用 --test 会实际调用服务器工具,可能产生不可预期的副作用
  • 服务器可能带有恶意或误导性的工具元数据,导致 MCP Interviewer 的输出不准确或被操纵
  • LLM 生成的功能测试计划和评估结果可能有错误,官方提示所有 LLM 评估都应人工复核
  • 该工具为研究与实验性质,尚未经过充分测试与验证

常见排障

  1. 若命令未找到或执行失败,确认服务器命令本身可独立运行,并考虑用容器命令(如 docker run -i --rm node:lts npx)包装
  2. 若提示需要模型,检查是否使用了 --test、--judge-tools、--judge-test 或 --judge,并为这些选项提供 --model
  3. 连接本地模型(如 Ollama)失败时,检查 --client-kwargs 中的 base_url 与 api_key 是否正确
  4. 使用自定义 OpenAI 兼容客户端时,确认 --client 指定的导入路径可被解析且为无参可调用对象
  5. 若输出可疑或异常,先人工检查服务器元数据,并参考仓库的 TRANSPARENCY.md 说明

使用场景

在把 MCP 服务器交给智能体使用前,检查其是否违反提供方的硬性约束
为 CI/CD 流程做检查,使用 --fail-on-warnings 在出现约束警告时失败
对 MCP 服务器进行功能测试,调用其工具并收集工具调用统计
使用 LLM 对服务器工具和测试结果进行实验性评估,并生成 Markdown 报告