把 IDEA 的 MCP 丢到 ChatGPT 网页里,继续白嫖

IDEA 的 MCP 插件可以把 IDE 的能力开放给 AI 客户端。编辑器里打开的代码、运行环境、终端,都能通过 MCP 变成 AI 可以调用的工具。但这个 MCP 服务默认只监听 127.0.0.1,也就是只能本机访问。想把它接到公网上的 AI 服务,比如 ChatGPT,需要先把它暴露出去。

IDEA 的 MCP 插件绑定 127.0.0.1 这个限制,在 JetBrains YouTrack 上有人专门提过。issue IJPL-200926 的评论区里给出了 mitmproxy 反向代理的方案,实测可以行得通。思路是让 mitmproxy 监听公网地址,收到请求以后转发给本机的 MCP 服务。外部访问代理地址,就等于访问了本机的 MCP。

方案来源:https://youtrack.jetbrains.com/issue/IJPL-200926

mitmproxy 反向代理

方案可行,命令也很简单。下面是一个示例,按自己的端口和地址改一下就能用

mitmproxy \
  --mode reverse:http://127.0.0.1:64342 \
  --listen-host 192.168.1.100 \
  --listen-port 64343 \
  --no-http2 \
  --set stream_large_bodies=1

运行以后的效果见下图

mitmproxy 运行效果

域名和 HTTPS

局域网里能用还不够。ChatGPT 的 MCP 配置要求 HTTPS 地址。需要把域名解析到这台机器的公网地址,配上 HTTPS 证书,再把公网请求转发到 64343 端口。这一层反代用什么工具都行,nginx、宝塔或者 CDN 都可以。

在 ChatGPT 里配置

接下来在 ChatGPT 的插件页面里添加 MCP 服务器。把代理地址填进服务器 URL,身份验证选无身份验证。配置好以后,ChatGPT 就能调用 IDEA 里的工具。添加服务器的界面见下图。

ChatGPT 插件页面添加 MCP 服务器
ChatGPT 中配置 IDEA MCP 的截图

后来发现 Perplexity 也支持同样的配置。在 Perplexity 里把同一个代理地址填进去,本机的 MCP 服务直接就能连上。配置界面见下图。

Perplexity 中配置 MCP 的截图

同一个服务,ChatGPT 能用,Perplexity 也能用,多平台填的都是同一个地址。这下可以物尽其用了,榨干每一个订阅。

安全提醒

这里要特别提醒安全问题。身份验证选了无身份验证,等于服务完全开放。IDEA 的 MCP 能访问本机的文件、终端和 shell,暴露到公网,就是把整台电脑的 shell 权限交出去。服务开着的时候,任何知道地址的人都能连上来操作这台电脑。这个方案只适合自己用,或者给完全信任的人用,地址别随手发。

配好以后基本不用管了,ChatGPT 随时能调本机的 IDEA。唯一要注意的是安全提醒那条,地址别外传。其他的,继续愉快地白嫖。

希望 Sam Altman 不会把我的号给封掉🤣

玩够了之后记得把 mitmproxy 关掉。

知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议
暂无评论

发送评论 编辑评论


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