[AIAgent-MCP]从连不上到跑通:MCP Inspector 本地调试 MCP Server 实战记录

MCP Inspector 官方提供的用于测试和调试 MCP 服务器的交互式开发工具; 可以可视化的方式查看和调用测试Server端能力的可用性。

类似于接口调试工具:

部署

部署方式很简单, 直接运行官方提供的 npx @modelcontextprotocol/inspector 即可启动服务:

启动完成后自动调转至浏览器界面

可能遇到的问题: 浏览器无法访问

在命令行设置 set HOST=127.0.0.1

启动服务后Url会变成127.0.0.1 , 可成功访问

调试 MCP Server

MCP Inspector 连接 MCP Server 的方式有三种STDIOSSEStreamable Http; 其中 Streamable Http为主流方式

启动 MCP Server

Streamable Http

命令行启动uv run server.py

之前使用FastMcp运行启动为 mcp.run(transport="streamable-http"),使用这种方式会出现 MCP Inspector 连接不上的问题,Server端会出现如下错误

需要修改代码实现如下, 替换成使用 Starlette + CORSMiddleware

复制代码
app = Starlette(
    routes=[
        # Mount("/", app=mcp.sse_app()),
        Mount("/", app=mcp.streamable_http_app()),

    ],
    lifespan=lifespan,
)

app = CORSMiddleware(
    app,
    allow_origins=[
        "http://localhost:6274",
        "http://127.0.0.1:6274",
    ],
    allow_methods=["GET", "POST", "DELETE", "OPTIONS"],
    allow_headers=["*"],
    expose_headers=["Mcp-Session-Id"],
)

if __name__ == "__main__":
    uvicorn.run(app, host="127.0.0.1", port=8000)

启动方式还是一样

连接 Inspector

  • Transport Type 选择 Streamable Http
  • URL 写入 Http://127.0.0.1:8000/mcp
  • Connection Type 选择 Direct
  • 点击 Connection

连接成功后右侧会出现对于的资源面板, 我们的测试Server端只定义了tools,点击对应的面板,点击List tools即可出现Server端已有的Tool列表,点击对应的Tool,右侧会出现对应的参数、描述及调试按钮。

填入对应的参数,点击Run Tool

即可验证工具的可用性和连通性, 返回结果

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

SSE 方式

该方式为旧版本的实现方式,当前主流请使用Http

Server端将Mount("/", app=mcp.streamable_http_app()), 改成 Mount("/", app=mcp.sse_app()), 去掉lifespan=lifespan,即可

复制代码
app = Starlette(
    routes=[
        Mount("/", app=mcp.sse_app())
        # Mount("/", app=mcp.streamable_http_app()),

    ],
    # lifespan=lifespan,
)

使用 uv run server.py运行

  • Transport Type 选择 SSE
  • URL 写入 Http://127.0.0.1:8000/sse
  • Connection Type 选择 Direct
  • 点击 Connection

即可正常连接,其他使用方式同上述的一致

总结

本次主要分享MCP Inspector 在本地部署的一些排错记录,以及如何使用它帮助我们对MCP Server的资源仅需开发测试,有了它我们就不用自己再写MCP Client去测试我们的MCP Server的资源可用性了。希望对您有用~~~

我是小C,每天学一点 Agent 也拆一点 Agent;尽量把原理弄懂,框架每天都在迭代,不只看用法,更看实现思路。框架会变,原理不变。后续继续分享Agent相关知识笔记~

#MCPInspector #MCPServer调试 #MCP本地调试 #StreamableHTTP #SSE #MCP跨域 #Starlette #CORSMiddleware #AIAgent #Agent工程化

相关推荐
MicrosoftReactor1 天前
技术速递|智能体构建智能体:基于 Microsoft Agent Framework 与 Foundry 的 Skill 优先架构蓝图
ai·架构·agent·智能体·mcp
牧艺2 天前
从 Tool Calling 到 MCP Server:把业务能力做成 Agent 可复用接口
agent·全栈·mcp
凡泰AI2 天前
如何借助MCP打通企业APP内部服务:从统一调用到小程序承接
小程序·uni-app·app·mpaas·mcp·小程序容器
Esaka_Forever2 天前
Github Copilot 是怎么识别到 MCP server 的
aiagent
小四的小六3 天前
MCP Client实战翻车记:两个Server同时跑,AI调错了Tool
openai·ai编程·mcp
在水一缸3 天前
当 AI 拥有了“核按钮”:深入解析 MCP 服务器与命令执行护栏
运维·服务器·人工智能·命令执行·智能体·ai安全·mcp
wMoqi4 天前
trae cn 中ai开发配置skill mcp 规则参考(yudao-cloud项目-个人用)
ai·skill·yudao·mcp·trae
不能只会打代码4 天前
Day 006 — Multi-Agent + MCP/A2A + 安全 + 可观测性
agent·token·sse·multi-agent·mcp·a2a
IPHWT 零软网络5 天前
架构演进:基于零软IPHWT的中小企业轻量化通讯系统设计实践
saas·voip·系统集成·aiagent·呼叫中心·企业通讯·轻量化架构