Skip to content

fix(onboarding): surface MCP setup prompt when config is absent#53

Merged
m-szymanska merged 1 commit into
developfrom
fix/mcp-setup-prompt-visibility
Jul 6, 2026
Merged

fix(onboarding): surface MCP setup prompt when config is absent#53
m-szymanska merged 1 commit into
developfrom
fix/mcp-setup-prompt-visibility

Conversation

@m-szymanska

Copy link
Copy Markdown
Contributor

Bug (caught in runtime smoke of #52)

The guided MCP setup prompt shipped in #52 never appeared: probe_mcp_status honestly returns a single status row ("no mcp.json (optional — MCP off)") even when nothing is configured, so the Swift condition !mcp.rows.isEmpty was always true and the mcpSetupPrompt branch was dead code.

Fix

  • McpStatusReport gains a configured: bool flag — false when mcp.json is absent or the config has zero servers, true otherwise (including present-but-broken configs, which should surface their error status rather than an onboarding prompt).
  • The flag rides through CsMcpStatusReport (UniFFI) and the onboarding condition switches from row-count to mcp.configured. No visual changes to the prompt itself.
  • Settings empty-state from feat(settings): guided MCP onboarding + reset app data #52 is unaffected (it keys off listServers(), not status rows).

Tests / gates

Probe tests extended for both flag states; cargo fmt --check, clippy -D warnings, tests across codescribe/-core/-ffi, debug + signed release build — all green. One unrelated preexisting flake noted (hotkeys settings-isolation test, passes solo and on re-run; untouched by this change).

🤖 Generated with Claude Code

… smoke)

probe_mcp_status returned a single neutral "no mcp.json" row even when
no config existed, so the onboarding readiness check `!mcp.rows.isEmpty`
was always true and the new mcpSetupPrompt (PR #52) was dead code.

Add a `configured` flag on McpStatusReport: false when there is no config
yet (missing mcp.json OR present-but-no-servers), true otherwise (including
a present-but-broken config — the file exists, show the concrete error, not
the onboarding prompt). Carry it through CsMcpStatusReport to Swift and gate
the readiness step on `mcp.configured` instead of row count.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@gemini-code-assist

Copy link
Copy Markdown

Warning

You have reached your daily quota limit. Please wait up to 24 hours and I will start processing your requests again!

@m-szymanska m-szymanska merged commit 0390d96 into develop Jul 6, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant