Skip to content

Import Claude Desktop MCP servers into Puffer#24

Open
shouc wants to merge 2 commits into
masterfrom
audit/claude-parity-gaps-5
Open

Import Claude Desktop MCP servers into Puffer#24
shouc wants to merge 2 commits into
masterfrom
audit/claude-parity-gaps-5

Conversation

@shouc
Copy link
Copy Markdown
Contributor

@shouc shouc commented Apr 12, 2026

Summary

  • implement puffer mcp add-from-claude-desktop for Claude Desktop stdio servers instead of printing a placeholder
  • add --scope support to the command so imports can target user or workspace config
  • skip Desktop servers that rely on per-server env blocks, since Puffer's current MCP manifest model cannot represent them yet, and report those skips explicitly

Audit scope

This was a fresh parity pass on latest master in a repo-local worktree after checking open PR scope first.

Explicitly excluded overlapping in-flight work:

The concrete non-overlapping gap here was MCP CLI parity:

  • Claude exposes mcp add-from-claude-desktop
  • Puffer still printed Import from Claude Desktop is not implemented in Puffer yet.

Testing

  • cargo test -p puffer-cli command_surface_desktop -- --nocapture
  • cargo test -p puffer-cli mcp_add_from_desktop_accepts_scope_override -- --nocapture
  • cargo test -p puffer-core mcp -- --nocapture

Notes

  • The importer currently supports the subset of Claude Desktop MCP servers that Puffer can model today: stdio servers without per-server environment blocks.
  • Servers with env are skipped and reported clearly rather than imported incorrectly.
  • A full cargo test -p puffer-cli -- --nocapture run still hits an unrelated existing failure in authflow::tests::callback_listener_captures_matching_request on this machine; this PR does not touch authflow.
  • For parity verification in the repo-local worktree, I temporarily mounted the existing local references/ corpus into the worktree so the audit could compare against the Claude reference tree. No references/ content is included in this branch.

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