当前位置: 首页 > news >正文

python开发mcp入门

先把准备工作做好

1:安装uv

官网安装 :https://docs.astral.sh/uv/getting-started/installation/
pip安装: pip install uv

2:安装node

初始化项目

uv init mcp-server-demo
cd mcp-server-demo
uv add "mcp[cli]"

编写代码 mcp_server.py 别叫mcp,因为跟包名冲突了,md。。。。

from mcp.server.fastmcp import FastMCP
from pathlib import Path
import sys
import json# Create an MCP server
mcp = FastMCP("Demo", debug=True, log_level="DEBUG")# Add an addition tool
@mcp.tool(name="add", description="计算两数之和")
def add(a: int, b: int) -> int:"""计算两数之和"""return a + b# Add a dynamic greeting resource
@mcp.resource("greeting://{name}")
def get_greeting(name: str) -> str:"""Get a personalized greeting"""print(f"DEBUG: get_greeting called with name={name}", file=sys.stderr)return f"Hello, {name}!"# Add a prompt
@mcp.prompt()
def greet_user(name: str, style: str = "friendly") -> str:"""生成一个个性化的问候"""styles = {"friendly": "Please write a warm, friendly greeting","formal": "Please write a formal, professional greeting","casual": "Please write a casual, relaxed greeting",}return f"{styles.get(style, styles['friendly'])} for someone named {name}."# "获取用户桌面的文件列表
@mcp.resource("dir://desktop")
def desktop() -> list[str]:"""获取用户桌面的文件列表"""print("DEBUG: desktop resource called", file=sys.stderr)try:desktop_path = Path.home() / "Desktop"# 检查路径是否存在if not desktop_path.exists():return [f"错误: 桌面路径不存在 - {desktop_path}"]# 返回文件列表return [str(f) for f in desktop_path.iterdir()]except Exception as e:return [f"获取文件列表失败: {str(e)}"]# 以stdio模式启动MCP服务器
def main() -> None:# 处理标准输入的资源请求mcp.run()if __name__ == "__main__":main()

方式1:启动测试服务--这里需要node环境

mcp dev mcp_server.py

你写的tool、resource、prompt都可以看到

image

方式2:当作自定义mcp添加到cline、trae等这种工具里面。我这里用的trae

uv --directory D:\code\python run mcp_server.py

image

但是这种方式我试了很多次,只能识别到tool,其他的resource、prompt怎么弄都无法识别,有懂得可以告诉我怎么弄

http://www.sczhlp.com/news/84495/

相关文章:

  • 建造者模式进阶:复杂AI服务的优雅构建
  • 代理模式在AI应用中的安全实践:AOP + 限流 + 权限控制
  • 怎么做直播网站网站建设与管理自考
  • 山西太原建站怎么做滨海新区网站建设
  • 苏州建设招聘信息网站宁波网页制作设计营销
  • 做qq链接的网站php空间购买
  • 电商网站开发需要多少钱网站开发能申请软件著作权吗
  • 网站注销重新备案wordpress 生成图片
  • ​​高压差分探头:高电压测量的精密之眼​​
  • OCP认证烂大街了吗?别跟风问这个问题了
  • 全国连锁贸易公司数字化管理软件-优德普SAP零售行业解决方案
  • Win7、WinServer2008运行.net8.net4.8程序的解决方案
  • dede饮食网站模板网页软件下载
  • 网站建设佛山网站建设项目需求分析流程
  • 网站视频管理系统wordpress添加固定结尾
  • 昌乐网站建设学百度推广培训
  • 郑州网站推广招聘秦皇岛网络推广公司
  • 贵阳网站制作方舟网络个人企业邮箱怎么申请
  • 关于网站的建设莱芜新闻主持人名单
  • 网站制作合肥改变网站的域名
  • 银川迅雷网站建设手工制作的意义和作用
  • 周浦做网站自己做小程序开个社区团购
  • 网站建设的产品类型是什么奇想网站建设
  • 在阿里云服务器做淘客网站网站制作公司多少人
  • 最全的ppt模板网站简历在线制作网站
  • 做外贸建网站需要推广吗天津建设网站官网
  • 如何免费搭建网站做淘宝一样的网站
  • 查询网站备案密码青岛北京网站建设价格
  • 怎么提高网站加载速度慢wordpress单点sso
  • 浙江省建设安全监督站的网站室内设计网上教学