extend-mcp-server
Guides users through adding new tools or capabilities to an existing connector (MCP server).
Skill by mindstone
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/mindstone-extend-mcp-server
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: backend, testing, research, productivity
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/extend-mcp-server
What's inside
- Skill name
extend-mcp-server- Description
- Guides users through adding new tools or capabilities to an existing connector (MCP server). Handles eligibility, workspace setup, connector research, implementation via Software Engineer workflow, local testing, and PR submission with an extension-specific template.
- License
- MIT
- Instructions
- 640 lines in SKILL.md · view on GitHub
Before installing
- Instructions call the network
Agent Skills spec issues
- body: 640 lines (spec recommends under 500)
- files: referenced but missing: scripts/check-extend-skill-bundled-allowlist.ts
Files (1)
- SKILL.md
SKILL.md (first lines)
# Extend an Existing MCP Connector Guide users through adding new tools to an existing open-source MCP connector in the [`mcp-servers`](https://github.com/mindstone-engineering/mcp-servers) repository. This skill is for when a user wants to **add a tool to an existing connector** — not build a new one from scratch. If the user wants to build a new connector, redirect to the [build-custom-mcp-server](../build-custom-mcp-server/SKILL.md) skill instead. **Reference docs** (load as needed): - [mcp-development-standard.md](../build-custom-mcp-server/references/mcp-development-standard.md) — SDK patterns, naming conventions, error handling, module architecture, security baseline, packaging - [mcp-testing-guide.md](../build-custom-mcp-server/references/mcp-testing-guide.md) — Test strategy, test patterns, debugging common failures - [contribute-connector.md](../build-custom-mcp-server/references/contribute-connector.md) — Contributing back to the ecosystem (lifecycle, PR template, quality bar, CI pipeline) - [community-mcp-security-review.md](../../system/mcp-add-update-remove-connector/references/community-mcp-security-review.md) — Security review process for community MCPs **Required orchestration workflow** (for Phase 4): - [Software Engineer workflow](../../workflows/software-engineer/SKILL.md) — Structured coding orchestration (Understand → Plan → Implement → Review → Test & Deliver) ## Contribution State Reporting Always report build progress at key checkpoints using the `rebel_mcp_report_contribution_state` bundled tool. This tracks the extension in the conversation UI (MCPBuildCard) and offers the user a one-click "Submit to community" option when ready. Call it regardless of whether the user intends to share — it powers local UI, not submission. If `rebel_mcp_report_contribution_state` is not listed in your available tools, or `session_id` is missing from your `<dynamic_env>` context, skip all state reporting silently. **Required parameters for every call:** - `sessionId`: Use the `session_id` value from your `<dynamic_env>` context (must match exactly) - `connectorName`: The connector name being extended - `status`: The checkpoint status (see table below) - `localServerPath` (at `draft` checkpoint): The full path to the local fork build directory **Extension-specific parameters** (set at `ready_to_submit` checkpoint): - `prTitle`: Tool-specific PR title, e.g. `feat(<connector>): add <tool_name> tool`. **Required for extension PRs** — without this, the in-app flow defaults to a generic "feat: add connector" title that doesn't reflect the extension scope. - `prBody`: Tool-specific PR body using the Extension PR Template from Phase 6 below. **Required for extension PRs** — without this, the in-app flow uses a generic description. **Checkpoints — call `rebel_mcp_report_contribution_state` at each:** | When | Status | Notes | |------|--------|-------| | After Phase 4 (Implementation complete) | `draft` | New tool implemented and tests written | | Start of Phase 5 (Local testing begins) | `testing` | Building and running in Rebel locally | | After Phase 5 (Local testing passes) | `ready_to_submit` | Include `prTitle` and `prBody` for the extension PR | ## Process Overview ``` Phase 1: Eligibility Gate → Verify the connector can be extended Phase 2: Prepare Workspace → Set up a local workspace for development (silent, no user questions) Phase 3: Connector Research → Understand existing patterns and where the new tool fits Phase 4: Implementation → Delegate coding to Software Engineer workflow Phase 5: Run Locally in Rebel → Configure Rebel to use the local build Phase 6: Submit Extension → In-app contribution or manual PR ``` ## Phase 1: Eligibility Gate Before any development, determine whether the connector can be extended through this flow. ### 1.1 Identify the Connector Ask: "Which connector do you want to extend, and what tool do you want to add?" Get: - The **connector name** (e.g., "Zendesk", "Slack", "Google Workspace") - The **tool being added** (e.g., "search macros", "list channels", "create calendar event") - **Why the existing tools are insufficient** for the user's needs ### 1.2 Determine Connector Location Check where the connector lives. There are three possible paths. **The `bundled-` ID prefix is NOT a classifier.** Many connectors with `bundled-*` IDs are fully open-source (`provider: "rebel-oss"`, Path A), while others are truly internal (`provider: "bundled"`, Path B). The only signal that matters is the `provider` field from the live catalog. --- #### Step 1 — Preferred: call the catalog tool Call `rebel_mcp_get_connector` (by ID, stripping any `catalog:` prefix) or `rebel_mcp_search_connectors` (by name). Quote the `provider` field verbatim in your response (e.g., "Catalog says: `provider: "rebel-oss"`"). The quoted value is what decides the path. Then assign the path: - `provider: "rebel-oss"` → **Path A** (open-source, extendable) - `provider: "bundled"` → **Path B** (truly bundled/internal, not extendable) - Any other or missing `provider` → **Path C** (third-party) **Do NOT** read `resources/connector-catalog.json` from disk — there may be stale copies on the filesystem. The MCP tools are the single source of truth when available. --- #### Step 2 — Fallback: the bundled-* deterministic allowlist Use this ONLY when the catalog tool is genuinely unavailable in your tool list (e.g., running in a planning-only phase that has no MCP tools). When the tool IS available, Step 1 takes precedence. The following `bundled-*` IDs are `provider: "rebel-oss"` → **Path A (extendable)**. This list is validated against `resources/connector-catalog.json` by `scripts/check-extend-skill-bundled-allowlist.ts` — if it drifts, the validator fails. <!-- BUNDLED_REBEL_OSS_ALLOWLIST_START --> ```yaml # provider: "rebel-oss" connectors with bundled-* IDs (Path A — extendable) bundled_rebel_oss_ids: - bundled-alibaba-mail - bundled-alibaba-mail-personal - bundled-apple-shortcuts - bundled-browser-automation - bundled-browserbase - bundled-custom-email - bundled-elevenlabs - bundled-elevenlabs-agents - bundled-fathom - bundled-freshdesk - bundled-gamma - bundled-google - bundled-google-analytics - bundled-hubspot - bundled-humaans - bundled-icloud-mail - bundled-kling - bundled-microsoft-calendar - bundled-microsoft-files - bundled-microsoft-mail - bundled-microsoft-sharepoint - bundled-microsoft-teams
From mindstone/rebel-system, MIT.
More from mindstone/rebel-system
- 0.493score
build-custom-mcp-server
mindstone
Helps users connect and use a service in Rebel when it isn't already in the built-in connector catalog.
SkillBFreshness: BClaude Code +9 - 0.450score
multi-perspective-visual-ideation
mindstone
Generate a rich longlist of image ideas by deliberately spinning up multiple contrasting creative perspectives (comic, infographic, storybook, documentary…
SkillCFreshness: CClaude Code +9 - 0.450score
cross-platform-shell-delay-sleep-wait
mindstone
How to pause/sleep in shell commands on macOS, Linux, and Windows — use this when the agent needs to wait before running the next command.
SkillCFreshness: CClaude Code +9 - 0.449score
read-mac-stickies
mindstone
Read and search Mac Stickies app content — list, filter by color, search by text, or read specific notes
SkillCFreshness: CClaude Code +9 - 0.447score
Anthropic-skill-packager
mindstone
Packages and validates skills for external distribution (zip files).
SkillCFreshness: CClaude Code +9 - 0.444score
git-commit-changes
mindstone
Guidelines for batching changes and writing safe, atomic git commits
SkillCFreshness: CClaude Code +9 - 0.426score
canvas-design
mindstone
Create beautiful visual art in .png and .pdf documents using design philosophy.
SkillCFreshness: CClaude Code +9 - 0.426score
brand-guidelines
mindstone
Applies Anthropic's official brand colors and typography to any sort of artifact that may benefit from having Anthropic's look-and-feel.
SkillCFreshness: CClaude Code +9 - 0.426score
algorithmic-art
mindstone
Creating algorithmic art using p5.js with seeded randomness and interactive parameter exploration.
SkillCFreshness: CClaude Code +9
Signals
- Stars
- 0
- Forks
- 1
- Open issues
- 0
- Last commit (this folder)
- Oct 2, 2026 (27 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/mindstone/rebel-system
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from mindstone
- 0.618score
Google Workspace
mindstone
Google Workspace MCP server for Gmail, Calendar, Drive, Docs, Sheets, Slides, Contacts, and more
ConnectorAFreshness: ALocal★ 13↓ 183/wkClaude Code +5 - 0.610score
Nano Banana
mindstone
Nano Banana MCP server — Google Gemini image generation and editing.
ConnectorAFreshness: ALocal★ 13↓ 92/wkClaude Code +5 - 0.606score
Slack
mindstone
Slack MCP server: channels, messages, threads, reactions, users, files, and scheduled messages
ConnectorAFreshness: ALocal★ 13↓ 66/wkClaude Code +5 - 0.597score
Microsoft 365 Teams
mindstone
Microsoft 365 Teams via Graph: list chats, read/send messages, list teams/channels, presence.
ConnectorAFreshness: ALocal★ 13↓ 43/wkClaude Code +5 - 0.588score
Microsoft Office
mindstone
Microsoft Office MCP server: read and edit Word documents, Excel workbooks, and PowerPoint files
ConnectorBFreshness: BLocal★ 13↓ 411/wkClaude Code +5 - 0.585score
QuickBooks Online
mindstone
QuickBooks Online MCP server: invoices, bills, customers, vendors, employees, and accounts
ConnectorAFreshness: ALocal★ 13↓ 26/wkClaude Code +5
Cite this page
extend-mcp-server skill. Agent Mart. https://agentmart.dev/skills/mindstone-extend-mcp-server (last updated 2026-10-24)