Start here
Welcome to metahub
The registry is a catalog of small, focused capabilities you can drop into the AI tools you already use (Claude Code, Cursor, Antigravity, and other clients that support the underlying formats). Each capability is called an artifact. Artifacts come in four flavors (skills, MCP servers, agents, and plugins), and the registry handles all of them under one roof.
You don't need an account to browse. You don't need an account to install public artifacts. Sign in only if you want personalized installs, the ability to leave reviews, or to publish your own.
Browse openly
No paywall, no signup. Every public artifact is searchable, previewable, and installable.
Verified at the SHA
Listings are pinned to a specific git commit so what you install is exactly what was tested.
Real ratings
Star ratings come from people who actually installed it. No SEO spam, no shadowbanning.
Concepts
What's an artifact?
An artifact is a small, self-contained package that gives an AI tool a new ability. Think of it like a browser extension, but for the AI in your editor or terminal.
For example:
- A skill called
pdfteaches your AI client how to read and summarize PDF files. - An MCP server called
filesystemlets your client read and write files within a sandboxed directory. - An agent called
code-reviewercan be invoked from your Node app to leave inline PR comments. - A plugin bundles several skills + an MCP server into a single install: for example, a complete
frontend-devkit.
Note
Artifacts ship as source code from public GitHub repositories. No mystery binaries: the registry shows the repo URL and the exact commit your install will use.
The catalog
The four kinds
Pick the right kind for what you're trying to do. The kind determines where the files land on your machine and how Claude invokes them.
- skillintent-triggered
- A markdown file with a frontmatter trigger. Claude reads it when the conversation matches the description. Best for narrow, well-scoped tasks: "summarize a PDF," "convert image to webp," "explain SQL plan."
- mcptool server
- A long-lived process exposing tools over the Model Context Protocol. Claude can call those tools any time. Best for external system access: filesystem, GitHub API, database, browser automation.
- agentNode import
- A reusable TypeScript agent you import into your own code. Best for headless automation: code review, ticket triage, scheduled batch jobs.
- pluginbundle
- A grouping of skills + an MCP server + a settings file, installed as one unit. Best for cohesive toolkits like "Python data work" or "frontend development."
Recommended
Install metahub in your AI client
The fastest way to use metahub is to plug its MCP server into the AI tool you already have open. Once installed, you can ask your AI things like “find me a skill for parsing PDFs” or “what metahub artifacts do I have installed?”, no terminal step.
Pick your client and copy the snippet:
curl -fsSL https://metahub.ai/install.sh | shOne shot either way: wires the MCP server into every MCP-capable client detected on your machine (Claude Code, Cursor, Codex CLI, Gemini CLI, Antigravity, opencode, and more) and adds a short note to each one's instructions so it looks on metahub first. Idempotent.
Then just ask
Restart your AI client, then prompt: “find me a skill for PDFs”. The AI will call metahub and hand back results. For a full tour of what the server can do, see the MCP page.
Want to script installs, automate from CI, or pin versions in dotfiles? Use the CLI below.
Alternative
Install the mh CLI
Use this for CI, scripts, and reproducible setups. The MCP server is the faster path for interactive use.
mh is a tiny Node CLI that handles install, list, update, and uninstall. It works on macOS, Linux, and Windows (the CLI runs natively; the one-line shell installer needs Git Bash or WSL on Windows). You need Node 20 or newer.
Install with the shell installer (recommended)
curl -fsSL https://metahub.ai/install.sh | sh
mh --versionThe installer downloads a self-contained CLI tarball from registry.metahub.ai/cli/mh-latest.tgz, installs it via your local package manager (npm, pnpm, yarn, or bun, whichever is on PATH), adds mh + metahub-mcp to your shell's PATH, and connects the MCP server to every harness it detects (the same thing mh bootstrap does; it prints exactly what it wired, and mh bootstrap --uninstall reverses it). Bootstrap also adds a short MetaHub note to each harness's global instructions (~/.claude/CLAUDE.md, ~/.codex/AGENTS.md, ~/.gemini/GEMINI.md, a Cursor rule) so the agent looks here before writing one-off scripts; METAHUB_NO_INSTRUCTIONS=1 or mh bootstrap --no-instructions skips that. The archive comes directly from the matching metahub-cli GitHub release, so the shell and npm installs stay on the same released version.
Common knobs:
# Skip the PATH edit
METAHUB_NO_PATH=1 curl -fsSL https://metahub.ai/install.sh | sh
# Don't touch my editor configs (run `mh bootstrap` yourself later)
METAHUB_NO_BOOTSTRAP=1 curl -fsSL https://metahub.ai/install.sh | sh
# Preview what it would do
METAHUB_DRY_RUN=1 curl -fsSL https://metahub.ai/install.sh | sh
# Pin a specific tarball
METAHUB_CLI_TARBALL=https://registry.metahub.ai/cli/metahub-ai-mh-0.1.0.tgz \
curl -fsSL https://metahub.ai/install.sh | shInstall with npm / pnpm / bun
npm install -g @metahub-ai/mh
# Or:
pnpm add -g @metahub-ai/mh
bun add -g @metahub-ai/mhnpm installations do not run editor setup automatically. Run mh bootstraponce after installing to connect the MetaHub MCP server to detected editors.
Or skip the install: npx
npx @metahub-ai/mh bootstrapRuns the same bootstrap without installing anything globally. Harnesses are wired to launch the MCP server through npx, so the entry keeps working after npm clears its cache; install globally when you want the server to start instantly.
Sign in (optional)
mh loginThe CLI starts a GitHub Device Flow and waits for you to enter the displayed code in your browser. Your token lives at ~/.metahub/config.json.
You can skip signing in and still install any public artifact. The benefit of signing in is:
- Leave reviews that carry the green Verified badge
- Publish and manage your own artifacts from the developer portal
Step 2
Find an artifact
Three ways to find what you need:
- Browse the registry at /browse, then filter by kind, tag, freshness, or popularity.
- Search by keyword:bash
mh search pdf mh search "image conversion" mh search --kind=mcp database - Inspect details before installing:bash
mh show skills/keynote-deckPrints the artifact's description, version, repo URL, published SHA, tags, and recent star rating.
Looking for a specific feature?
The registry homepage surfaces what's trending. New here? Start with popular skills or MCP servers.
Step 3
Install an artifact
One command:
mh install skills/keynote-deck
# or
mh install mcps/filesystem
mh install agents/code-reviewer
mh install plugins/frontend-devThe kind prefix is optional when the slug is unique across kinds: mh install pdf resolves it for you. If the same slug exists as two kinds, the CLI lists both qualified forms instead of guessing.
The CLI will:
- Fetch the published SHA from the registry
- Download the source from GitHub
- Place files at the conventional path for that kind
- Wire any required hooks (MCP settings, plugin manifest)
- Mint a per-install API key and store it at
~/.metahub/installs.json
Where things land
- skill
- Files copied to your AI tool's skills directory (e.g.
~/.claude/skills/<slug>/for Claude Code). Any tool that supports the SKILL.md convention picks them up automatically on next launch. - mcp
- An entry added to your client's MCP config under
mcpServers; paths vary (e.g.~/.claude/settings.json,~/.cursor/mcp.json, etc.). Restart your client to activate. - agent
- Cloned to
~/.metahub/agents/<slug>/. You import it into your Node project; the CLI prints the exact import statement. - plugin
- Unpacked to your AI tool's plugin directory (e.g.
~/.claude/plugins/<slug>/). Its bundled skills + MCP server are wired in one step.
Verifying
List everything currently installed:
mh listShows every install grouped by kind: slug, installed version, the pinned commit SHA, and where the files live on disk.
Step 4
Use what you installed
Once installed, artifacts are invoked by the host AI tool; you don't usually call them by hand.
- skills
- Just ask your AI tool something that matches the skill's description. If you installed
skills/keynote-deck, say "turn these notes into a slide deck" and the host (Claude Code, Codex, Cursor, Gemini CLI, etc.) picks it up automatically. - MCP servers
- Tools are available as soon as your client restarts. Claude will offer them when a tool call is appropriate; no special trigger phrase needed.
- agents
- Import into your Node code and call the agent's exported function. The artifact's README has the exact snippet.
- plugins
- Work like the sum of their parts: skills behave like skills, the MCP behaves like an MCP, all from one install.
Maintenance
Updates & versions
Each install is pinned to the SHA that was published. You won't wake up to a broken artifact because the author force-pushed; updates are explicit.
mh update skills/keynote-deck # update one artifact
mh update --all # update everything
mh outdated # show what has newer versions availableTo remove an artifact:
mh uninstall skills/keynote-deckThe CLI removes the files, scrubs any client config entries it wired, and drops the install (with its ingest key) from the local ledger.
Community
Reviews & ratings
Every artifact has a 1–5 star rating and a review feed. Open the artifact's detail page and scroll down, or click Write a review to leave one of your own.
Anonymous or verified: your call
Reviews work without a signup. Pick the path that fits:
- Guest
- Type a name + body and hit submit. The review posts immediately with an unverified label. Rate-limited per IP to discourage spam.
- Verified GitHub
- Click Sign in with GitHub in the review form. We pull your handle + avatar, and the review shows a green Verified badge. Your identity is the OAuth-attested one; you can't impersonate someone else's handle.
Sign-in is optional
We don't gate reviews behind "you must have installed first"; that would punish people who installed before the catalog existed. We do show a Verified badge on signed-in reviews so you can weight them differently.
Reviews flow back to the developer's dashboard within seconds. Publishers can post a single public response to a review; they can't edit, reorder, or remove reviews. Removal happens only through metahub moderation on neutral grounds — see the review policy.
Important
Privacy & telemetry
When an artifact is invoked, the bundled SDK reports a small amount of usage data back to the developer who published it. You can audit exactly what's collected and turn it off any time.
What's collected
- Which slug + version was invoked
- Invocation duration in milliseconds
- Which model handled the invocation (e.g. claude-opus-4-7)
- Which tools fired alongside (Read, Bash, ...)
- Which other artifact (if any) was handed off to
- An opaque
installIdso the developer can count unique installs
What's never collected
- The text of your prompts
- Tool inputs or outputs
- File paths, filenames, or file contents
- Environment variables
- Your GitHub identity (unless you signed in to review)
Audit it yourself
You don't have to take our word for it. For any installed artifact, mh trace <kind>/<slug> --dry-run prints the exact span JSON the telemetry path would send — with the auth header redacted — without sending anything.
Opting out
Two levels of opt-out, both local-only:
mh config set telemetry off # disable ingest entirely
mh config set telemetry no-handoff # keep invocations, drop the handoff graphEffective immediately: with telemetry off, no payload leaves your machine. Check the current setting any time with mh config get telemetry.
Stuck?
Troubleshooting
- skill not loading
- Restart your AI tool: skills are read at launch, not hot-reloaded. Confirm the file exists at the tool's skills directory (e.g.
~/.claude/skills/<slug>/SKILL.mdfor Claude Code). - MCP not connecting
- Run
mh doctor mcps/<slug>: it checks the install on disk — which file the client launches, whether the client config entry and sidecar credentials are intact — and prints a pass/fail tally. Then restart your client; MCP configs are read at launch. - install fails with 404
- The artifact may have been unpublished or renamed. Run
mh search <slug>to confirm it's still in the registry and check the exact kind + slug on its detail page, then retry the install. - permission denied on global install
- Either use a node version manager (asdf, fnm, nvm), or install with a user prefix:
npm config set prefix ~/.npm-global && export PATH=$PATH:~/.npm-global/bin.
Still stuck?
Open an issue against the artifact's source repo (link is on the detail page) or, if it's a CLI bug, hit the Feedback button in the corner of any page and describe what broke. It reaches us with the page attached.
Quick answers
FAQ
Is it free?
Browsing the registry, installing public artifacts, leaving reviews: all free. Developers pay nothing to publish either. Paid artifacts and managed-key features are coming later.
Can I install unlisted artifacts?
Yes. An unlisted artifact doesn't appear in browse or search, but anyone with its slug (say, from a shared link) can install it with the same mh install flow. Private artifacts are different: they're visible only to their publisher in the portal and can't be installed until the publisher changes their visibility.
Does the CLI need network access?
Only at install, update, and uninstall time. Once installed, artifacts run entirely locally. Telemetry batches send every 30 seconds when telemetry is on, but they fail silently if you don't have network, so they don't block invocations.
How do I publish my own?
Head to the developer docs, or just open the portal and paste a GitHub URL. The portal walks you through the checks and publish flow.
Building artifacts?
Developer docs live on the portal.
Publishing, manifest format, observability dashboards, reviews moderation, and personal access tokens are all documented in the developer portal: sign in once with GitHub and you're in.