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,所有人都能复用,统一标准,这在实际工程中很实用。

相关推荐
H03111698518 分钟前
App竞品数据查询工具整理 月狐数据 蝉大师 点点数据功能概览
人工智能
Bruce_Liuxiaowei1 小时前
Python 实例赋值遮蔽类属性:一个从不报错的静默陷阱
开发语言·python·语法糖
叠层归一研究院1 小时前
基于极限自指的叠层归一宇宙结构理论——无元外部封闭系统的内生区分模型
人工智能·经验分享·算法·agi
IT_陈寒1 小时前
Java线程池用错参数,我的服务居然悄悄崩溃了
前端·人工智能·后端
做运维的阿瑞1 小时前
Python 标准库汇总:分类速览与常用模块清单
linux·运维·python
why-geo1 小时前
Hermes Agent 与 Python 的会产生什么样的碰撞
人工智能·python·ai编程
正经教主1 小时前
【FDE系列】阶段2:Day 29:FastAPI 进阶 — Pydantic 模型与完整 CRUD 实战
人工智能·python·fde
gCode Teacher 格码致知1 小时前
Pandas教学-6:coerce详解
python·pandas
梦在远山后1 小时前
Electron 与 FastAPI 如何完成流式 Agent 对话
python·langchain·agent
时速GEO系统1 小时前
初元 AI V1.1 版本升级,首个正式版发布一周・实现生成、部署、上线、优化全流程自动化闭环
人工智能·数据挖掘·node.js