Skip to main content
Developer Portal
Agent-ready API
Agent-Ready API

Developer Portal

Integrate with the SkillsMP API to discover 2M+ Agent Skills programmatically. Build agent-ready applications with our REST API, MCP server, and OpenAPI specification.

REST API Quickstart

REST API Quickstart

1

Get an API Key

Sign in and generate your API key from the dashboard. Anonymous access is also available with lower rate limits.

2

Make your first request

Search skills using the REST API. Replace YOUR_API_KEY with your actual key, or omit the header for anonymous access.

bash
curl -X GET "https://skillsmp.com/api/v1/skills/search?q=SEO&language=zh" \
  -H "Authorization: Bearer YOUR_API_KEY"
javascript
const response = await fetch(
  'https://skillsmp.com/api/v1/skills/search?q=SEO&language=zh',
  {
    headers: {
      'Authorization': 'Bearer YOUR_API_KEY'
    }
  }
);
const data = await response.json();
console.log(data.data.skills);
python
import requests

response = requests.get(
    'https://skillsmp.com/api/v1/skills/search',
    params={'q': 'SEO', 'language': 'zh'},
    headers={'Authorization': 'Bearer YOUR_API_KEY'}
)

data = response.json()
print(data['data']['skills'])
3

Explore the API

Read the full API documentation for detailed endpoint references, error codes, and rate limiting information.

Read API Documentation
MCP Server

MCP Server

SkillsMP exposes a Model Context Protocol (MCP) server, allowing MCP-capable coding agents to search and discover skills natively. Use Streamable HTTP transport for direct tool discovery.

agent-setup / prompt.md

Connect SkillsMP to your agent

Copy one short prompt. Your agent will fetch the official instructions, add the read-only SkillsMP MCP server, verify its tools, and report whether a restart is needed.

Read-only MCPNo account requiredNo automatic Skill installs
Fetch and execute the appropriate instructions to connect this agent to SkillsMP from [https://skillsmp.com/agent-setup/prompt.md?source=developers_mcp](https://skillsmp.com/agent-setup/prompt.md?source=developers_mcp)Open setup instructions

Server Endpoint

POST https://skillsmp.com/mcp

This is a machine endpoint. Opening it in a browser sends GET and returns 405 by design.

Discovery

GET https://skillsmp.com/.well-known/mcp/server-card.json

MCP access & limits

The public MCP server is read-only and does not require a SkillsMP API key. REST API keys do not increase MCP limits.

MCP POST traffic
50 requests per 10 seconds per client IP
Valid tool calls
30 tools/call requests per 60 seconds per client IP

There is no daily MCP quota. Every POST consumes ingress capacity; a valid tools/call request also consumes one tool-call unit. Requests such as initialize and tools/list count only toward the POST limit. On HTTP 429, honor Retry-After before retrying.

Available Tools

search_skills

Search skills by keyword, occupation, or content language

get_skill

Get detailed information about a specific skill

list_categories

Browse all skill categories and domains

API Sandbox

API Sandbox

Test the REST search API directly in your browser. No API key is required (anonymous configured limit: 50 requests/day).

REST API Agent Authentication

REST API Agent Authentication

Step-by-step guide for AI agents (Claude, ChatGPT, autonomous pipelines, bots) using the SkillsMP REST API. No OAuth or user interaction is required at runtime after a human owner provisions the long-lived API key. MCP uses a separate no-key access policy.

1

Provision an API key (one-time, human-in-the-loop)

The owning human signs in at /auth/login (Google or GitHub), opens the Developer Portal dashboard, and generates an API key. Store the key in the agent's secret manager (env var, vault, KMS).

2

Send the key on every request

Add the Authorization header. Treat the key as a bearer token — do not put it in the URL, query string, or client-side code.

http
Authorization: Bearer sk_live_your_api_key
3

Handle REST rate limits gracefully

REST responses admitted to the search handler include daily and minute remaining headers. A minute-level 429 includes Retry-After; a daily 429 resets at 00:00 UTC. Anonymous: 50/day · 10/min. Authenticated: 500/day · 30/min.

python
# Python: retry only the minute-level limit
r = requests.get(url, headers={'Authorization': f'Bearer {API_KEY}'})
if r.status_code == 429:
    error_code = r.json().get('error', {}).get('code')
    if error_code == 'RATE_LIMITED':
        time.sleep(int(r.headers.get('Retry-After', '60')))
        r = requests.get(url, headers={'Authorization': f'Bearer {API_KEY}'})
    else:
        raise RuntimeError('Daily REST quota exhausted; retry after 00:00 UTC')
4

Identify your agent (recommended)

Set a descriptive User-Agent so we can reach you if we detect issues. Example: SkillsMPClient/1.0 (+https://your-agent.example)

5

Prefer MCP for tool-calling agents

If your agent supports Model Context Protocol, connect to https://skillsmp.com/mcp instead of calling REST directly. MCP is public, read-only, and uses separate per-IP limits; REST API keys do not create a higher MCP tier.

Security: API keys do not expire. Rotate from the Developer Portal if exposed. Anonymous requests (no key) work for keyword search but are heavily rate-limited and not recommended for production agents.

Webhooks

Webhooks

SkillsMP does not currently emit outbound webhooks or provide a catalog-wide change feed. For scoped monitoring, agents can poll a saved keyword search or use the aggregate timeline below.

Poll a saved keyword search

Use a concrete q with sortBy=recent, then compare updatedAt in that result set. Wildcard searches are not supported.

http
GET /api/v1/skills/search?q=playwright&sortBy=recent&limit=50

Poll via MCP

MCP-enabled agents can call search_skills with a concrete query on a timer — no outbound HTTPS endpoint required on your side.

Timeline feed

For aggregate growth/update trends, use the public timeline feed:

http
GET /api/timeline?granularity=daily&limit=30

Roadmap: Outbound webhooks for new-skill and update events are planned. If you have a concrete use case, open an issue on GitHub or reach us via the About page so we can prioritize.

REST Search API

REST search access & limits

These configured limits apply only to GET /api/v1/skills/search. They do not apply to POST /mcp.

Anonymous REST

  • Daily limit: 50 requests
  • Burst limit: 10 requests/minute
  • No API key required
  • Counted per client IP

REST with API key

  • Daily limit: 500 requests
  • Burst limit: 30 requests/minute
  • API key required in Authorization header
  • Counted per authenticated user

Daily counters reset at 00:00 UTC. Responses admitted to the REST search handler include X-RateLimit-Daily-* and X-RateLimit-Minute-* headers. A minute-level RATE_LIMITED response includes Retry-After; a DAILY_QUOTA_EXCEEDED response exposes the exhausted daily window.