MCP 协议详解:与 Function Call 的区别及实践指南
2025 年,Anthropic 提出了 MCP(Model Context Protocol)协议。简单来说,这是为大模型和外部工具交互提供的一套统一标准。就像 USB-C 统一了物理接口一样,MCP 试图统一大模型调用工具的对接方式。
1. 什么是 MCP?
MCP 采用 C/S 架构(客户端/服务端),支持在客户端设备上调用远程 Server 提供的服务,同时也支持 stdio 流式传输模式,也就是可以在本地启动 MCP 服务端。你只需要在配置文件中新增 MCP 服务端,就能利用其提供的各种工具,这大大提升了大模型使用外部工具的便捷性。

作为开源协议,MCP 鼓励所有 AI 厂商和工具将其集成到客户端中。生态越丰富,协议的发展就越快。
2. 回顾 Function Call
在 MCP 普及之前,AI Agent 开发若要调用外部工具,往往需要针对不同的大模型 SDK 编写不同的适配代码。最经典的方案莫过于 OpenAI 的 Function Call 机制。
2.1 Function Call 实战演示
配置工具与参数
调用 Chat Completions 接口时,通过 tools 参数传入外部工具定义。这里包含了工具的作用、所需参数及其释义。tool_choice 设为 auto 让模型自动选择,设为 none 则禁止调用。
{
"tool_choice": "auto",
"messages": [
{
"role": "system",
"content": "你是一个天气查询助手"
},
{
"role": "user",
"content":


