基本概念
MCP(Model Context Protocol,模型上下文协议) ,
2024年11月底,由 Anthropic 推出的一种开放标准,
旨在统一大型语言模型(LLM)与外部数据源和工具之间的通信协议。
MCP 的主要目的在于解决当前 AI 模型因数据孤岛限制
而无法充分发挥潜力的难题,
MCP 使得 AI 应用能够安全地访问和操作本地及远程数据,
为 AI 应用提供了连接万物的接口。
其他相关联概念:
Function Calling是AI模型调用函数的机制,
AI Agent是一个自主运行的智能系统,
MCP是一个标准协议,使AI模型与API无缝交互,
利用Function Calling和MCP来分析和执行任务,实现特定目标。
MCP协议是由AI公司 Anthropic(claude的母公司)
于2024年11月推出的一个针对AI能力的开放协议,
旨在标准化大语言模型(LLM)与外部数据源、工具之间的交互接口。
其核心设计目标:
解耦与标准化:
将LLM与外部系统的集成从定制化开发转变为基于统一协议的通用连接,
类似硬件领域的USB-C接口。
去中心化:
通过允许开发者自主构建MCP Server,分散AI能力,
避免单一厂商垄断知识和服务。
安全可控:
通过权限验证和本地化部署,确保数据隐私与操作安全。
而 MCP Server 则是MCP的关键组件,提供如下三种功能:
资源(Resources):类似文件的数据,可以被客户端读取,如 API 响应或文件内容。
工具(Tools):可以被 LLM 调用的函数(需要用户批准)。
提示(Prompts):预先编写的模板,帮助用户完成特定任务。
工作原理
MCP 协议采用了一种独特的架构设计,
它将 LLM 与资源之间的通信划分为三个主要部分:
客户端、服务器和资源。
客户端负责发送请求给 MCP 服务器,
服务器则将这些请求转发给相应的资源。
这种分层的设计使得 MCP 协议能够更好地控制访问权限,
确保只有经过授权的用户才能访问特定的资源。
MCP 遵循客户端-服务器架构(client-server),
其中包含以下几个核心概念:
MCP 主机(MCP Hosts):发
起请求的 LLM 应用程序(例如 Claude Desktop、IDE 或 AI 工具)。
MCP 客户端(MCP Clients):
在主机程序内部,与 MCP server 保持 1:1 的连接。
MCP 服务器(MCP Servers):
为 MCP client 提供上下文、工具和 prompt 信息。
本地资源(Local Resources):
本地计算机中可供 MCP server 安全访问的资源(例如文件、数据库)。
远程资源(Remote Resources):
MCP server 可以连接到的远程资源(例如通过 API)。
通信机制
通信机制
MCP 协议支持两种主要的通信机制:
基于标准输入输出的本地通信
和基于SSE(Server-Sent Events)的远程通信。
这两种机制都使用 JSON-RPC 2.0 格式进行消息传输,
确保了通信的标准化和可扩展性。
本地通信:
通过 stdio 传输数据,适
用于在同一台机器上运行的客户端和服务器之间的通信。
远程通信:
利用 SSE 与 HTTP 结合,
实现跨网络的实时数据传输,
适用于需要访问远程资源或分布式部署的场景。
playwright-mcp
微软官方推出Playwright-mcp
MCP Server目前的很多应用中,
调度浏览器操作是一个极为高频的场景,
基于Playwright这个新锐浏览器工具,
也已经有第三方先行推出了MCP Server
而现在,微软官方也终于推出了Playwright-mcp,
可以和Vscode copilot无缝结合使用
可以通过vscode和copilot 的方式自动化的执行一些浏览器的测试命令.
文章转载自济南小老虎,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




