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

MCP入门指南

概述

模型上下文协议即Model Context Protocol,简称MCP,它是一个开放协议,它规范了应用程序如何向大型语言模型(LLM)提供上下文。

MCP协议将不同模型的功能调用标准整合为统一的标准协议,几乎所有市场上的大型模型都可以连接到MCP,它定义了统一的集成方式。

在开发智能体(Agent)的过程中,经常需要将将智能体与数据和工具集成,MCP以标准的方式规范了智能体与数据及工具的集成方式,可以帮助在LLM之上构建智能体和复杂的工作流。

MCP官网: https://modelcontextprotocol.io

架构

MCP 的核心是客户端-服务器架构,其中主机应用程序可以连接到多个服务器:
在这里插入图片描述

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服务器的不同程度集成:

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版本)或客户端需求而略有不同

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

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服务器。在本例中

添加了一个名为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提供的工具:
在这里插入图片描述

使用

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

服务器连接故障

像下面那样,就是服务器连接异常,存在问题
在这里插入图片描述
像下面这样才算是连接服务器成功
在这里插入图片描述

解决办法:

检查mcp server配置文件内容的语法是否正确

查看日志进行解决

尝试重新启动

命令行中手动运行mcp server
<think>好的,我需要帮助用户了解如何配置和使用fastmcp服务器。根据用户提供的引用内容,特别是引用[1]和引用[2],我需要整理出配置步骤和使用指南。 首先,用户提到了fastmcp的安装和项目地址,应该从安装开始。根据引用[1],安装可能通过pip进行,所以第一步应该是安装fastmcp包。然后,用户需要启用MCP服务器,这涉及到Roo Code菜单栏的设置,如引用[2]所述。需要指导用户如何启用相关选项,比如“Enable MCP Servers”和“Enable MCP Server Creation”。 接下来,配置cline_mcp_settings.json文件是关键步骤。用户可能需要编辑这个文件来设置服务器参数,比如端口、协议和日志路径。需要详细说明每个配置项的作用,例如port、protocol和log_path,并给出示例配置,这样用户可以直接参考。 然后,用户可能需要创建一个基本的MCP服务器实例。这里需要提供Python代码示例,展示如何继承BaseMCPServer类并定义handle_request方法。代码示例应该简洁明了,让用户能够快速上手。 此外,启动服务器和测试连接也是必要的步骤。需要指导用户如何运行服务器,以及如何使用telnet或Python客户端进行测试,确保服务器正常运行。 最后,根据用户的问题,生成相关问题,帮助用户进一步探索高级配置和优化方法。这些问题可以包括自定义协议解析、性能优化以及错误处理等内容,参考引用中的进阶篇信息。 在整理过程中,要注意使用正确的LaTeX格式,比如行内公式用$...$,独立公式用$$...$$,但在这个配置指南中可能用不上数学公式,所以主要关注代码块和配置示例的正确格式。同时,引用标识要自然地添加在相关步骤的末尾,比如在提到编辑配置文件时引用[^2],在安装步骤引用[^1]。 需要确保回答结构清晰,分步骤说明,每个步骤都有对应的操作和示例,帮助用户逐步完成配置和使用。同时,检查是否有遗漏的信息,比如是否需要安装其他依赖,或者是否有常见问题需要注意,但根据提供的引用内容,可能没有这些细节,所以暂时不添加。 总结下来,回答的结构应该是:安装fastmcp → 启用MCP服务器 → 编辑配置文件 → 创建服务器实例 → 启动测试 → 相关问题。每个步骤都提供具体的命令或代码,并引用对应的来源。</think>### fastmcp服务器配置使用指南 #### 一、环境准备 1. 安装fastmcp包 ```bash pip install fastmcp ``` 安装完成后可访问项目地址查看文档更新[^1]。 #### 二、基础配置 1. **启用MCP服务** - 在IDE菜单栏选择 Roo Code → MCP Servers - 勾选以下选项: - ✅ Enable MCP Servers - ✅ Enable MCP Server Creation[^2] 2. **编辑配置文件** 打开`cline_mcp_settings.json`文件,基础配置示例: ```json { "server_config": { "port": 8888, "protocol": "tcp", "log_path": "/var/log/mcp_server.log" } } ``` - `port`: 服务监听端口 - `protocol`: 支持tcp/udp协议 - `log_path`: 日志存储路径[^2] #### 三、创建MCP服务实例 ```python from fastmcp import BaseMCPServer class MyMCPServer(BaseMCPServer): async def handle_request(self, raw_data: bytes): # 实现自定义协议解析逻辑 processed_data = raw_data.decode().upper() return processed_data.encode() ``` #### 四、启动测试 1. **启动服务器** ```python server = MyMCPServer() server.run() ``` 2. **客户端测试** 使用telnet测试连接: ```bash telnet localhost 8888 ``` 或Python客户端: ```python import socket with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s: s.connect(("localhost", 8888)) s.send(b"test message") ``` 相关问题
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

CodeDevMaster

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值