一、什么是MCP
MCP(Model Context Protocol)是由 Anthropic( Claude
的那个公司) 推出的开放标准协议,它为开发者提供了一个强大的工具,能够在数据源和 AI 驱动工具之间建立安全的双向连接。
举个好理解的例子:如果把 AI 比作电脑主机,那么 MCP 就相当于 USB 协议,而 MCP Server 则类似于各种 USB 设备(如摄像头、麦克风等)。通过实现 MCP Server,我们可以让 AI 轻松连接到各种数据源,大大扩展其功能范围。添加 MCP Server 的作用简单的说就是让你的 AI 模型具备调用外部服务的能力。
想详细了解Cursor+MCP可以:
学习 Cursor ,拥抱 AI 编程 | Cursor 101
Introduction - Model Context Protocol
二、前提安装
1、安装cursor
Cursor - The AI Code Editor
2、安装nodejs
要使用mcp一定要安装node,npm和 npx 是 Node.js 生态中两个的工具,主要用于包管理和执行命令。
访问nodejs官网(Node.js 中文网)选择合适的版本:
双击刚下载的.pkg文件,进行安装,安装完成后检查node和npm的版本:
node -v
npm -v
三、体验cursor+mcp
1、目前有很多网站开始提供MCP Server、MCP Client等内容,推荐一下几个:
1)官网上有一些例子可以体验:Example Servers - Model Context Protocol
2)pulsemcp:https://www.pulsemcp.com/,这个平台收录了很多MCP Server,也包含了MCP Client的介绍
3)smithery:https://smithery.ai/ ,这个平台收录了很多MCP Server,提供多种MCP Client的配置命令,可以直接复制
4)这些 github 仓库 中也整理了一些好用的 MCP 工具:awesome-mcp-servers/README-zh.md at main · punkpeye/awesome-mcp-servers · GitHub
这里列几个官方文档里面提到的:
- Filesystem:提供安全的文件操作功能,并且可以配置访问控制权限,确保文件访问的安全性和规范性。
- Git:提供读取、搜索和操作 Git 仓库的工具,帮助开发人员管理代码版本。
- GitHub:实现仓库管理、文件操作,还集成了 GitHub API,方便与 GitHub 平台进行交互。
- GitLab:通过集成 GitLab API,支持项目管理功能,方便团队协作开发。
- Brave Search:借助 Brave 的搜索 API,实现网络和本地搜索功能。
- Fetch:专门为大语言模型优化的网页内容获取和转换工具,便于模型获取网页信息。
- Puppeteer:用于浏览器自动化操作和网页数据抓取。
- Memory:基于知识图谱的持久化内存系统,可用于存储和检索信息。
- EverArt:利用多种模型进行 AI 图像生成,满足图像创作需求。
- Sequential Thinking:通过思维序列进行动态问题解决,辅助模型处理复杂问题。
- Jira:与 Jira 项目管理工具集成,实现对项目任务、问题跟踪、工作流管理等功能的操作和查询。团队成员可以通过 MCP 服务器方便地在语言模型交互过程中获取 Jira 项目的相关信息,如任务进度、问题状态等,提高项目协作效率。
- SonarQube:用于代码质量管理,通过与 SonarQube 集成,可以对项目代码进行质量分析,检测代码中的漏洞、代码异味、代码复杂度等问题。帮助开发团队提高代码质量,遵循代码规范,降低维护成本。
- ESLint:针对 JavaScript 和 TypeScript 代码的语法检查和代码规范工具。与 ESLint 集成后,可在开发过程中实时检查代码是否符合指定的代码规范,及时发现和纠正代码中的语法错误和潜在问题,提高代码的可维护性和可读性。
- Tableau:集成 Tableau 后,可以利用其强大的数据可视化功能,将数据以各种图表、图形等形式展示出来。用户可以通过 MCP 服务器与 Tableau 交互,创建和管理数据可视化报表,方便对数据进行分析和洞察。
2、配置cursor的mcp
Cursor Setting中找到Features,往下滑找到MCP Servers,点击Add new MCP Server
说明:
Type
- command :用于标准输入输出
- sse:用于服务器发送事件
Name
- 为服务器设置一个易识别的昵称
Server url/Command
- 输入可执行命令或输入服务器 URL
配置完上面几项,保存后,若server显示一个绿点,标明可用,如下,
3、如何配置mcp
举例smithery平台:
在smithery上选择一个server,在installation里选择cursor,复制安装命令,将该命令,复制到cursor配置页面的command为止,type选择command即可
官网上,点击某个server地址后,也可以查找到类似的命令,复制即可
pulsemcp上和官网类似,跳转到server的github撒好难过,找到npx命令即可。
4、体验MCP Server
在cursor的composer的agent模式下才可以使用mcp server
下面使用playwright体验下
还可以继续交互
四、配置mcp server遇到的坑
1、没安装nodejs的话是绝对连不上的,一定要安装
2、有时候会遇到,配置完后就是连不上
点了右上角刷新也没用,发现这个应该是官方的一个 BUG:
官方 issue https://forum.cursor.com/t/mcp-servers-no-tools-found/
替代方案:
因为 npx 执行流程如下 :
- 检查本地是否有包
- 如果本地没有,检查npm仓库
- 如果仓库中存在,则临时下载
- 下载完成后执行
- 执行完成后会删除包
所以进行在配置命令之前,可以先使用 npm 在本地安装好对应的服务。
比如:
1)npm install -g 目标服务 // -g 表示全局,相当于安装后会添加到环境变量
2)然后找到安装路径,找到包对应的主程序文件,一般是 index.js (有时候会藏在./build/index.js 中)
3)然后修改 MCP Sever 的Command配置,将 Command 改成
node 安装路径\build\index.js 即可
3、如果还是连不上,可以用GitHub上的supergateway来进行连接
使用方法:GitHub - supercorp-ai/supergateway: Run MCP stdio servers over SSE and SSE over stdio. AI gateway.
举个例子,先终端输入npx -y supergateway --stdio "npx -y @modelcontextprotocol/server-sequential-thinking",等它完事了。。
然后把 http://localhost:8000/sse配置进Cursor就可以了(端口可以指定,具体参考上面官方介绍)