Skip to content

fix(plugin): load hosted MCP from .mcp.json and list as Pipefy - #641

Merged
adriannoes merged 7 commits into
devfrom
fix/cursor-plugin-hosted-mcp-json
Aug 24, 2026
Merged

fix(plugin): load hosted MCP from .mcp.json and list as Pipefy#641
adriannoes merged 7 commits into
devfrom
fix/cursor-plugin-hosted-mcp-json

Conversation

@adriannoes

Copy link
Copy Markdown
Collaborator

Summary

  • Cursor plugin hosted MCP is .mcp.json only. .cursor-plugin/plugin.json sets mcpServers to ./.mcp.json (the same hosted mcp.pipefy.com file Claude Code auto-discovers). Root mcp.json is removed and lint treats a leftover copy as forbidden.
  • Marketplace listing displayName is Pipefy; .cursor-plugin/marketplace.json names the marketplace pipefy so a GitHub import does not title-case the ai-toolkit slug to "Ai Toolkit".
  • Docs and Unreleased notes describe the shared .mcp.json layout (no dual-file).

This branch sits on main after v0.5.0-beta.1. Until #639 (main → dev back-merge) lands, the three-dot diff vs dev also includes that release bump. The plugin-only range vs main is the five fix(plugin) / docs(plugin) commits.

Test plan

  • uv run pytest tests/test_lint_cursor_plugin.py (41 passed)
  • Plugin lint rejects a leftover root mcp.json and accepts .mcp.json + mcpServers: ./.mcp.json
  • Skills Lint green on branch pushes
  • Working tree clean; dual mcp.json experiment reverted (not committed)
  • uv run pytest -m "not integration" (full suite; CI on this PR)
  • uv run ruff check . && uv run ruff format --check .
  • Manual: add the GitHub marketplace from this branch and confirm the listing title is Pipefy and hosted MCP comes from .mcp.json

Docs / skills

  • CHANGELOG Unreleased + README / uninstall notes for .mcp.json only
  • No docs/skills update needed (no MCP ↔ CLI coverage change)

Legal / contributions

  • Commits include DCO sign-off (git commit -s)
  • Regulated-domain skills include COMPLIANCE.md when applicable (N/A)

mocha06 and others added 7 commits August 21, 2026 08:52
Signed-off-by: mocha06 <52426811+mocha06@users.noreply.github.com>
Cursor's Marketplace clone was discovering Claude Code's .mcp.json (stdio)
instead of mcp.json. Ship one hosted config and pin the Cursor manifest to it.

Signed-off-by: Adrianno Esnarriaga <esadrianno@gmail.com>
GitHub-imported marketplaces derive the listing title from the repo slug.
Name the Cursor marketplace pipefy and set displayName to Pipefy AI Toolkit.

Signed-off-by: Adrianno Esnarriaga <esadrianno@gmail.com>
The plugin MCP file is .mcp.json. Lint still rejects a root mcp.json so that extra file cannot come back.

Signed-off-by: Adrianno Esnarriaga <esadrianno@gmail.com>
Unreleased notes now name the shared plugin file without framing mcp.json as Cursor's preferred config.

Signed-off-by: Adrianno Esnarriaga <esadrianno@gmail.com>
Company plugins use the vendor name, not the toolkit. The Cursor displayName now matches the Claude Code plugin.

Signed-off-by: Adrianno Esnarriaga <esadrianno@gmail.com>
@adriannoes adriannoes self-assigned this Aug 24, 2026
@adriannoes adriannoes added hosted-mcp Hosted / remote MCP profile (multi-user, on-behalf-of, auth surface) hotfix Urgent fix for production/hosted; prioritize over normal queue labels Aug 24, 2026
@adriannoes
adriannoes merged commit fb63932 into dev Aug 24, 2026
7 checks passed
@adriannoes
adriannoes deleted the fix/cursor-plugin-hosted-mcp-json branch August 24, 2026 21:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

hosted-mcp Hosted / remote MCP profile (multi-user, on-behalf-of, auth surface) hotfix Urgent fix for production/hosted; prioritize over normal queue

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants