Repository navigation
refactor(plugin): split the Claude Code MCP server into a csp-mcp plugin - #128
Conversation
The Claude Code `csp` plugin registered the MCP server unconditionally, and Claude Code has no per-server toggle in a plugin manifest (`userConfig` values only substitute into a server's command, they cannot omit it). Splitting the server out makes it opt-in at install time: - `csp`: csp-search sub-agent + skill, which call the csp CLI - `csp-mcp`: only `.mcp.json` (the csp MCP server) The `.mcp.json` file is moved, not just dropped from plugin.json, because Claude Code auto-loads `.mcp.json` from the plugin root by default. Codex is unchanged: `plugins/csp/.codex-plugin` still bundles the MCP server via `.mcp.codex.json`. Existing Claude Code users of `csp@pleaseai` lose the MCP server on update and need `/plugin install csp-mcp@pleaseai` to keep it.
|
Warning You have reached your daily quota limit. Please wait up to 24 hours and I will start processing your requests again! |
Up to standards ✅🟢 Issues
|
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
|
Merging this PR will not alter performance1 warning
Comparing |
|
Warning You have reached your daily quota limit. Please wait up to 24 hours and I will start processing your requests again! |
[Medium impact] The change affects how Claude Code users install code search tools. The PR appears safe to merge, with a non-blocking correction needed in the Codex setup instructions.
|
| ## Customization | ||
|
|
||
| By default the MCP server indexes only code files. To also index documentation or config, append `--content` to the server args, e.g. `["@pleaseai/csp", "mcp", "--content", "all"]`. A single tool call can also override this with its `content` argument (`code`, `docs`, `config`, or `all`). | ||
| The helper calls the `csp` CLI. Install it with Homebrew (`brew install pleaseai/tap/csp`), or keep [Bun](https://bun.sh) 1.3.10+ on your `PATH` so the helper can fall back to `bunx @pleaseai/csp`. |
There was a problem hiding this comment.
Codex's Bun requirement is missing
The revised requirements offer Homebrew instead of Bun, but that is only enough for the Claude Code helper. Codex still starts its bundled MCP server with bunx, even when csp is on PATH. Users following the Homebrew-only setup cannot start that server. Keep a separate Bun requirement for Codex, or explain how to change its MCP command.
| The helper calls the `csp` CLI. Install it with Homebrew (`brew install pleaseai/tap/csp`), or keep [Bun](https://bun.sh) 1.3.10+ on your `PATH` so the helper can fall back to `bunx @pleaseai/csp`. | |
| The helper calls the `csp` CLI. Install it with Homebrew (`brew install pleaseai/tap/csp`), or keep [Bun](https://bun.sh) 1.3.10+ on your `PATH` so the helper can fall back to `bunx @pleaseai/csp`. | |
| Codex also requires Bun 1.3.10+ on your `PATH` to launch its bundled MCP server, even if you installed `csp` with Homebrew. |
Knowledge Base Used: Agent plugin packaging
Prompt To Fix With AI
This is a comment left during a code review.
Path: plugins/csp/README.md
Line: 31
Comment:
**Codex's Bun requirement is missing**
The revised requirements offer Homebrew instead of Bun, but that is only enough for the Claude Code helper. Codex still starts its bundled MCP server with `bunx`, even when `csp` is on `PATH`. Users following the Homebrew-only setup cannot start that server. Keep a separate Bun requirement for Codex, or explain how to change its MCP command.
```suggestion
The helper calls the `csp` CLI. Install it with Homebrew (`brew install pleaseai/tap/csp`), or keep [Bun](https://bun.sh) 1.3.10+ on your `PATH` so the helper can fall back to `bunx @pleaseai/csp`.
Codex also requires Bun 1.3.10+ on your `PATH` to launch its bundled MCP server, even if you installed `csp` with Homebrew.
```
**Knowledge Base Used:** [Agent plugin packaging](https://app.greptile.com/passionfactory/-/custom-context/knowledge-base/pleaseai/code-search/-/docs/agent-plugin-packaging.md)
---
For each issue above, determine whether it is valid and should be fixed. If so, fix it directly.pleaseai/code-search#128 splits the Claude Code csp plugin in two: `csp` keeps the csp-search sub-agent and skill (CLI), and the new `csp-mcp` carries only the csp MCP server, so users can opt out of it. Add the `csp-mcp` entry (git-subdir, plugins/csp-mcp) and update the `csp` description to match. The Codex marketplace is intentionally not regenerated: plugins/csp-mcp has no Codex manifest, and the Codex csp plugin still bundles the MCP server.



Summary
The Claude Code
cspplugin registered thecspMCP server unconditionally. Claude Code has no per-server toggle in a plugin manifest:userConfigvalues only substitute into a server's command, so they can't leave the server out. This PR splits the plugin so the MCP server becomes opt-in when you install:csp(plugins/csp)csp-searchsub-agent + skill, which call thecspCLIcsp-mcp(plugins/csp-mcp, new).mcp.jsononly: thecspMCP server (search,find_related)plugins/csp/.mcp.jsonis moved toplugins/csp-mcp/.mcp.json. RemovingmcpServersfromplugin.jsonwould not be enough, because Claude Code loads.mcp.jsonfrom the plugin root by default..claude-plugin/marketplace.jsonlists both plugins.plugins/csp/.codex-pluginstill bundles the MCP server via.mcp.codex.json.README.md/README.ko.md(Plugin section),plugins/csp/README.md, newplugins/csp-mcp/README.md,docs/plugin.mdx,docs/development.mdx(layout table).Migration for existing users
The published marketplace (
pleaseai/claude-code-plugins) installscspfromplugins/csponmain. After this merges, Claude Code users ofcsp@pleaseailose the MCP server on their next update. To keep it:The companion PR pleaseai/claude-code-plugins#288 adds the
csp-mcpentry. Merge it together with this one socsp-mcp@pleaseairesolves.The commit uses
refactor:rather thanfeat!:on purpose: a breaking-change marker would make release-please do a major bump of thecsppackage, and the binary has not changed.Related issue
None. Companion PR: pleaseai/claude-code-plugins#288 (adds the
csp-mcpmarketplace entry).Checklist
claude plugin validatepasses for the marketplace,plugins/csp, andplugins/csp-mcp(only the existing missing-icon warning).bun run typecheck && bun run build && bun run check(13 pages)BREAKING CHANGE:note is included: plugin packaging changes for existing Claude Code users (see Migration); no breaking change to thecsppackage itself