MCP Installer

SkillAI & models

Lets your agent install and configure tool servers across apps like Claude Desktop, Cursor, and VSCode.

Instructions available. Your AI can read the instructions. Execution depends on the setup they require.

Add ahel to your AI once: Claude, ChatGPT, Cursor, Claude Code or Codex. Then ask it to use this.

Then ask your AI: use the MCP Installer skill

About this skill

Install and configure MCP servers across desktop and CLI clients (Claude, Cline, Windsurf, Cursor, VSCode, Gemini CLI, Codex, Trae, Antigravity, etc.) on macOS/Windows/Linux, preferring @smithery/cli when supported and otherwise performing manual JSON config updates and path discovery.

What this skill tells your AI

The instructions your AI receives, as published by lintendo/axhub-skills in skills/mcp-installer/SKILL.md and read by ahel’s review.

Overview

Install MCP server configurations across multiple clients and OSes with a CLI-first workflow and a safe manual fallback.

Workflow

1) Collect inputs

  • Identify the target client ID and OS; use references/clients.md for the supported list and known paths.
  • Gather MCP server definitions (name -> config object) and decide whether to override existing entries.
  • If any provided MCP config includes secrets (for example fields like key, token, apiKey, accessToken, secret, password, or Authorization, or env vars like *_KEY, *_TOKEN), pause the install and ask the user to obtain/provide those values first. Only proceed once the user confirms they have the required credentials (or requests installing a placeholder and will fill it in later).

2) Prefer @smithery/cli (when supported)

  • Run npx @smithery/cli --help and npx @smithery/cli install --help to confirm the exact syntax.
  • Use the CLI install flow for the client ID; if the CLI rejects the client or fails, fall back to manual edits.

3) Manual install (JSON config fallback)

  • Locate the config file path (see references/clients.md). If unknown, search standard config dirs for files like mcp.json, mcp_config.json, claude_desktop_config.json, or cline_mcp_settings.json.
  • Read existing JSON and ensure a top-level mcpServers object exists.
  • Merge servers: add new names; replace existing when override is true; preserve all other keys.
  • Write JSON with 2-space indentation.

Example shape:

{
  "mcpServers": {
    "example-server": {
      "command": "npx",
      "args": ["-y", "example-mcp@latest"],
      "env": {}
    }
  }
}

4) Verify and troubleshoot

  • Restart the client and confirm the MCP servers appear.
  • If writes fail on macOS, prompt for Full Disk Access and ensure the client app is closed before writing.
  • For CLI-only clients (for example claude-code), use the client CLI help to locate its MCP install/config command.
  • If Trae/Trae-CN installs fail due to permissions or other errors, generate a deep link and return it as a fallback.

5) Trae deep-link fallback

If trae or trae-cn cannot write to disk, generate a schema link for the user to open in Trae:

  • trae: trae://trae.ai-ide/mcp-import?type=${TYPE}&name=${NAME}&config=${BASE64_ENCODED_CONFIG}
  • trae-cn: trae-cn://trae.ai-ide/mcp-import?type=${TYPE}&name=${NAME}&config=${BASE64_ENCODED_CONFIG}

Rules:

  • TYPE is the MCP transport type (for example streamable-http).
  • NAME is the server name shown in Trae.
  • config is the base64-encoded JSON config object for that server (no whitespace, UTF-8 bytes).

References

  • Use references/clients.md for client IDs, aliases, and known config paths.

Signals

GitHub stars
127
Forks
17
Last commit
Aug 2026
Advanced
Item type
skill
Key
mcp-installer
Source
github.com/lintendo/axhub-skills