概念
传统Tool,工具
最广义的概念,指一段确定性的可执行代码,同样的输入永远给出同样的输出。比如 send_email()、query_database()、get_weather()。它是"能力本身",就像人体的器官------心脏泵血、胃消化食物,功能是写死在代码里的,不会自作主张。
Function Calling(函数调用)
由 OpenAI 等模型厂商率先推出的一种机制,让 LLM 在对话过程中能够"请求"调用外部函数。模型不会直接回答,而是生成一个结构化的 JSON 请求(包含函数名和参数),由外部程序执行后将结果返回给模型。
MCP Tool(MCP 协议中的工具)
在 MCP 协议框架下,由 MCP Server 暴露的、遵循 JSON-RPC 2.0 标准的工具。它不仅包含函数定义(JSON Schema),还具备动态发现、生命周期管理、变更通知等能力。
差异
Tool是能力本身,Function Calling是让模型调用能力的机制。
FunctionCalling是硬编码在代码中,MCP Tool则是在独立的Server进程中
FunctionCalling是工具的集成方案,MCP是工具的分发方案。