手把手搭建 mcp-gateway|本地开发与集中管控思路

写在前面

mcp-gateway是关于mcp使用的一个解决方案,它介于mcp-client与mcp-server之间,详细的说明可以参考之前的文章如何为 MCP 工作流提供安全网关与统一治理

本文会逐步拆解讲解下究竟如何使用mcp-gateway,以及他的安装启用方式。我会以windows环境和cursor作为演示。

一、安装准备

1.1 安装python

参考项目文档,选择合适的python版本安装。

这里我们可以访问官网,选择Windows版本的python包,然后找到合适的版本安装。

https://www.python.org/downloads/windows

按提示安装即可,安装目录可以放到非C盘目录下,记得选择将python添加到Path。安装完成后,我们在命令行窗口输入python -V,能正常显示python的版本号,即安装成功。

1.2 安装 mcp-gateway 包

安装完 Python ,输入 pip install mcp-gateway 来安装mcp-gateway包。

安装完我们测试下mcp-gateway是否能正常启动,这里需要注意下,由于目前下载下来的mcp-gateway包中可能存在引入包版本的问题,有个地方需要处理下否则会无法正常启动,比较简单的办法我们直接找到代码修改下即可。

在python的安装包目录下,默认是以下路径,找到gateway.py文件:

C:\Users\**\AppData\Roaming\Python\Python313\site-packages\mcp_gateway\gateway.py

找到第452行代码,我们将其中的版本参数去掉,修改后为:

# Initialize the MCP gateway server
# Pass description and version if desired
mcp = FastMCP("MCP Gateway", lifespan=lifespan)

运行下一下命令是看下是否能正常启用

mcp-gateway --mcp-json-path ~/.cursor/mcp.json -p basic -p xetrack

实操在改完后这里是能正常启动的。

1.3 安装Cursor

这里访问cursor官网 ,下载符合系统要求的版本按提示安装即可。安装很简单,至于cursor的使用方法不是本文的重点。


二、使用详解

关于如何使用mcp-gateway,按照使用场景可以分为两种方式。

  • 个人使用:

如果只是个人使用,我们可以直接将mcp-gateway以类似stdio的形式运行在本地。

  • 团队使用:

如果是企业场景,比如需要所有的开发团队在使用cursor时,需要统一管控所有的mcp-server,那肯定不能在每个人的电脑配置一套mcp.json,比较好的方式是专门部署mcp-gateway,然后每个人电脑上的cursor再去访问这个mcp-gateway。

接下来我们来具体讲解下这两种方式。

2.1 Cursor / Claude本地客户端

在第一步按要求安装好所有的软件后,修改cursor的mcp配置文件。在cursor的设置页面,会有个MCP选项(这里不同版本的cursor会有所不同),进入MCP选项后点击“编辑”或者“新增MCP server”会进入到mcp.json配置文件,

我们将以下这段配置复制进去:

{
  "mcpServers": {
      "mcp-gateway": {
          "command": "mcp-gateway",
          "args": [
              "--mcp-json-path",
              "~/.cursor/mcp.json",
              "--plugin",
              "basic",
              "--plugin",
              "xetrack"
          ],
          "servers": {
              "filesystem": {
                  "command": "npx",
                  "args": [
                      "-y",
                      "@modelcontextprotocol/server-filesystem",
                      "."
                  ]
              }
          }
      }
  }
}

这样就配置结束了,cursor会在启动或者手动加载mcp服务时自动取启动mcp-gateway服务。在上面的配置中我们将文件mcp-server作为子服务器添加了进来,在cursor加载完他的mcp-server后,他会把server-filesystem中的工具全部都列了出来:

我们看下使用效果,我在对话中让他帮我查询D盘目录下的文件,可以看到他会去正常调用相应的工具:

2.2 远程集中管理mcp-server

那个人使用按照第一种方式没啥问题,如果是团队就不行了,团队需要统一管控MCP服务器,单独部署MCP Gateway,大概架构图如下:

那这里本来是设想在服务器安装mcp-gateway以后,客户端通过http服务的形式来访问,目前了解下来发现mcp-gateway提供的是stdio的数据传输方式,并没有提供http,如果这里需要远程集中管理,需要将mcp-gateway调整为支持steamable http或sse的方式对外提供mcp-server服务

2.3 自建MCP Host防护

本来这里的预期是想通过mcp-gateway来集中管控企业内部的mcp-server或者是外部社区的mcp-server,但是一顿操作下来发现,这里的mcp-gateway可能更加适合为自建的mcp host做安全服务。就像项目官方展示的示意图一样:

比如像飞书的aily智能体,它支持启用mcp服务,可以是自建的,也可以是从外部社区引入的,那这里完全可以在飞书的飞书艾莉侧部署一个mcp-gateway用来做安全防护,因为对于用户他可能会把各种各样的mcp-server引入到aily智能体,确实需要一个安全网关来作为防护。

当然第二种方式,想要集中管理mcp-server也是可行的,只是需要将mcp-gateway改成能对外提供远程服务的,同时现在的这个mcp-gateway没有可视化管理页面,这也是他的一个弱点,

原创文章,作者:kisslife,如若转载,请注明出处:https://gagaqi.top/index.php/2025/08/20/mcp-gateway-windows-cursor-setup-guide/
暂无评论

发送评论 编辑评论

|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇