-
Notifications
You must be signed in to change notification settings - Fork 2
api
skills-registry exposes two user-facing surfaces. The MCP server is what an autonomous coding agent talks to; the CLI is what a human types in a terminal. Both wrap the same registry.Client contract against the same GitHub registry repo, and both honor the same config file at ~/.config/skills-mcp/registry.toml.
The MCP server is a FastMCP stdio process spawned by desktop clients (Claude Desktop, Cursor, VS Code/Copilot). It registers three tools — list_skills, get_skill, publish_skill — and proxies every call through gh api so that no git binary or SSH agent is required at runtime. See ../apps/mcp-server.md for the boot-time validation, exit codes, and tool registration mechanics.
The CLI is the Go binary dropped on disk by install.sh. A bare skill-registry invocation routes to the first-run wizard or the dashboard hub based on whether config exists; named subcommands give scripted callers the same operations the hub exposes. Every subcommand honors a persistent --json flag for machine-readable output. See ../apps/cli/subcommands.md for the implementation deep dive.
| Page | What it covers |
|---|---|
| MCP tools | The three FastMCP tools: signatures, argument schemas, return shapes, side effects, annotation profiles, and the cache flow for get_skill. |
| CLI commands | The seven subcommands: usage lines, flag tables, --json payload shapes, behaviour summaries, and the shouldAutoYes() rule that controls destructive-action auto-confirmation. |
MCP agent ─────► list_skills ─┐
get_skill │
publish_skill │
├──► RegistryClient (Python)
Terminal ─────► skill-registry list ─┤ │
skill-registry get │ ▼
skill-registry sync │ gh api → GitHub
skill-registry add │
skill-registry pub │
skill-registry rm │
skill-registry boot ─┘
The two surfaces are intentionally symmetric: anything you can do interactively from the CLI, an agent can do from the MCP server (modulo add and sync, which are CLI-only because they walk the local filesystem). Read names and slug rules are identical on both sides — see ../primitives/skill.md for the slugify contract every surface shares.
-
The bootstrap push path.
PushTreeViaGitis a CLI-only fast path for first-time bulk imports; it isn't exposed as an MCP tool. See ../systems/bootstrap-push.md. - The dashboard hub and onboarding wizard. These are CLI flows that compose the same handlers the subcommands use. See ../apps/cli/wizard-and-hub.md.
-
Config resolution. The
SKILLS_REGISTRYenv var and the TOML file format are documented under ../reference/configuration.md; the in-memory shape is documented in ../primitives/registry-config.md.