天聚数行 MCP(Model Context Protocol)服务为大模型智能体(Agent)提供开箱即用的外部工具能力。虽然 MCP 主要用于 AI 平台(如 Dify、Coze、Cherry Studio),但你也可以在 Python 环境中直接调用 MCP 服务地址,实现自动化测试、自定义 Agent 后端或集成到 LangChain/LlamaIndex 等框架中。
1. 登录 天聚数行控制台 → 【个人中心】→ 查看 APIKEY。
2. 创建 MCP 工具集合(推荐)
单一接口的 MCP 地址功能有限,强烈建议使用“工具集合”。
操作路径:
控制台 → 数据管理 → MCP服务 → 新建工具集合
选择你需要的接口(如 tianqi 天气、vehiclelimit 限行等)
保存后,系统生成专属 MCP 地址,格式如下:
https://mcp.tianapi.com/your-toolset-name/YOUR_APIKEY
示例:https://mcp.tianapi.com/my-agent-tools/abc123def456...
MCP 服务遵循标准 HTTP JSON-RPC 风格,支持 list_tools 和 call 两种请求。
1. 查看可用工具列表
import requests
MCP_URL = "https://mcp.tianapi.com/your-toolset-name/YOUR_APIKEY"
# 获取工具列表
response = requests.post(MCP_URL, json={"method": "list_tools"})
tools = response.json()
print("可用工具:", [tool["name"] for tool in tools.get("result", [])])2. 调用具体工具(以天气为例)
import requests
MCP_URL = "https://mcp.tianapi.com/your-toolset-name/YOUR_APIKEY"
# 调用天气工具
payload = {
"method": "call",
"params": {
"name": "tianqi", # 工具名(必须与 list_tools 返回一致)
"arguments": {
"city": "深圳"
}
}
}
response = requests.post(MCP_URL, json=payload)
result = response.json()
if result.get("error"):
print("调用失败:", result["error"])
else:
data = result["result"]
print(f"{data['city']} 今日天气")
print(f"温度: {data['temp']}℃")
print(f"风力: {data['wind']}")
print(f"湿度: {data['humidity']}%")返回字段已结构化(如 temp, wind),无需解析原始 JSON!
import requests
MCP_URL = "https://mcp.tianapi.com/my-agent-tools/YOUR_APIKEY"
CITY = "成都"
# 1. 查天气
weather = requests.post(MCP_URL, json={
"method": "call",
"params": {"name": "tianqi", "arguments": {"city": CITY}}
}).json()
# 2. 查限行
limit = requests.post(MCP_URL, json={
"method": "call",
"params": {"name": "vehiclelimit", "arguments": {"city": CITY}}
}).json()
# 3. 输出整合结果
print(f"\n--- {CITY} 出行助手 ---")
if not weather.get("error"):
w = weather["result"]
print(f"天气: {w['weather']} | {w['temp']}℃")
if not limit.get("error"):
l = limit["result"]
print(f"今日限行: {l['limit_info']} | 区域: {l['area']}")| 项目 | 说明 |
|---|---|
| HTTPS 必须 | 所有请求需通过 https:// 发起 |
| 参数格式 | arguments 是字典,字段名与接口文档一致(如 city, number) |
| 错误处理 | 响应含 error 字段时表示失败(如配额不足、参数错误) |
| 并发限制 | 免费用户 QPS 较低,高并发请升级套餐 |
| 图片类接口 | 如 imgcaipin,需传公网可访问的 imgurl |
📚 MCP 服务主页
🧩 如何创建工具集合
你可以将 MCP 封装为 LangChain 的 Tool:
from langchain.tools import Tool
import requests
def call_mcp_tool(tool_name: str, args: dict) -> str:
resp = requests.post(MCP_URL, json={
"method": "call",
"params": {"name": tool_name, "arguments": args}
}).json()
return str(resp.get("result", resp.get("error", "调用失败")))
weather_tool = Tool(
name="tianqi",
func=lambda city: call_mcp_tool("tianqi", {"city": city}),
description="查询中国城市天气,参数:city(如'北京')"
)让 Python 不只是调用 API,而是驱动 AI 智能体!
通过 MCP,你的脚本也能拥有“查天气、盯快递、看热搜”的能力,轻松构建下一代智能应用。