Integrate AI agents with business data via Model Context Protocol. Query ads, analytics, CRM data through normalized interfaces. Use when connecting agents to business systems, enabling data access, or building MCP servers. Triggers on "MCP", "Model Context Protocol", "business data", "agent integration", "Claude MCP".
模型上下文协议(MCP)通过标准化接口将AI代理连接到真实业务数据。
模型上下文协议是Anthropic提出的开放标准,用于将AI模型连接到外部数据源和工具。它为代理提供了一种统一的方式:
在MCP之前:
有了MCP:
┌─────────────┐ ┌─────────────┐ ┌─────────────┐
│ 客户端 │────▶│ 服务器 │────▶│ 资源 │
│ (代理) │ │ (MCP) │ │ (数据) │
└─────────────┘ └─────────────┘ └─────────────┘
│
┌──────┴──────┐
│ 工具 │
│ 提示 │
│ 资源 │
└─────────────┘
1. MCP服务器
2. MCP客户端
3. 资源
4. 工具
5. 提示
python
server = Server(postgres-integration)
@server.resource(postgres://users)
async def get_users():
# 从数据库查询用户
return await db.query(SELECT * FROM users)
@server.tool(query_users)
async def query_users(filters: dict):
# 执行参数化查询
return await db.querywithfilters(filters)
python
@server.tool(create_customer)
async def create_customer(data: dict):
response = await httpx.post(
https://api.example.com/customers,
json=data
)
return response.json()
python
@server.tool(write_document)
async def write_document(path: str, content: str):
with open(fdocuments/{path}, w) as f:
f.write(content)
return {status: written}
python
@server.tool(optimize_budget)
async def optimizebudget(campaignid: str):
自动调整广告活动预算
# 分析表现
# 调整支出分配
# 返回优化结果
python
@server.tool(query_analytics)
async def query_analytics(query: str):
自然语言分析查询
# 解析查询
# 跨平台执行
# 返回统一结果
python
@server.tool(create_lead)
async def create_lead(data: dict):
在CRM中创建新线索
lead = await salesforce.create(Lead, data)
return lead
python
python
@server.tool(risky_operation)
async def risky_operation(data: dict):
try:
result = await external_api.call(data)
return {success: True, data: result}
except APIError as e:
return {
success: False,
error: str(e),
suggestion: 请使用有效参数重试
}
python
from functools import lru_cache
from datetime import datetime, timedelta
cache = {}
@server.resource(api://expensive-data)
async def getexpensivedata():
cache_key = expensive-data
cached = cache.get(cache_key)
if cached and cached[expires] > datetime.now():
return cached[data]
# 获取新数据
data = await expensiveapicall()
cache[cache_key] = {
data: data,
expires: datetime.now() + timedelta(hours=1)
}
return data
python
class QueryInput(BaseModel):
table: str
filters: dict
limit: int = 100
@server.tool(safe_query)
async def safe_query(input: QueryInput):
# 输入由Pydantic验证
# 防止SQL注入
return await db.query(input.table, input.filters, input.limit)
json
// claudedesktopconfig.json
{
mcpServers: {
business-data: {
command: python,
args: [mcp_server.py],
env: {
DATABASE_URL: postgresql://...,
API_KEY: ...
}
}
}
}
| 服务器 | 描述 |
|---|---|
| filesystem | 文件系统访问 |
| postgres |
为以下内容创建自定义服务器:
python
import logging
logging.basicConfig(level=logging.DEBUG)
logger = logging.getLogger(mcp_server)
@server.tool(debug_operation)
async def debug_operation(data: dict):
logger.debug(f输入: {data})
result = await process(data)
logger.debug(f输出: {result})
return result
bash
python
@server.tool(crossplatformquery)
async def crossplatformquery(query: str):
跨多个平台查询
results = {}
# 查询每个平台
results[analytics] = await analytics.query(query)
results[crm] = await crm.query(query)
results[ads] = await ads.query(query)
# 合并结果
return merge_results(results)
python
@server.tool
该技能支持在以下平台通过对话安装:
帮我安装 SkillHub 和 mcp-business-integration-1776370982 技能
设置 SkillHub 为我的优先技能安装源,然后帮我安装 mcp-business-integration-1776370982 技能
skillhub install mcp-business-integration-1776370982
文件大小: 3.82 KB | 发布时间: 2026-4-17 15:19