API

Build on the whole library.

🔓 A read-only REST API over every skill — no key, open CORS. Call it from a browser, an n8n / Make / Lovable flow, or your own agent. Try any endpoint live below.

The same public JSON that powers this playground, served from the edge. Search skills, pull any one's full instructions (use it as your model's system prompt), and browse workflow recipes. Running a skill against a model is a separate, key-gated step — do it yourself with your own key, or use the throttled /try convenience endpoint.

Base URL https://pm-skills-mcp.pm-claude-skills.workers.dev OpenAPI spec ↗

Endpoints — try them live

GET/v1/searchkeyword search, ranked

Describe the task in plain words; get the best-matching skills back.

GET/v1/skillslist & filter

All skills, or filter with ?bundle=, ?q=, ?limit=.

GET/v1/skills/{name}one skill + full instructions

The full skill, including instructions — that's the system prompt you feed your model. Add ?format=md for raw markdown.

GET/v1/workflowsskill-chain recipes

Multi-step recipes that chain skills into a bigger job.

Run it yourself — bring your own key

The production path: pull a skill's instructions and use it as your model's system prompt. Provider-neutral — the same field works for Claude, OpenAI, Gemini, or a local model.

const skill = await (await fetch(
  'BASE/v1/skills/executive-update'
)).json();

const res = await fetch('https://api.anthropic.com/v1/messages', {
  method: 'POST',
  headers: { 'content-type': 'application/json', 'x-api-key': KEY, 'anthropic-version': '2023-06-01' },
  body: JSON.stringify({
    model: 'claude-sonnet-4-6',
    max_tokens: 2000,
    system: skill.instructions,          // ← the skill IS the system prompt
    messages: [{ role: 'user', content: 'This week: shipped X, churn up 2pts…' }],
  }),
});