MCP(Model Context Protocol,模型上下文协议)

没有 MCP 之前,接工具有多麻烦

在MCP出现之前,每接一个新工具都要单独写集成代码、处理认证、适配格式 ,而且这套代码和具体模型强绑定 ,换个模型就得重写,非常繁琐。

MCP的思路是把这件事标准化 :工具提供方按协议实现一个Server,任何支持MCP的Al客户端就能直接接进来,一次实现到处复用。

MCP的核心思路

MCP的设计思路做的是一件事:

为「Al接工具」这件事定了一套统一的协议标准。工具提供方(比如GitHub官方)按MCP规范实现一个MCPServer,里面封装好各种操作。 任何支持MCP的Al客户端,Claude Desktop、Cursor、各种Agent框架,都能 直接连上这个Server ,自动发现里面的工具并使用,不需要写任何定制化对接代码。

MCP的Client-Server架构

MCP采用标准的Client-Server架构。

Server是工具的实现方 。比如GitHub官方维护一个GitHHub MCP Server,里面封装了「列出PR」「创建Issue」「搜索仓库」「查看Diff」等操作;Client是Al应用那一侧,比如Claude Desktop或Cursor,连上Server之后就自动获得了这些工具能力。

一个Client可以同时连接多个Server 。把文件系统Server+GiitHub Server + PostgreSQL Server 都接上,模型就同时拥有了操作本地文件、读写代码仓库、查询数据库这三套工具能力,

而你不需要写任何对接代码,只需要在配置文件里加几行JSON,重启后Claude自动发现并使用这些工具。

MCP的三类核心能力

先说Tools(工具)

这是最核心的能力,对应Function Calling里的「函数」 。

Tools的本质是「有副作用的操作」 ,什么叫有副作用?就是执行之后会改变外部世界的状态。创建文件、提交代码、发送Slack消息、调用第三方API,这些都属于Tools,因为执行完之后环境发生了变化,而且往往不可逆。

正因为如此,Tools通常需要用户授权确认才能执行,不能让模型想调就调。

再说Resources(资源)

它和Tools最本质的区别 就一个字:只「读」 。Resources不会改变任何东西,只是把数据提供给模型看 。读取日志文件、查询数据库记录、获取文档内容,都属于Resources的范畴。

你可以把Resources理解成「工具的资料室」,模型可以进去查资料,但不能修改里面的东西。

正因为只读、无副作用,Resources可以更宽松地暴露给模型,不需要像Tools那样谨慎授权。

最后是Prompts(提示模板)

这个能力很多人容易忽略,但在团队协作场景下特别有用。Prompts就是预定义的提示词模板,带参数占位符 ,解决的是「每次都要手写重复prompt」的问题。

举个例子,你的团队有一套固定的代码审查标准 prompt,接受「编程语言」和「代码内容」两个参数,调用时只需传入参数值,就能自动展开成完整的提示词,不用每次从头写。

把公司积累的优质 prompt封装成MCP Prompts,所有人都能复用,统一标准,这在实际工程中很实用。

相关推荐
迅猛龙办公室6 分钟前
python实现倒序输出数字
开发语言·python
镜象科技1 小时前
AI情感大模型应用场景全解:从校园到医院再到企业的落地地图
人工智能
Joshua-a2 小时前
工程数学-理解卷积的含义_线性时不变系统的冲激响应与卷积
人工智能·深度学习
song5012 小时前
React Native for OpenHarmony 实战:三方库 react-native-css-transformer 的鸿蒙化适配指南
css·人工智能·深度学习·react native·transformer
老金带你玩AI6 小时前
ChatGPT dots,到底能替你操多少心?
人工智能
AliCloudROS7 小时前
计算巢 X DeepSeek Harness — 云端智能体工作台
人工智能·阿里云
深蓝AI7 小时前
GitHub的Push一年涨4.9倍:AI Agent为什么逼它重做Git存储?
人工智能·github
stereohomology8 小时前
大模型的观点谨:StoryTold 「Crafting Apps」四件套 · 深度总览
人工智能·llm
运维行者_8 小时前
网络性能监控怎么做?从自动发现到根因分析的4个环节
运维·服务器·网络·人工智能·支持向量机
Su米苏8 小时前
Spring AI 中MCP 与普通 @Tool的区别
java·人工智能·spring