mirror of
https://github.com/bilawalsidhu/gods-eye-view.git
synced 2026-11-04 10:24:02 +00:00
fix(mcp): share one panel key across an install's stdio servers
Fixes bilawalsidhu/gods-eye-view#927. Each stdio MCP server made its own random panel key, and panel_request accepts only the key in the panel page. A client that starts two server processes for one connection and reads the page from one while sending the page's requests to the other (seen in Claude Desktop on Windows) therefore always got "Only the God's Eye View panel may make this request". The stdio entry now passes a key shared by the install, created once in .gev-cache/mcp-panel-key. The file is staged 0600 and published with link(), so processes starting together agree on one key and never read a half-written one. If it cannot be stored, the process keeps a key of its own, as before. createLocalMcpServer still makes a fresh key unless given one, so in-process servers (the /mcp HTTP plugin, tests) are unchanged. Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
1 parent
e685449a52
commit
e363b6a14f
6 files changed
+229
-5
No files matched your search
@@ -873,6 +873,7 @@
|
||||
"src/tools/queries/queries.test.mjs",
|
||||
"src/tools/mcp/mcp.test.mjs",
|
||||
"src/tools/localServer.test.mjs",
|
||||
"src/tools/mcpPanelKey.test.mjs",
|
||||
"src/tools/queries/aviation.test.mjs",
|
||||
"src/tools/queries/space.test.mjs",
|
||||
"src/tools/queries/media.test.mjs",
|
||||
|
||||
Reference in new issue
Block a user