MCP Inspector 是一个用于测试和调试 MCP 服务器的交互式开发者工具。虽然调试指南将 Inspector 作为整体调试工具包的一部分进行介绍,但本文档将详细探讨 Inspector 的特性和功能。

入门指南

安装和基本使用

Inspector 可以直接通过 npx 运行,无需安装:

npx @modelcontextprotocol/inspector <command>
npx @modelcontextprotocol/inspector <command> <arg1> <arg2>

检查来自 NPM 或 PyPi 的服务器

NPMPyPi 启动服务器包的常见方式。

npx -y @modelcontextprotocol/inspector npx <package-name> <args>
# 例如
npx -y @modelcontextprotocol/inspector npx server-postgres postgres://127.0.0.1/testdb

检查本地开发的服务器

要检查本地开发或作为仓库下载的服务器,最常见的方式是:

npx @modelcontextprotocol/inspector node path/to/server/index.js args...

请仔细阅读任何附带的 README 以获取最准确的说明。

功能概述

MCP Inspector 界面

Inspector 为与 MCP 服务器交互提供了多个功能:

服务器连接面板

  • 允许选择连接到服务器的传输
  • 对于本地服务器,支持自定义命令行参数和环境

资源标签页

  • 列出所有可用资源
  • 显示资源元数据(MIME 类型、描述)
  • 允许资源内容检查
  • 支持订阅测试

提示词标签页

  • 显示可用的提示词模板
  • 显示提示词参数和描述
  • 启用带有自定义参数的提示词测试
  • 预览生成的消息

工具标签页

  • 列出可用工具
  • 显示工具模式和描述
  • 启用带有自定义输入的工具测试
  • 显示工具执行结果

通知面板

  • 显示从服务器记录的所有日志
  • 显示从服务器接收的通知

最佳实践

开发工作流

  1. 开始开发

    • 使用 Inspector 启动你的服务器
    • 验证基本连接
    • 检查功能协商
  2. 迭代测试

    • 对服务器进行更改
    • 重新构建服务器
    • 重新连接 Inspector
    • 测试受影响的功能
    • 监控消息
  3. 测试边缘情况

    • 无效输入
    • 缺失提示词参数
    • 并发操作
    • 验证错误处理和错误响应

下一步