【vllm】MCP工作原理
简单来说MCP (Model Context Protocol)就像一个专门为AI应用设计的“USB-C”接口标准而MCP 服务器则是遵循这个标准的“转接头”。它让AI能够安全、统一地与你的本地文件、数据库或各种外部工具进行交互。 MCP 是如何工作的MCP协议的核心架构由三个角色组成MCP 主机 (Host)AI应用本身如你的Claude桌面版是需求的发起方。MCP 客户端 (Client)内嵌在主机中的“中间人”负责将主机的请求转换为标准的MCP格式并与服务器通信。MCP 服务器 (Server)执行具体任务的“工人”如server-filesystem服务器负责在严格权限下操作文件系统。 深入 Filesystem MCP Server 的工作原理你配置的server-filesystem是一个具体的服务器实例。它的核心任务是在你指定的目录沙盒内执行文件操作并提供目录访问控制系统来保障安全。启动时有静态白名单和**动态授权推荐**两种授权方式静态白名单命令行参数你配置中的/Users/.../我的项目就是这种方式。服务器启动时读取路径列表运行期间权限固定。动态授权MCP Roots更安全灵活服务器启动时向Claude客户端发送roots/list请求询问“我可以访问哪些目录”。Claude根据你的设置返回一个“根目录”列表例如{uri: file:///Users/.../我的项目}。服务器此后只接受在uri定义的根目录范围内的操作并会验证所有路径以防止“路径遍历”攻击。你还可以动态更改权限服务器会即时响应。当你在Claude中请求分析代码时Claude会将指令转换为MCP格式的请求发给server-filesystem。服务器先在沙盒内执行操作然后将读取的文件内容通过MCP协议返回给Claude。最后Claude将代码内容作为上下文进行分析并生成回答。总的来说这个机制通过MCP标准化接口让AI能在严格的权限边界内安全、动态地与你的文件系统交互。你刚才发的配置 JSON 里面那一行command: npx其实也起到了关键作用需要我展开讲讲npx在这个环节里具体负责什么吗简单来说MCP (Model Context Protocol)就像一个专门为AI应用设计的“USB-C”接口标准而MCP 服务器则是遵循这个标准的“转接头”。它让AI能够安全、统一地与你的本地文件、数据库或各种外部工具进行交互。 MCP 是如何工作的MCP协议的核心架构由三个角色组成MCP 主机 (Host)AI应用本身如你的Claude桌面版是需求的发起方。MCP 客户端 (Client)内嵌在主机中的“中间人”负责将主机的请求转换为标准的MCP格式并与服务器通信。MCP 服务器 (Server)执行具体任务的“工人”如server-filesystem服务器负责在严格权限下操作文件系统。 深入 Filesystem MCP Server 的工作原理你配置的server-filesystem是一个具体的服务器实例。它的核心任务是在你指定的目录沙盒内执行文件操作并提供目录访问控制系统来保障安全。启动时有静态白名单和**动态授权推荐**两种授权方式静态白名单命令行参数你配置中的/Users/.../我的项目就是这种方式。服务器启动时读取路径列表运行期间权限固定。动态授权MCP Roots更安全灵活服务器启动时向Claude客户端发送roots/list请求询问“我可以访问哪些目录”。Claude根据你的设置返回一个“根目录”列表例如{uri: file:///Users/.../我的项目}。服务器此后只接受在uri定义的根目录范围内的操作并会验证所有路径以防止“路径遍历”攻击。你还可以动态更改权限服务器会即时响应。当你在Claude中请求分析代码时Claude会将指令转换为MCP格式的请求发给server-filesystem。服务器先在沙盒内执行操作然后将读取的文件内容通过MCP协议返回给Claude。最后Claude将代码内容作为上下文进行分析并生成回答。总的来说这个机制通过MCP标准化接口让AI能在严格的权限边界内安全、动态地与你的文件系统交互。你刚才发的配置 JSON 里面那一行command: npx其实也起到了关键作用需要我展开讲讲npx在这个环节里具体负责什么吗MCP 是什么MCPModel Context Protocol是 Anthropic 制定的一个开放协议本质上是给 Claude 提供工具插件的标准接口。可以把它理解为Claude 的 USB 接口—— 任何人都可以按照这个标准开发插件让 Claude 获得新能力。文件系统 MCP 的工作原理你的 Mac 本地 Claude云端 ┌─────────────────┐ ┌─────────────┐ │ 你的文件系统 │ │ │ │ /Users/seadawn │◄────────────►│ Claude │ │ /ali/dashscope │ MCP协议 │ │ └─────────────────┘ └─────────────┘ ▲ │ ┌───────┴──────────┐ │ MCP文件系统服务器 │ ← 运行在你本地的一个小程序 │ (Node.js进程) │ └──────────────────┘流程是这样的Claude 桌面应用启动时根据配置文件在你本地启动一个 Node.js 小程序就是那个npx modelcontextprotocol/server-filesystem这个小程序在你的电脑上运行有权限读取你指定的目录Claude 想看文件时通过 MCP 协议向这个本地小程序发请求小程序读取文件后把内容返回给 Claude为什么要指定目录args:[/Users/seadawn/ali/dashscope/vllm// 只授权这个目录]这是安全沙箱机制 —— 你只授权 Claude 访问你指定的目录它无法访问你电脑上其他地方的文件保护隐私。MCP 能做什么除了文件系统MCP 还可以接入各种服务MCP 服务器获得的能力filesystem读写本地文件github操作 GitHub 仓库postgres查询数据库browser控制浏览器slack发送消息本质上就是让 Claude 从纯语言模型变成能操作真实世界的 Agent。