CS-Notes 学习笔记
面试常问Java 后端 · 大模型应用

MCP 解决了什么问题?它和 Function Calling 有什么区别?

先自己想一想,再看参考要点

参考要点

  • 同一个工具要接入多个 AI 应用时,原本要在每个应用里分别适配
  • MCP 定义了 AI 应用与外部工具、数据之间的统一接口,工具实现一次服务端就能被所有支持 MCP 的应用使用
  • 三种角色是主机、客户端(一个客户端只连接一个服务端)和服务端,服务端提供工具、资源和提示词模板,本地用 stdio 通信,远程用 Streamable HTTP
  • Function Calling 是模型一侧的能力,模型根据工具描述给出调用,MCP 是应用与工具之间的协议,解决工具怎样被发现和调用,两者配合使用:主机把服务端的工具转换成工具定义交给模型,模型给出调用后再通过 MCP 发给服务端执行
  • 代价是工具定义都会占用上下文,工具多时要按需加载
在学习站中自测这道题看这道题所在的一天

学习站:先用面试题自评定级,按水平和面试日期排出每天的计划,自评过的题按间隔复习。免费、无需注册,记录只保存在自己的浏览器中。