30行Python代码实现MCP万能工具插件,一次开发适配所有AI Agent

用30行Python代码,给你的AI Agent装上MCP“万能工具插件”
给AI Agent接入天气查询、数据库操作或内部API时,你是否遇到过这样的困境:OpenAI一套格式、Claude一套格式、国产大模型又是另一套?光是适配不同平台的tool calling接口,就耗掉了大把时间。
别折腾了。今天教你用30行Python代码,基于MCP(Model Context Protocol)协议,打造一个“万能工具插件”。一次开发,就能让你的工具被任何支持MCP的AI Agent——无论是Claude、LobsterAI还是其他平台——直接调用。
为什么你的Agent工具开发这么痛苦?
当前AI Agent开发的一大痛点,就是工具调用(Tool Calling)的碎片化。
- 格式不统一:OpenAI的Function Calling用JSON Schema描述工具;Claude的Tool Use格式类似但细节不同;国内大模型厂商又各有各的实现。
- 重复开发:同一个“获取天气”功能,你可能需要为3个平台写3套不同的接口适配层。
- 维护成本高:任何工具逻辑变更,都意味着所有平台的适配代码需要同步更新。
这就像你为三种不同品牌的手机,分别开发充电器——效率低下,资源浪费。
MCP协议:一统江湖的“工具USB-C”
MCP(Model Context Protocol) 的出现,就是为了解决这个问题。你可以把它理解为 AI Agent领域的“USB-C”标准。
它的核心思想很简单:
- 工具提供方(你)只需按照MCP标准,将工具封装成一个MCP Server。
- AI Agent平台(消费者)只需支持MCP Client协议。
- 双方通过标准协议通信,工具即插即用,无需关心底层实现差异。
技术价值一览:
- 降低开发门槛:你只需学习一套协议,而非N个平台的私有协议。
- 提升工具复用性:一个MCP Server可以被无数个Agent平台调用。
- 实现跨平台兼容:真正实现“一次开发,到处运行”。
实战:30行代码打造一个“实时汇率查询”MCP Server
直接上手。这个例子将创建一个简单的MCP Server,提供get_exchange_rate工具,查询美元兑人民币的实时汇率(模拟数据)。
第一步:环境准备
pip install mcp # 安装MCP官方Python SDK第二步:编写MCP Server代码 (exchange_rate_server.py)
from mcp.server import Server
from mcp.types import Tool, TextContent
import asyncio
# 1. 初始化MCP Server
server = Server("exchange-rate-server")
# 2. 定义工具:描述工具名称、功能、输入参数
@server.list_tools()
async def list_tools():
return [
Tool(
name="get_exchange_rate",
description="获取美元兑人民币的实时汇率(模拟数据)",
inputSchema={ # 使用JSON Schema定义输入参数
"type": "object",
"properties": {
"date": {
"type": "string",
"description": "查询日期,格式YYYY-MM-DD,默认为今天"
}
},
"required": [] # 没有强制参数
}
)
]
# 3. 实现工具调用逻辑
@server.call_tool()
async def call_tool(name: str, arguments: dict):
if name == "get_exchange_rate":
# 模拟数据:实际项目中这里会调用真实API
rate = 7.2485 # 假设今日汇率
date = arguments.get("date", "2026-03-23")
result = f"日期:{date}\n美元兑人民币汇率:{rate}"
return [TextContent(type="text", text=result)]
else:
raise ValueError(f"未知工具: {name}")
# 4. 启动Server(使用标准输入输出作为传输层)
if __name__ == "__main__":
asyncio.run(server.run())第三步:让AI Agent连接并调用你的工具
现在,任何支持MCP Client的Agent都可以发现并使用你的工具了。以Claude Desktop为例(需已安装MCP支持):
- 在Claude Desktop的配置文件中,添加你的Server。
- 重启Claude,它会自动发现
get_exchange_rate工具。 - 在对话中直接说:“查一下今天的美元汇率”,Claude就会自动调用你的MCP Server并返回结果。
整个过程,Agent端不需要写任何额外代码。 工具的发现、参数解析、调用、结果返回,全部由MCP协议自动处理。
这不仅仅是技术Demo:可复制的商业化路径
这个“汇率查询”示例虽然简单,但其模式可以轻松复制到更有价值的场景:
- 内部系统连接器:将公司CRM、ERP、数据库封装成MCP Server,让销售、客服Agent能安全查询业务数据。
- 专业领域工具:封装法律条文查询、医疗知识库、财务计算模型,通过MCP提供给特定行业的Agent使用。
- SaaS服务AI化:如果你有一个API服务(如图像处理、文本分析),提供MCP接口,就能直接接入AI Agent生态,获得新的分发渠道。
商业化关键:将你的MCP Server部署为稳定服务(如使用Docker容器化),并提供清晰的工具描述和文档,就能在AI Agent生态平台(如yitb.com)上架,按调用次数或订阅制收费。
下一步行动:立即动手,抢占生态位
- 复制上面的代码,在你的本地环境运行起来。用
python exchange_rate_server.py启动Server。 - 连接一个Agent:如果你有Claude Desktop或支持MCP的Agent客户端,尝试配置并调用它。
- 改造你的第一个工具:想一想你手头有什么现成的Python函数或API,用同样的模式封装成MCP Server。
- 发布与分享:将你的MCP Server部署到服务器,并在龙虾官网(yitb.com)等Agent生态平台分享,让更多开发者和Agent发现你的工具。
工具调用的碎片化时代即将过去。掌握MCP,就是掌握了未来AI Agent生态的“工具接口标准”。用30行代码,给你的Agent装上第一个标准化“外挂”吧。