Your agent's recommendations are only as good as its data. Don't let it guess from stale training data — give it the live index.
Query the AgentRank index programmatically. Free endpoints are unauthenticated and CORS-enabled. Pro endpoints require an API key for higher rate limits and additional features.
Base URL: https://agentrank-ai.com
Use AgentRank from your AI agent
The AgentRank MCP server gives Claude and other AI agents direct access to the live ranked index. No API key needed.
Install
claude mcp add agentrank -- npx -y agentrank-mcp-server
Or run directly
npx agentrank-mcp-server
The MCP server wraps the same endpoints documented below. Once installed, your agent can search, lookup, and get rankings without writing any API calls.
IDE & Editor Configs
Drop a config file into your project and your AI coding assistant will automatically query AgentRank for live tool recommendations instead of relying on stale training data.
Copy to your project root or ~/.cursorrules for global use.
curl -o .cursorrules https://raw.githubusercontent.com/superlowburn/agentrank/main/skill/agentrank/cursor/.cursorrules
Preview
Instructs Cursor to query agentrank-ai.com/api/v1/search whenever you ask for tool or MCP server recommendations. Includes trigger conditions and result formatting guidance.
Copy to .github/copilot-instructions.md in your repo root. Copilot reads this automatically.
mkdir -p .github && curl -o .github/copilot-instructions.md https://raw.githubusercontent.com/superlowburn/agentrank/main/skill/agentrank/vscode/copilot-instructions.md
Preview
Instructs GitHub Copilot to query the AgentRank API for live tool data when recommending MCP servers, agent tools, or AI skills.
Copy to your project root or ~/.clinerules for global use.
curl -o .clinerules https://raw.githubusercontent.com/superlowburn/agentrank/main/skill/agentrank/cline/.clinerules
Preview
Instructs Cline to call the AgentRank API (via curl or browser_action) for tool recommendations. Covers trigger conditions, query format, and result presentation.
All configs are in the agentrank GitHub repo. Copy, fork, or adapt them for your setup.
Pro API
Pro endpoints unlock higher rate limits, rank history, batch lookups, and richer signal data. All Pro endpoints require a valid API key.
Getting an API Key
API keys are available on the Pro and Enterprise plans. See pricing for tier details and sign-up. Keys come in three tiers:
| Tier | Daily Limit | Batch | Rank History |
|---|---|---|---|
free | 100 req/day | No | No |
pro | 10,000 req/day | Yes | Yes |
enterprise | Unlimited | Yes | Yes |
Authentication
Pass your key in the Authorization header:
Authorization: Bearer ark_pro_a1b2c3d4e5f6...
Rate Limit Headers
All authenticated responses include rate limit headers (omitted for enterprise):
X-RateLimit-Limit: 10000 X-RateLimit-Remaining: 9987 X-RateLimit-Reset: 2026-03-17T23:59:59.999Z X-API-Key-Tier: pro
Rate limits are per-key daily (midnight UTC reset). Free tier keys return 429 when exceeded.
V1 Endpoints
Full-featured endpoints with rate limiting (100 req/min per IP), rich signal data, and pagination.
GET /api/v1/search
Search tools, skills, and agents. Supports filtering by category, sorting, and pagination.
Parameters
| Param | Type | Required | Description |
|---|---|---|---|
q | string | No | Search query. Omit for full index. |
category | string | No | tool, skill, or agent. Omit for all. |
sort | string | No | score (default), rank, stars, freshness |
limit | number | No | 1–100, default 20 |
offset | number | No | Pagination offset, default 0 |
Example
curl "https://agentrank-ai.com/api/v1/search?q=playwright&category=tool&limit=3"
Response
{
"query": "playwright",
"category": "tool",
"sort": "score",
"results": [
{
"type": "tool",
"id": "microsoft--playwright-mcp",
"name": "microsoft/playwright-mcp",
"description": "Playwright Tools for MCP",
"score": 78.1,
"rank": 34,
"url": "https://agentrank-ai.com/tool/microsoft--playwright-mcp/",
"raw": {
"stars": 4200,
"lastCommitAt": "2026-03-10T00:00:00.000Z",
"language": "TypeScript",
"license": "Apache-2.0"
}
}
],
"meta": { "total": 1, "limit": 3, "offset": 0 }
} Cache: 1min CDN / 30s browser • Rate limit: 100 req/min
GET /api/v1/tool/{id}
Detailed signal breakdown for a single tool or skill. Use owner--repo format for GitHub tools (replace / with --).
Examples
curl "https://agentrank-ai.com/api/v1/tool/microsoft--playwright-mcp" curl "https://agentrank-ai.com/api/v1/tool/glama-playwright-mcp-server" # skill by slug
Response
{
"type": "tool",
"id": "microsoft--playwright-mcp",
"name": "microsoft/playwright-mcp",
"description": "Playwright Tools for MCP",
"score": 78.1,
"rank": 34,
"githubUrl": "https://github.com/microsoft/playwright-mcp",
"signals": {
"stars": 0.862,
"freshness": 0.943,
"issueHealth": 0.712,
"contributors": 0.634,
"dependents": 0.218,
"descriptionQuality": 0.7,
"licenseHealth": 1.0
},
"weights": {
"stars": 0.12, "freshness": 0.23, "issueHealth": 0.24,
"contributors": 0.09, "dependents": 0.24,
"descriptionQuality": 0.05, "licenseHealth": 0.03
},
"raw": {
"stars": 4200, "forks": 312, "contributors": 28,
"openIssues": 14, "closedIssues": 89, "dependents": 7,
"lastCommitAt": "2026-03-10T00:00:00.000Z",
"language": "TypeScript", "license": "Apache-2.0",
"isArchived": false, "topics": ["mcp", "playwright", "browser-automation"]
}
} Cache: 5min CDN / 1min browser • Rate limit: 100 req/min
GET /api/v1/movers
Tools and skills with the largest rank changes over a given period. Good for "biggest movers" content.
Parameters
| Param | Type | Required | Description |
|---|---|---|---|
days | number | No | Lookback window in days (1–30, default 7) |
limit | number | No | 1–50, default 10 |
type | string | No | tool (default), skill, or omit for both |
Example
curl "https://agentrank-ai.com/api/v1/movers?days=7&limit=5&type=tool"
Response
{
"movers": [
{
"full_name": "microsoft/playwright-mcp",
"tool_type": "tool",
"current_rank": 34,
"prev_rank": 51,
"rank_delta": 17,
"current_score": 78.1,
"stars": 4200,
"url": "https://agentrank-ai.com/tool/microsoft--playwright-mcp/"
}
],
"meta": { "today": "2026-03-16", "prev_date": "2026-03-09", "days": 7, "count": 1 }
} Requires daily snapshots to be populated. Returns empty array if rank history not yet available.
GET /api/v1/new-tools
Tools that entered the index for the first time within the last N days.
Parameters
| Param | Type | Required | Description |
|---|---|---|---|
days | number | No | Lookback window in days (1–30, default 7) |
limit | number | No | 1–100, default 20 |
type | string | No | tool (default), skill, or omit for both |
Example
curl "https://agentrank-ai.com/api/v1/new-tools?days=7&limit=5"
Response
{
"tools": [
{
"full_name": "acme/new-mcp-tool",
"tool_type": "tool",
"rank": 142,
"score": 41.2,
"stars": 89,
"first_seen": "2026-03-14",
"url": "https://agentrank-ai.com/tool/acme--new-mcp-tool/"
}
],
"meta": { "today": "2026-03-16", "cutoff": "2026-03-09", "days": 7, "count": 1 }
} V2 Endpoints — Pro API
Authenticated endpoints with rank history, batch lookups, richer signal data, and no CDN caching. Require a valid API key.
GET /api/v2/search
Same as v1/search with API key auth, rank history hydration, and additional raw fields. Returns your key tier in the response.
Parameters
| Param | Type | Required | Description |
|---|---|---|---|
q | string | No | Search query. Omit for full index. |
category | string | No | tool, skill, or agent. Omit for all. |
sort | string | No | score (default), rank, stars, freshness |
limit | number | No | 1–100, default 20 |
offset | number | No | Pagination offset, default 0 |
history | string | No | Pass 1 to include rankHistory on each tool result (last 30 days) |
Examples
# curl
curl -H "Authorization: Bearer ark_pro_..." \
"https://agentrank-ai.com/api/v2/search?q=playwright&history=1"
# JavaScript
const res = await fetch('https://agentrank-ai.com/api/v2/search?q=playwright&history=1', {
headers: { Authorization: 'Bearer ark_pro_...' }
});
# Python
import httpx
r = httpx.get('https://agentrank-ai.com/api/v2/search',
params={'q': 'playwright', 'history': '1'},
headers={'Authorization': 'Bearer ark_pro_...'}
) Response
{
"query": "playwright",
"category": "all",
"sort": "score",
"results": [
{
"type": "tool",
"id": "microsoft--playwright-mcp",
"name": "microsoft/playwright-mcp",
"description": "Playwright Tools for MCP",
"score": 78.1,
"rank": 34,
"url": "https://agentrank-ai.com/tool/microsoft--playwright-mcp/",
"raw": {
"stars": 4200,
"forks": 312,
"openIssues": 14,
"closedIssues": 89,
"contributors": 28,
"dependents": 7,
"lastCommitAt": "2026-03-10T00:00:00.000Z",
"language": "TypeScript",
"license": "Apache-2.0",
"isArchived": false,
"topics": ["mcp", "playwright"],
"readmeExcerpt": "...",
"glamaWeeklyDownloads": 1200,
"glamaToolCalls": 45000
},
"rankHistory": [
{ "date": "2026-03-17", "rank": 34, "score": 78.1 },
{ "date": "2026-03-16", "rank": 36, "score": 77.8 }
]
}
],
"meta": { "total": 1, "limit": 20, "offset": 0 },
"tier": "pro"
} No CDN cache — always fresh • Rate limit: per-key daily limit (see tier)
GET /api/v2/tool/{id}
Full signal breakdown for a single tool or skill with rank history (last 30 days). Same ID format as v1/tool.
Examples
# curl
curl -H "Authorization: Bearer ark_pro_..." \
"https://agentrank-ai.com/api/v2/tool/microsoft--playwright-mcp"
# JavaScript
const res = await fetch('https://agentrank-ai.com/api/v2/tool/microsoft--playwright-mcp', {
headers: { Authorization: 'Bearer ark_pro_...' }
});
# Python
import httpx
r = httpx.get('https://agentrank-ai.com/api/v2/tool/microsoft--playwright-mcp',
headers={'Authorization': 'Bearer ark_pro_...'}
) Response
{
"type": "tool",
"id": "microsoft--playwright-mcp",
"name": "microsoft/playwright-mcp",
"description": "Playwright Tools for MCP",
"score": 78.1,
"rank": 34,
"githubUrl": "https://github.com/microsoft/playwright-mcp",
"category": "browser-automation",
"signals": {
"stars": 0.862,
"freshness": 0.943,
"issueHealth": 0.712,
"contributors": 0.634,
"dependents": 0.218,
"descriptionQuality": 0.7,
"licenseHealth": 1.0
},
"weights": {
"stars": 0.12, "freshness": 0.23, "issueHealth": 0.24,
"contributors": 0.09, "dependents": 0.24,
"descriptionQuality": 0.05, "licenseHealth": 0.03
},
"raw": {
"stars": 4200, "forks": 312, "contributors": 28,
"openIssues": 14, "closedIssues": 89, "dependents": 7,
"lastCommitAt": "2026-03-10T00:00:00.000Z",
"language": "TypeScript", "license": "Apache-2.0",
"isArchived": false,
"topics": ["mcp", "playwright", "browser-automation"],
"matchedQueries": ["browser", "playwright"],
"readmeExcerpt": "...",
"glamaWeeklyDownloads": 1200,
"glamaToolCalls": 45000
},
"rankHistory": [
{ "date": "2026-03-17", "rank": 34, "score": 78.1 },
{ "date": "2026-03-16", "rank": 36, "score": 77.8 }
]
} No CDN cache — always fresh • Rate limit: per-key daily limit
POST /api/v2/batch
Batch lookup for up to 50 tools or skills in a single request. Pro and Enterprise only — free tier keys receive a 403.
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
ids | string[] | Yes | Array of tool IDs (max 50). Use owner--repo for GitHub tools, slug for skills. |
Examples
# curl
curl -X POST \
-H "Authorization: Bearer ark_pro_..." \
-H "Content-Type: application/json" \
-d '{"ids": ["microsoft--playwright-mcp", "glama-playwright-mcp-server"]}' \
"https://agentrank-ai.com/api/v2/batch"
# JavaScript
const res = await fetch('https://agentrank-ai.com/api/v2/batch', {
method: 'POST',
headers: {
Authorization: 'Bearer ark_pro_...',
'Content-Type': 'application/json'
},
body: JSON.stringify({ ids: ['microsoft--playwright-mcp', 'glama-playwright-mcp-server'] })
});
# Python
import httpx
r = httpx.post('https://agentrank-ai.com/api/v2/batch',
json={'ids': ['microsoft--playwright-mcp', 'glama-playwright-mcp-server']},
headers={'Authorization': 'Bearer ark_pro_...'}
) Response
{
"results": {
"microsoft--playwright-mcp": {
"type": "tool",
"id": "microsoft--playwright-mcp",
"name": "microsoft/playwright-mcp",
"score": 78.1,
"rank": 34,
"githubUrl": "https://github.com/microsoft/playwright-mcp",
"category": "browser-automation",
"raw": { "stars": 4200, ... }
},
"glama-playwright-mcp-server": {
"type": "skill",
"id": "glama-playwright-mcp-server",
"name": "Playwright MCP Server",
"score": 82.4,
"rank": 12,
"githubUrl": null,
"category": null,
"raw": { "stars": null, ... }
},
"nonexistent--tool": null
},
"count": 2,
"requested": 3
} IDs not found return null in results • Max 50 IDs per request • Pro/Enterprise only
Legacy Endpoints
Simpler endpoints without rate limiting. Good for quick lookups and badge embeds.
GET /api/search
Search the index by keyword. Returns both tools and skills.
Parameters
| Param | Type | Required | Description |
|---|---|---|---|
q | string | Yes | Search query |
type | string | No | tool or skill. Omit to search both. |
limit | number | No | 1–50, default 10 |
Example
curl "https://agentrank-ai.com/api/search?q=playwright&limit=3"
Response
{
"query": "playwright",
"results": [
{
"type": "skill",
"slug": "glama:playwright-mcp-server",
"name": "Playwright MCP Server",
"description": "Browser automation and testing via Playwright",
"score": 82.4,
"rank": 12,
"url": "https://agentrank-ai.com/skill/glama-playwright-mcp-server/"
}
]
} Cache: 5min CDN / 1min browser
GET /api/lookup
Look up a specific entry by its GitHub URL.
Parameters
| Param | Type | Required | Description |
|---|---|---|---|
url | string | Yes | GitHub repository URL |
Example
curl "https://agentrank-ai.com/api/lookup?url=https://github.com/microsoft/playwright-mcp"
Response (found)
{
"found": true,
"type": "skill",
"slug": "glama:playwright-mcp-server",
"name": "Playwright MCP Server",
"score": 82.4,
"rank": 12
} Response (not found)
{ "found": false } GET /api/badge/skill/{slug} /api/badge/tool/{slug}
SVG badge showing the AgentRank score. Embed in READMEs, docs, or websites.
Preview
Markdown
[](https://agentrank-ai.com/skill/YOUR-SLUG/)
HTML
<a href="https://agentrank-ai.com/skill/YOUR-SLUG/"> <img src="https://agentrank-ai.com/api/badge/skill/YOUR-SLUG" alt="AgentRank"> </a>
Cache: 24h CDN / 1h browser
Usage Notes
- Free endpoints require no authentication. V2 endpoints require an API key.
- All JSON endpoints return
Access-Control-Allow-Origin: *for browser use. - V1 endpoints enforce a rate limit of 100 requests per minute per IP.
- V2 endpoints use per-key daily limits: 100/day (free), 10,000/day (pro), unlimited (enterprise).
- V2 responses are never CDN-cached — always reflect live data.
- Data updates daily. Scores reflect the latest crawl.
- Tool IDs use
owner--repoformat (replace/with--). - Badge SVGs are CDN-cached — safe to embed anywhere.