1. 大模型Agent开发的核心争议:MCP与Skills的本质差异
最近AI工程圈出现了一个耐人寻味的现象:Skills框架被捧上神坛,而MCP协议则遭遇各种质疑。这种两极分化的舆论背后,反映的是开发者对大模型工具调用范式的认知差异。作为经历过多次技术浪潮的从业者,我认为有必要拨开迷雾,揭示大模型Agent开发的底层逻辑。
MCP(Model Control Protocol)作为大模型与外部工具交互的标准化协议,其设计初衷是解决三个核心问题:
- 工具发现的标准化(如何让模型知道有哪些工具可用)
- 调用过程的类型安全(如何确保参数传递的正确性)
- 错误处理的统一机制(如何让模型理解并处理调用失败)
而Skills本质上是一种工具编排模式,它更关注:
- 工具组合的上下文管理(何时使用哪些工具)
- 复杂任务的分解策略(如何拆解多步骤操作)
- 执行过程的指导说明(给模型的自然语言提示)
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. MCP服务器设计的六大黄金法则
2.1 结果导向设计:从API思维到Agent思维
传统REST API设计遵循的是"操作暴露"原则,而优秀的MCP服务器应该采用"目标完成"原则。举例来说,电商场景中:
反模式设计:
python复制# 三个独立工具
def get_user_id(email: str) -> str
def get_user_orders(user_id: str) -> List[Order]
def get_order_details(order_id: str) -> OrderDetails
正确设计:
python复制# 单一目标工具
def track_user_order(email: str) -> OrderStatus:
# 服务端内部处理所有协调逻辑
user_id = db.get_user_id(email)
latest_order = db.get_latest_order(user_id)
shipping_info = logistics.get_status(latest_order.id)
return OrderStatus(
order=latest_order,
