一、前言
本文记录自己在windows环境下玩MCP发生的一切,MCP本身的概念不用多说。
通过统一的协议链接agent和tool, 一个mcp server里会定义多个tool。
比如github的MCP,相当于把常用的API帮大家封装了一层:https://github.com/modelcontextprotocol/servers/tree/main/src/github
本文主要在cursor client下配置MCP,本质和写代码把mcp server用起来,配置方式是一致的,但不一样的os很多地方不一致,比如windows下和mac下有一些区别(主要在server 启动方式会有点区别)。
二、步骤
2.1 官方提供配置
{
"mcpServers": {
"github": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-github"
],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "<YOUR_TOKEN>"
}
}
}
}
2.2 配置过程(前提条件)
在cursor上配置之后发现红点,说明没有配置成功。
想查看原因可以在 output的CursorMCP查看错误原因
大部分主要原因在于启动server的命令是npx,需要安装nodejs(相当于server启动的命令没安装…)
现在来看的mcp server,基本上都是docker或者npx启动,往深了看,基本上都是index.js是启动文件
nodejs网站:https://nodejs.org/zh-cn/
在官网首页选择推荐的LTS版本,下载Windows安装程序(.msi文件)
安装完成后,打开命令提示符(cmd)或PowerShell,验证安装:
node -v
npm -v
如果显示版本号,说明安装成功
接下来需要 安装mcp server(下载server文件等)
npm install -g @modelcontextprotocol/server-github
2.3 正确配置方案
{
"mcpServers": {
"github": {
"command": "cmd",
"args": [
"/c",
"npx",
"-y",
"@modelcontextprotocol/server-github"
],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "xxx"
}
}
}
}
在windows下需要这样配置,命令从
npx -y @modelcontextprotocol/server-github
改为
cmd /c npx -y @modelcontextprotocol/server-github
相比mac环境下相当于多了一个打开cmd的操作, 这句话大概执行是这样的:
- 启动了新的 cmd.exe 实例
- 命令 npx @agentdeskai/browser-tools-mcp 在此实例中执行
- 只要 MCP 服务器运行,cmd.exe 实例就会保持打开状态
- MCP 服务器作为此 cmd.exe 实例的子进程运行
配置成功为:
这个mcp server中 所有的tool都会展示出来,有个按钮控制是否使用
如果还是配置不成功,重启cursor即可,因为 nodejs的环境没有感知到
问个问题试试
2.4 流程
所以mcp server用起来还是非常方便的
- 安装nodejs环境
- 下载安装mcp server
- 配置即可(这里不一样的os会有一样的方式, 主要是windows有不同)
ref
- https://github.com/cline/cline/issues/902