From cairn
CAIRN — Create Any Integration, Run Naturally. Scaffold production-ready MCP server projects for any domain. Use this skill when the user wants to create a new MCP server, scaffold an API integration, build a doc search tool, or start a minimal MCP project. Trigger phrases: "create an MCP server", "scaffold MCP", "new MCP project", "build an API integration", "wrap this API as MCP tools", "like percona-dk but for", "like IBEX but for", "cairn", "scaffold". Three project types: api-integration (wrap REST APIs as MCP tools), doc-search (semantic search over Markdown repos), and starter (minimal MCP server skeleton).
How this skill is triggered — by the user, by Claude, or both
Slash command
/cairn:cairnThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Scaffold production-ready MCP servers for any domain. Part of the Alpine Toolkit.
Scaffold production-ready MCP servers for any domain. Part of the Alpine Toolkit.
Source: https://github.com/Percona-Lab/CAIRN Release: https://github.com/Percona-Lab/CAIRN/releases/latest
Wrap an external REST API as MCP tools. Generates a connector class (handles auth + HTTP) and an MCP server that exposes connector methods as tools. Based on the IBEX pattern (Slack, Jira, Notion connectors).
Generated files (Python):
connector.py — API client class with auth headers + request helpermcp_server.py — FastMCP server wrapping connector methods as toolspyproject.toml, .env.example, README.mdGenerated files (Node.js):
src/connector.js — API client with auth + fetch helpersrc/mcp-server.js — @modelcontextprotocol/sdk serverpackage.json, .env.example, README.mdSemantic search over GitHub repos containing Markdown documentation. The percona-dk pattern: clone repos, chunk markdown, embed in ChromaDB, expose via MCP + REST API. Includes a polished cross-platform installer with stack selection, progress bars, and AI client auto-detection.
Generated files (Python):
mcp_server.py — FastMCP server with auto-refreshingest.py — Incremental ingestion with file hashingserver.py — FastAPI REST APIsource_registry.py — Source suggestionsinstaller.py — Cross-platform interactive installerpyproject.toml, .env.example, README.mdMinimal MCP server with one example hello tool. User fills in the rest.
Smallest possible starting point for custom MCP servers.
Generated files (Python):
mcp_server.py — FastMCP server with one example toolpyproject.toml, README.mdBefore running the CLI, check if uv is installed:
which uv || command -v uv
If uv is not found, install it first:
curl -LsSf https://astral.sh/uv/install.sh | sh
Then source the shell profile (or restart the shell) so uvx is on PATH.
Then run the CLI:
curl -fsSL -o /tmp/cairn.whl \
https://github.com/Percona-Lab/CAIRN/releases/latest/download/cairn_mcp-0.2.0-py3-none-any.whl
uvx --from /tmp/cairn.whl cairn init
The CLI prompts for:
If the CLI isn't available, help the user create the project manually. Use the CAIRN repo templates as reference for the exact file contents.
Tell the user their next steps:
cd <project-dir> and review the generated codeconnector.py / connector.jssource_registry.py keywords and _build_page_url() URL pattern@mcp.tool() functionsgit init && git add -A && git commit -m "Initial scaffold from CAIRN"Creates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.
npx claudepluginhub percona-lab/claude-plugins --plugin cairn