Repository navigation
feat(settings): add an MCP section for global MCP servers - #418
Merged
Merged
Conversation
Contributor
There was a problem hiding this comment.
Devin Review found 1 potential issue.
1 flag not posted on this PR by your GitHub settings — view it in Devin Review. (Configure)
Comment on lines
+605
to
+609
| const probes = probeQuery.isFetching | ||
| ? new Map<string, McpServerProbe>() | ||
| : new Map( | ||
| (probeQuery.data?.servers ?? []).map((server) => [server.name, server]), | ||
| ); |
Contributor
There was a problem hiding this comment.
🟡 Failed refresh leaves stale server statuses
When probe_mcp_servers fails during a refresh, probes still uses its cached report. Rows show obsolete connection states and tools despite the failed check.
Suggested change
| const probes = probeQuery.isFetching | |
| ? new Map<string, McpServerProbe>() | |
| : new Map( | |
| (probeQuery.data?.servers ?? []).map((server) => [server.name, server]), | |
| ); | |
| const probes = probeQuery.isFetching || probeQuery.isError | |
| ? new Map<string, McpServerProbe>() | |
| : new Map( | |
| (probeQuery.data?.servers ?? []).map((server) => [server.name, server]), | |
| ); |
Was this helpful? React with 👍 or 👎 to provide feedback.
Lists servers from the global mcp.json instantly, probes their state separately, and supports sign-in/out, enable/disable, exposure, add and remove. Changes apply to new sessions.
bubbleptr
force-pushed
the
feat/mcp-settings-page
branch
from
October 1, 2026 11:35
e33c220 to
3bfaae2
Compare
5 tasks done
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Stacked on #417. No linked issue: implements the UI half of
.scratch/mcp-settings/PRD.md.Summary
mcp.json,UI 自己写,不映射 Pi 的 TUI /ctx.ui。get_mcp_config)先出,连接状态(probe_mcp_servers)单独探测;探测中显示 Checking…,不轮询、窗口聚焦不重探,探测失败时行仍保留。mcp.json。hasStoredCredentials为 true 时出现(不再对所有无 Authorization 头的 HTTP 服务器显示);登录/登出成功后同时刷新配置与探测。Test plan
settings-mcp.test.tsx覆盖探测/失败保留行、启用切换、登录等待态、添加、删除确认bun run typecheck/bun run lint/bun run test(167 文件 / 1965 用例)/bun run build全绿PI_CODING_AGENT_DIR/PACE_DATA_DIR):stdio 与 HTTP 显示 Connected 并列出工具、401 显示 Needs sign-in + Sign in、命令不存在显示 Failed + ENOENT;关闭开关写入"enabled": false;预置 token 的服务器 Sign out 后mcp-auth.json条目被删除、按钮消失