Closed
Conversation
New internal/mcp/ package for managing MCP server configurations across AI tools (Claude Code, Cursor, Codex): - config.go: MCPConfig/MCPServer Load/Save/Validate for mcp.yaml - targets.yaml: 3 targets with format (json/toml) and shared flags - generate.go: per-target JSON/TOML generation with key transforms - merge.go: read-modify-write engine (JSON + TOML) preserving existing user entries and non-MCP config sections - sync.go: non-destructive symlink engine - copy.go: file copy engine with content dedup - state.go: state tracking for merge mode cleanup - toml.go: TOML read/write for Codex config.toml Shared config files (Claude ~/.claude.json, Codex config.toml) automatically fall back to merge mode when symlink/copy is set. Ref: #95
Commands: mcp add/remove/list/status, sync mcp Three sync modes: merge (default), symlink, copy Shared targets auto-fallback to merge with warning Config: mcp_mode field in config.yaml TUI: interactive list (filter/disable/remove) and add wizard Integrated with 'sync --all' (skills + extras + mcp) Ref: #95
Server: GET/POST/DELETE/PATCH /api/mcp + POST /api/mcp/sync UI: MCP page with Servers tab (cards, disable/remove, add modal) and Sync Status tab (target cards, sync button, toast results) Ref: #95
11 tests: add/list/remove, merge (preserve user entries, cleanup, preserve other keys), symlink (create/skip/dry-run), copy mode, status, duplicates, remote servers. Ref: #95
- PATCH /api/mcp/mode: change mcp_mode (merge/symlink/copy) - UI: mode dropdown in Sync Status tab - mcp.yaml targets section: user-defined custom MCP targets merged with builtin targets (claude/cursor/codex) - MCPTargetsWithCustom: merge logic for builtin + custom Ref: #95
|
Warning Gemini encountered an error creating the summary. You can try again by commenting |
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.
Summary
Add
skillshare mcpcommands andsync mcpto manage MCP server configurations across AI tools — define once inmcp.yaml, sync everywhere.Closes #95
Supported Tools
.mcp.json)config.toml)Features
CLI
skillshare mcp add/remove/list/status— managemcp.yamlskillshare sync mcp— sync to all targetsskillshare sync --all— now includes MCP syncmcp list(fuzzy filter, disable/remove) andmcp add(wizard)Web UI
Architecture
~/.claude.json, Codexconfig.toml) auto-fallback to mergetargets:section inmcp.yamlmcp_state.yaml) for merge mode cleanupTest plan
internal/mcp/)go build ./...+go vet ./...cleanmcp add→sync mcp→ verify target configs