Library data
The library lists agent skills, MCP servers, repos and prompts with their security-scan results. All of it is readable as JSON or markdown without a key. These endpoints return catalog data only, never visitor comments or votes.
Endpoints
| endpoint | returns |
|---|---|
GET /api/v1/library/search | Items that passed the scan, matching q, filtered by category and kind. limit 1 to 25, default 10. |
GET /api/v1/library/items/<slug> | One item with alternatives, categories, a markdown link and a paste prompt. |
GET /skills/<slug>.json | The same as the item endpoint. Also /mcp/<slug>.json, /repos/<slug>.json, /prompts/<slug>.json. |
GET /skills/<slug>.md | The item page as markdown, with install steps and scan details. |
GET /api/download/<slug>?via=agent | The SKILL.md text when the item passed and its license allows it, else a redirect to the source. |
GET /api/v1/catalog | The curated catalog the coach recommends from, with each item's vetting status and basis. |
GET /api/v1/taxonomy | Job types, stages, capability gaps and example north-star metrics. |
GET /research/agent-skill-security.json | Aggregate scan statistics. |
GET /library.md, GET /category/<slug>.md, GET /packs/<slug>.md | Browsable lists as markdown. |
Search
curl -s 'https://upskill.coach/api/v1/library/search?q=cold%20email&kind=skill&limit=3'Response: count, items (the item fields below), library and a note. kind is one of skill, mcp, repo, prompt. Category slugs are listed at https://upskill.coach/library.md.
One item
curl -s 'https://upskill.coach/api/v1/library/items/agent-email-inbox'On top of the search fields, the item endpoint adds recommended, caution, categories, stars, skills_sh_installs, last_commit, house_item, alternatives, markdown, paste_prompt and note. Unknown slugs return 404 problem+json.
Item fields, with a live example
This is agent-email-inbox as the API returns it today:
{
"slug": "agent-email-inbox",
"kind": "skill",
"name": "Agent email inbox (Cooper Email)",
"summary": "Gives the agent its own email address in one no-auth API call (Cooper Email): sign up for services, wait for login and verification codes, send and reply, with key-safety, approval-mode and no-spam rules.",
"helps_with": {
"job_types": [
"venture-operator",
"owners-operator",
"content-producer",
"any"
],
"capability_gaps": [
"auth-identity",
"distribution"
]
},
"install": "Save as skills/agent-email-inbox/SKILL.md. Onboarding returns an API key once: store it in your secrets store as COOPER_API_KEY.",
"license": "Avatar 8 LLC house item",
"source_url": "https://upskill.coach/library/agent-email-inbox/SKILL.md",
"vetting": "pass",
"vetting_scope": "item scanned",
"scanned_at": "2026-10-18T00:40:50-04:00",
"scanned_commit": "sha256:5912df9531b8a1fc02bbba22a3bce1e8f6f6b7aac8ee6d5be63dcc22a10940a0",
"manually_reviewed": true,
"page": "https://upskill.coach/skills/agent-email-inbox",
"fetch": "https://upskill.coach/api/download/agent-email-inbox?via=agent"
}| field | meaning |
|---|---|
slug | Stable id. Use it in URLs and in the coach's item reports. |
kind | skill, mcp, repo or prompt. |
helps_with | The job types and capability gaps the item is tagged for; matching uses these. |
install | The install command or steps. Ask your owner before running anything. |
license | As reported by GitHub when the item was fetched. |
vetting, vetting_scope, scanned_at, scanned_commit, manually_reviewed | Scan results. See security scanning. |
page | The HTML page. Add .md for markdown. |
fetch | Direct file download for agents. |
Caching and limits
Search responses are cached for 10 minutes and item responses for an hour, so poll no more than that. Reads are not rate limited, but please stay under 60 requests per minute. Item JSON allows cross-origin requests.
MCP
The same data over MCP: search_library and get_library_item on https://upskill.coach/mcp. See MCP server.