Python-MCPInspector调试V2 (Python)
Python-MCPInspector调试V2 (Python)文章目录Python-MCPInspector调试V2 (Python)前置要求快速开始项目结构已注册的能力Tools工具Resources资源Prompts提示词模板使用 Inspector 调试接入 Claude Desktop生产环境注意事项全量代码2026-07-29-基于 Model Context Protocol (MCP) 的演示服务端Python 版支持 Tools、Resources、Prompts 三大核心能力。MCPInspector调试参考https://blog.csdn.net/2301_77717148/article/details/147881127当前代码github代码仓库地址https://gitee.com/enzoism/python_mcp_inspector前置要求Python ≥ 3.10pip ≥ 21快速开始# 1. 进入项目目录cdmcp-demo-server-py# 2. 创建虚拟环境推荐python-mvenv .venvsource.venv/bin/activate# Linux/macOS# .venv\Scripts\activate # Windows# 3. 安装依赖pipinstall-rrequirements.txt# 或pipinstallmcp# 4. 运行服务python src/server.py项目结构mcp-demo-server-py/ ├── pyproject.toml # 项目配置可选用于打包 ├── requirements.txt # 依赖列表 ├── src/ │ └── server.py # MCP 服务端主代码 └── README.md # 说明文档已注册的能力Tools工具工具名描述参数get_weather获取指定城市天气city: strcalculate安全计算数学表达式expression: strget_current_time获取当前系统时间无Resources资源资源名URI描述app_settingsconfig://app/settings应用配置信息JSONreadmefile://docs/readme项目说明文档Prompts提示词模板模板名描述参数code_review代码审查code,languageerror_analysis错误分析error,context使用 Inspector 调试npx modelcontextprotocol/inspector python src/server.py接入 Claude Desktop在 Claude Desktop 配置文件~/Library/Application Support/Claude/claude_desktop_config.json中添加{mcpServers:{demo-server-py:{command:python,args:[/absolute/path/to/mcp-demo-server-py/src/server.py]}}}注意使用绝对路径且确保 Python 环境已安装mcp包。生产环境注意事项安全性严格校验所有入参限制文件读取目录禁用eval等危险方法性能优化所有工具函数使用async避免阻塞事件循环可维护性工具、资源描述清晰具体完善错误提示版本兼容依托 SDK 自动完成协议版本协商全量代码 MCP Demo Server (Python) 基于 mcp Python SDK 实现支持 Tools、Resources、Prompts 三大核心能力。 frommcp.server.fastmcpimportFastMCP# 初始化 MCP 服务实例mcpFastMCP(demo-server)# # 1. 注册工具能力天气查询、数学计算、时间获取# mcp.tool()asyncdefget_weather(city:str)-str:获取指定城市的当前天气信息 Args: city: 城市名称如 北京 mock_data{北京:{temp:22°C,weather:晴,humidity:45%},上海:{temp:25°C,weather:多云,humidity:60%},深圳:{temp:28°C,weather:阵雨,humidity:80%},}datamock_data.get(city)ifdata:returnf城市:{city}\n温度:{data[temp]}\n天气:{data[weather]}\n湿度:{data[humidity]}returnf未找到城市 {city} 的天气数据mcp.tool()asyncdefcalculate(expression:str)-str:安全地计算数学表达式 Args: expression: 数学表达式如 2 3 * 4 allowed_charsset(0123456789-*/().% )ifnotall(cinallowed_charsforcinexpression):return错误表达式包含不允许的字符try:# 使用受限的 eval 环境只允许数学运算resulteval(expression,{__builtins__:{}},{})returnstr(result)exceptExceptionase:returnf计算错误{e}mcp.tool()asyncdefget_current_time()-str:获取当前系统时间fromdatetimeimportdatetime nowdatetime.now()returnnow.strftime(%Y-%m-%d %H:%M:%S)# # 2. 注册资源能力应用配置读取、本地文件读取# mcp.resource(config://app/settings)asyncdefapp_settings()-str:获取应用配置信息importjson config{app_name:Demo MCP Server,version:1.0.0,features:{weather:True,calculator:True,file_reader:True},max_file_size_mb:10,}returnjson.dumps(config,indent2,ensure_asciiFalse)mcp.resource(file://docs/readme)asyncdefreadme()-str:项目说明文档return这是一个基于 MCP 协议的演示服务端Python版支持天气查询、数学计算、代码审查等功能。# # 3. 注册提示词模板代码审查、错误分析# mcp.prompt()defcode_review(code:str,language:strpython)-str:代码审查提示词 Args: code: 待审查的代码 language: 编程语言默认为 python return(f请对以下{language}代码进行审查f从代码质量、潜在Bug、性能、安全性、最佳实践五个维度给出评价和优化建议\nf{language}\n{code}\n)mcp.prompt()deferror_analysis(error:str,context:str)-str:错误分析提示词 Args: error: 错误信息或堆栈跟踪 context: 相关上下文代码 promptf请分析以下错误信息给出可能的原因和解决方案\n\n错误信息\n\n{error}\nifcontext:promptf\n\n相关代码\n\n{context}\nreturnprompt# # 启动服务采用 stdio 本地传输模式# if__name____main__:mcp.run(transportstdio)**

相关新闻

千笔AI:科研写作智能助手的功能解析与应用技巧

千笔AI:科研写作智能助手的功能解析与应用技巧

1. 千笔AI:科研工作者的智能写作革命第一次在实验室深夜赶论文时遇到千笔AI,那种感觉就像突然多了一位24小时在线的学术助手。这个工具彻底改变了我处理文献综述、论文框架和学术写作的方式——它不仅能快速生成符合学术规范的初稿,还能精准定…

2026/10/4 15:39:03 阅读更多 →
深度学习图像数据挖掘文档 《垃圾图像自动分类》 312(设计源文件+万字报告+讲解)(支持资料、图片参考_相关定制)_文章底部可以扫码

深度学习图像数据挖掘文档 《垃圾图像自动分类》 312(设计源文件+万字报告+讲解)(支持资料、图片参考_相关定制)_文章底部可以扫码

深度学习图像数据挖掘文档 《垃圾图像自动分类》 312(设计源文件万字报告讲解)(支持资料、图片参考_相关定制)_文章底部可以扫码 模型采用Inception V3 包括代码报告数据

2026/10/2 12:26:05 阅读更多 →
UE5项目现代C++实践:智能指针、Lambda与移动语义优化

UE5项目现代C++实践:智能指针、Lambda与移动语义优化

1. 项目概述:为什么要在UE5项目中谈现代C?如果你是一个从UE4时代走过来的开发者,或者刚接触UE5不久,看到“现代C”这个词可能会有点懵。引擎本身不是已经封装好了蓝图和一套成熟的C API吗?为什么还要折腾C11/14/17甚至…

2026/10/1 9:57:37 阅读更多 →

最新新闻

【claude】cli工具安装后,把 settings 改到 TaoToken 的完整配置指南

【claude】cli工具安装后,把 settings 改到 TaoToken 的完整配置指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 15:38:10 阅读更多 →
插件系统开发实战:plugin.json配置、TypeScript SDK与CLI加载机制详解

插件系统开发实战:plugin.json配置、TypeScript SDK与CLI加载机制详解

1. 从“plugins”这个词说起:它到底在解决什么问题“plugins”这个词,放在今天的开发语境里,几乎已经成了一个绕不开的基础设施级概念。不管你是用 Cursor 写代码、用 Codex CLI 跑命令、还是在 VS Code 里装扩展,背后都离不开插件…

2026/10/4 15:38:10 阅读更多 →
插件开发实战:从plugin.json到加载失败排查的完整指南

插件开发实战:从plugin.json到加载失败排查的完整指南

1. 从“plugins”这个词说起:它到底在解决什么问题“plugins”这个词,放在今天的开发语境里,几乎已经成了一个绕不开的基础设施级概念。不管你是用 Cursor 写代码、用 Codex CLI 跑命令、还是在 VS Code 里装扩展,背后都离不开插件…

2026/10/4 15:38:10 阅读更多 →
2026年AIGC自检工具怎么选?毕业之家 vs 7款主流平台实测对比(附免费攻略)

2026年AIGC自检工具怎么选?毕业之家 vs 7款主流平台实测对比(附免费攻略)

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 15:38:10 阅读更多 →
插件机制深度解析:从IAR到MusicFree从报错到实战

插件机制深度解析:从IAR到MusicFree从报错到实战

最近在翻搜索记录的时候,发现 plugins 这个词的热度比我想象的高得多。有人一头雾水地问 iar plugins 是干什么的,有人对着 failed to load plugins web boot: 2 entries did not activate 这种报错发呆,还有人刚拿到新设备就急着折腾 musicf…

2026/10/4 15:38:10 阅读更多 →
vscode使用插件KoroFileHeader添加注释,以及解决快捷键冲突详解(fileheader、cursorTip)

vscode使用插件KoroFileHeader添加注释,以及解决快捷键冲突详解(fileheader、cursorTip)

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 15:37:10 阅读更多 →

日新闻

KT148A语音芯片外挂8002D功放的工程实践指南

KT148A语音芯片外挂8002D功放的工程实践指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 1:00:58 阅读更多 →
LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 1:00:58 阅读更多 →
ARM架构深度解析:从RISC设计理念到交叉编译实战

ARM架构深度解析:从RISC设计理念到交叉编译实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 1:00:58 阅读更多 →

周新闻

KT148A语音芯片外挂8002D功放的工程实践指南

KT148A语音芯片外挂8002D功放的工程实践指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 1:00:58 阅读更多 →
LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 1:00:58 阅读更多 →
ARM架构深度解析:从RISC设计理念到交叉编译实战

ARM架构深度解析:从RISC设计理念到交叉编译实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 1:00:58 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 11:40:45 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/4 9:43:54 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/3 9:42:36 阅读更多 →