MCP入门指南:让AI模型与外部世界无缝连接

MCP入门指南

概述

模型上下文协议即Model Context Protocol,简称MCP,它是一个开放协议,它规范了应用程序如何向大型语言模型(LLM)提供上下文。
MCP协议将不同模型的功能调用标准整合为统一的标准协议,几乎所有市场上的大型模型都可以连接到MCP,它定义了统一的集成方式。
在开发智能体(Agent)的过程中,经常需要将将智能体与数据和工具集成,MCP以标准的方式规范了智能体与数据及工具的集成方式,可以帮助在LLM之上构建智能体和复杂的工作流。

MCP官网: https://modelcontextprotocol.io

架构

MCP 的核心是客户端-服务器架构,其中主机应用程序可以连接到多个服务器:

python 复制代码
MCP 主机:发起请求的LLM应用程序,例如Claude Desktop、IDE或AI工具

MCP 客户端:与服务器保持1:1连接的协议客户端

MCP 服务器:轻量级程序,每个程序都通过标准化模型上下文协议公开特定功能(为MCP client提供上下文、工具和prompt信息)

本地数据源:MCP服务器可以安全访问的您的计算机文件、数据库和服务

远程服务:MCP服务器可通过互联网(例如通过 API)连接到的外部系统

MCP Server示例

目前MCP SERVER已经有了大量可参考的实现示例。MCP服务器的实现参考主要来源于官方文档、开源社区项目以及一些示例代码。

以下是一些可供参考的实现资源和具体示例,涵盖多种编程语言和使用场景:

  1. MCP ProtocolSpecification: 详细协议说明,包括stdio和SSE传输方式。

  2. Python SDK: 提供FastMCP类,用于快速搭建服务器。

  3. Java SDK: 适用于Java生态的实现。

  4. mcp-servers: 包含多个示例服务器,如代理服务器(mcp-proxy)和工具服务器。

环境准备

支持MCP的客户端

目前已知、熟知的支持模型上下文协议(Model Context Protocol,MCP)的客户端有以下几个,每个客户端可能支持不同的MCP功能,从而实现与MCP服务器的不同程度集成:

yaml 复制代码
Claude Desktop: 提供全面的MCP支持,能够与本地工具和数据源深度集成,是MCP生态中最主要的客户端之一。

ChatMCP: 一个开源的MCP协议客户端,支持与MCP服务器交互,可能适用于开发者或技术爱好者自定义使用。

Cline: 基于VS Code的AI编程扩展,通过集成MCP后,能够访问和操作外部数据源,提升开发效率。

Cursor: 一个支持MCP的开发工具,通常用于编程环境,能够通过MCP连接外部资源。

Open MCP Client: 一个开源工具,支持在任何应用中与MCP服务器交互,提供网页版客户端和可集成到其他应用的开源库。

运行环境

要运行一个MCP(Model Context Protocol)服务器,首先需要根据其架构和运行需求准备相应的环境,具体可能因你选择的MCP服务器实现(如Python、TypeScript或Java版本)或客户端需求而略有不同

以下是几点主要环境要求:

makefile 复制代码
MCP服务器运行环境: macOS、Windows、Linux等

编程语言: 根据选择的MCP服务器实现,安装对应的运行环境: Python、NodeJs、Java等

MCP SDK: 安装Python、NodeJs、Java相关SDK

安装Cine

这里选择Cline编程扩展插件作为MCP客户端,它可以在VS Code、Cursor 、Trae 等开发工具中安装,通过此方式来使用MCP Server 打开Cline插件,这里提示可以注册帐户免费使用Claude 3.7 由于注册Cline账号赠送的Claude 3.7有次数限制,也可以使用自己的模型API Key进行使用 Cline插件提供了一个MCP Servers应用市场,里面提供了很多可以直接使用的MCP Server

使用File System MCP Server

概述

MCP是一个协议,让AI模型可以通过工具访问外部资源。File System MCP Server是一个具体的实现,它允许AI通过MCP协议读写本地文件系统。
File System MCP Server用于提供自动化文件管理服务,它提供了对本地文件系统的直接访问,并提供细粒度权限控制。这非常适合自动化文件管理任务,例如整理目录或安全备份数据。

更多详细信息参考: File System MCP Server

使用File System MCP Server需要安装NodeJs环境,它提供以下功能:

复制代码
读/写文件

创建/列出/删除目录

移动文件/目录

搜索文件

获取文件元数据

注意:该MCP服务器只允许在通过指定的目录内进行操作。

使用上面安装的Cine插件,以Cine作为MCP客户端,在应用市场找到File System插件,并以它的使用为例说明。

自动配置

点击安装,会自动分析并给出相关命令,询问是否执行,以完成File System MCP Server的配置

注意:期间可能会出现错误,但其会自动进行修复分析给出新的执行命令,直到执行成功为止

完成后,会自动生成如下一个配置文件 此配置文件告诉Cline需要启动哪些MCP服务器。在本例中

css 复制代码
添加了一个名为file system的服务器

使用Node的npx命令来安装并运行@modelcontextprotocol/server-filesystem

同时授权允许在指定的目录(D:\\WorkSpace\\AI\\demo)内进行操作

注意事项:

Windows用户:如果使用npx命令,需要稍作调整(将command改为cmd,并在args中添加 "/c" 和 "npx"),需要对配置文件做出以下更改,同时确保File System插件启用与连接正常(绿色状态)

Mac/Linux用户:通常直接使用原始配置即可。

手动配置

手动配置也非常简单,只需要知道MCP客户端的默认识别配置文件位置,将MCP Server配置信息粘贴放进去即可。

这里以在Cursor中使用为例说明:

点击右上角齿轮图标打开Cursor配置,再点击MCP,即可查看到MCP Server列表

2.创建配置文件:

  • 1.可以点击Add new global MCP server创建一个全局的MCP Sever配置文件,默认路径C:\Users\用户名\.cursor\mcp.json

  • 2.也可以在当前项目目录下创建一个MCP Sever配置文件,路径为: 项目路径\.cursor\mcp.json

这里直接在当前项目下创建.cursor\mcp.json文件,并粘贴File Sytem Mcp Server配置信息

此时在回到Cursor Settings => MCP即可查看到配置的MCP Server 默认没有启用,点击Disabled按钮变为Enabled启用,同时点击刷新按钮自动打开cmd窗口启动MCP Server,需要确保启动状态是绿色。

内置工具

点击查看Filesystem MCP Server提供的工具:

使用

点击+按钮打开一个新的对话窗口,并提出你的需求 等待执行完毕,在项目文件查看该文件 创建文件夹 修改与删除文件夹

服务器连接故障

像下面那样,就是服务器连接异常,存在问题 像下面这样才算是连接服务器成功

解决办法:

vbscript 复制代码
检查mcp server配置文件内容的语法是否正确

查看日志进行解决

尝试重新启动

命令行中手动运行mcp server
相关推荐
justdoit5212 小时前
前端的AI路其之一: MCP与Function Calling
aigc·openai·mcp
穷人小水滴2 小时前
制造一只电子喵 (qwen2.5:0.5b 微调 LoRA 使用 llama-factory)
llm·aigc·ollama
jhonroxton2 小时前
使用golang快速构建你的MCP Server
llm·mcp
dony72473 小时前
大模型 json格式 修复
llm·json
仙人掌_lz4 小时前
企业年报问答RAG挑战赛冠军方案:从零到SotA,一战封神
python·gpt·ai·llm·rag·问答·年报
周末程序猿4 小时前
机器学习|MCP(Model Context Protocol)实战
人工智能·机器学习·mcp
谦行5 小时前
使用 MCP 让企业 Coding 十倍提效
ai编程·mcp
安全方案15 小时前
精品推荐-最新大模型MCP核心架构及最佳实践资料合集(18份).zip
mcp·大模型上下文协议
稳稳C915 小时前
Google A2A协议,是为了战略性占领标准?
人工智能·google·agent·mcp·a2a