curl -X POST https://api.mcprank.com/v1/search \
-H "X-API-Key: your-api-key" \
-H "Content-Type: application/json" \
-d '{
"query": "send emails and manage calendar",
"limit": 5
}'
from mcp_rank import MCPRank
client = MCPRank(api_key="your-api-key")
results = await client.search("send emails and manage calendar", limit=5)
for server in results["servers"]:
print(f"{server['name']}: {server['description']}")
const response = await fetch("https://api.mcprank.com/v1/search", {
method: "POST",
headers: {
"X-API-Key": "your-api-key",
"Content-Type": "application/json",
},
body: JSON.stringify({
query: "send emails and manage calendar",
limit: 5,
}),
});
const data = await response.json();
{
"servers": [
{
"id": "google-workspace",
"name": "Google Workspace",
"description": "Access Gmail, Calendar, Drive, and other Google services",
"remote_url": "https://mcp.google.com/workspace",
"tools": [
{
"name": "send_email",
"description": "Send an email via Gmail",
"input_schema": {
"type": "object",
"properties": {
"to": { "type": "string" },
"subject": { "type": "string" },
"body": { "type": "string" }
},
"required": ["to", "subject", "body"]
}
},
{
"name": "create_calendar_event",
"description": "Create a new calendar event",
"input_schema": {
"type": "object",
"properties": {
"title": { "type": "string" },
"start_time": { "type": "string" },
"end_time": { "type": "string" }
},
"required": ["title", "start_time"]
}
}
],
"scores": {
"semantic": 0.92,
"popularity": 0.85
},
"final_score": 0.89
}
],
"metadata": {
"latency_ms": 45,
"cache_hit": false,
"total_candidates": 492,
"query_log_id": "550e8400-e29b-41d4-a716-446655440000"
}
}
Search
Search Servers
Search for MCP servers matching a query
POST
/
v1
/
search
curl -X POST https://api.mcprank.com/v1/search \
-H "X-API-Key: your-api-key" \
-H "Content-Type: application/json" \
-d '{
"query": "send emails and manage calendar",
"limit": 5
}'
from mcp_rank import MCPRank
client = MCPRank(api_key="your-api-key")
results = await client.search("send emails and manage calendar", limit=5)
for server in results["servers"]:
print(f"{server['name']}: {server['description']}")
const response = await fetch("https://api.mcprank.com/v1/search", {
method: "POST",
headers: {
"X-API-Key": "your-api-key",
"Content-Type": "application/json",
},
body: JSON.stringify({
query: "send emails and manage calendar",
limit: 5,
}),
});
const data = await response.json();
{
"servers": [
{
"id": "google-workspace",
"name": "Google Workspace",
"description": "Access Gmail, Calendar, Drive, and other Google services",
"remote_url": "https://mcp.google.com/workspace",
"tools": [
{
"name": "send_email",
"description": "Send an email via Gmail",
"input_schema": {
"type": "object",
"properties": {
"to": { "type": "string" },
"subject": { "type": "string" },
"body": { "type": "string" }
},
"required": ["to", "subject", "body"]
}
},
{
"name": "create_calendar_event",
"description": "Create a new calendar event",
"input_schema": {
"type": "object",
"properties": {
"title": { "type": "string" },
"start_time": { "type": "string" },
"end_time": { "type": "string" }
},
"required": ["title", "start_time"]
}
}
],
"scores": {
"semantic": 0.92,
"popularity": 0.85
},
"final_score": 0.89
}
],
"metadata": {
"latency_ms": 45,
"cache_hit": false,
"total_candidates": 492,
"query_log_id": "550e8400-e29b-41d4-a716-446655440000"
}
}
Overview
The search endpoint performs semantic search over 490+ MCP servers to find the most relevant tools for your query. Results are ranked using a combination of semantic similarity and popularity metrics.Request
The search query text. Minimum 1 character, maximum 1000 characters.
Number of results to return. Minimum 1, maximum 50.
Headers
Your MCP Rank API key
Response
Array of matching servers, ranked by relevance
Show Server object
Show Server object
Unique server identifier
Server name
Server description
URL for connecting to the server via MCP
Combined ranking score
curl -X POST https://api.mcprank.com/v1/search \
-H "X-API-Key: your-api-key" \
-H "Content-Type: application/json" \
-d '{
"query": "send emails and manage calendar",
"limit": 5
}'
from mcp_rank import MCPRank
client = MCPRank(api_key="your-api-key")
results = await client.search("send emails and manage calendar", limit=5)
for server in results["servers"]:
print(f"{server['name']}: {server['description']}")
const response = await fetch("https://api.mcprank.com/v1/search", {
method: "POST",
headers: {
"X-API-Key": "your-api-key",
"Content-Type": "application/json",
},
body: JSON.stringify({
query: "send emails and manage calendar",
limit: 5,
}),
});
const data = await response.json();
{
"servers": [
{
"id": "google-workspace",
"name": "Google Workspace",
"description": "Access Gmail, Calendar, Drive, and other Google services",
"remote_url": "https://mcp.google.com/workspace",
"tools": [
{
"name": "send_email",
"description": "Send an email via Gmail",
"input_schema": {
"type": "object",
"properties": {
"to": { "type": "string" },
"subject": { "type": "string" },
"body": { "type": "string" }
},
"required": ["to", "subject", "body"]
}
},
{
"name": "create_calendar_event",
"description": "Create a new calendar event",
"input_schema": {
"type": "object",
"properties": {
"title": { "type": "string" },
"start_time": { "type": "string" },
"end_time": { "type": "string" }
},
"required": ["title", "start_time"]
}
}
],
"scores": {
"semantic": 0.92,
"popularity": 0.85
},
"final_score": 0.89
}
],
"metadata": {
"latency_ms": 45,
"cache_hit": false,
"total_candidates": 492,
"query_log_id": "550e8400-e29b-41d4-a716-446655440000"
}
}
Error Responses
| Status Code | Description |
|---|---|
| 400 | Invalid request (e.g., query too long) |
| 401 | Missing or invalid API key |
| 429 | Rate limit exceeded |
| 500 | Internal server error |
⌘I