MCP-native skill registry · ARD-adjacent

Where agents find skills — and you find what they used.

Author multi-file skills, serve them over one MCP endpoint your agents read at runtime, and measure exactly what got discovered, loaded, and ignored.

works withClaude CodeCursorCopilotLangChain
contextpie — skillsMCP active
798
Loads · 30d
1
Dead skill
12
Discovery gaps
SkillLastLoads
react-component3h412
pdf-extraction12m248
git-commit-style1h96
legacy-deploydead0
find_skills(...) ↳ top score 0.86 get_skill get_skill_file ✓ logged · search → load → file_load

Build → Use → Measure → repeat

01BUILD

Authoring studio

Write multi-file skills with AI-assisted, discoverability-first authoring.

02USE

Hosted MCP server

Agents connect once and discover, load, and fetch skills at runtime.

03MEASURE

Analytics that close the loop

Every call is logged — see what's used, what's dead, and where discovery failed.

The query is the telemetry.

When an agent queries our MCP server to discover and load a skill, usage data lands in our logs as a byproduct of serving the request. No proxies, no wrappers.

searchloadfile_load
Build

Discoverability isn't metadata. It's the whole game.

  • Description + trigger phrases are what get embedded and searched — they decide whether a skill is ever found.
  • Inline quality nudges keep them distinct and well-scoped.
  • Draft with AI gives you a strong first pass to refine, not a black box.
✦ Discoverability
Description ● distinct
Extract clean text and well-formed tables from PDF documents with an OCR fallback.
extract tables from a pdfocr a scanned doc
✦ Discovery gaps
mock api responses for testsno match
write terraform for gcp0.38
convert figma frames to react0.41
Measure

Three truths nobody else can show you.

  • What's used — and what's dead weight you can deprecate.
  • Where agents searched and found nothing good — your to-do list.
  • Which bundled files never get fetched.

Progressive disclosure, by design

find_skills()

Returns lightweight descriptors — name, description, score. No bodies, no files.

get_skill()

Loads the SKILL.md body plus a manifest of supporting files.

get_skill_file()

Fetches a referenced file only when the SKILL.md asks for it.

Ship the loop on your own skills today.