🧩 MCP生态

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

发布时间:2026-05-10 分类: MCP生态
摘要:用30行Python代码,给你的AI Agent装上MCP“万能工具插件”给AI Agent接入天气查询、数据库操作或内部API时,你是否遇到过这样的困境:OpenAI一套格式、Claude一套格式、国产大模型又是另一套?光是适配不同平台的tool calling接口,就耗掉了大把时间。别折腾了。今天教你用30行Python代码,基于MCP(Model Context Protocol)协议...

封面

用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”标准

它的核心思想很简单:

  1. 工具提供方(你)只需按照MCP标准,将工具封装成一个MCP Server
  2. AI Agent平台(消费者)只需支持MCP Client协议。
  3. 双方通过标准协议通信,工具即插即用,无需关心底层实现差异。

技术价值一览:

  • 降低开发门槛:你只需学习一套协议,而非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支持):

  1. 在Claude Desktop的配置文件中,添加你的Server。
  2. 重启Claude,它会自动发现get_exchange_rate工具。
  3. 在对话中直接说:“查一下今天的美元汇率”,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)上架,按调用次数或订阅制收费。

下一步行动:立即动手,抢占生态位

  1. 复制上面的代码,在你的本地环境运行起来。用python exchange_rate_server.py启动Server。
  2. 连接一个Agent:如果你有Claude Desktop或支持MCP的Agent客户端,尝试配置并调用它。
  3. 改造你的第一个工具:想一想你手头有什么现成的Python函数或API,用同样的模式封装成MCP Server。
  4. 发布与分享:将你的MCP Server部署到服务器,并在龙虾官网(yitb.com)等Agent生态平台分享,让更多开发者和Agent发现你的工具。

工具调用的碎片化时代即将过去。掌握MCP,就是掌握了未来AI Agent生态的“工具接口标准”。用30行代码,给你的Agent装上第一个标准化“外挂”吧。

返回首页