Title99/100
Search benchmarks
The title clearly communicates the tool’s action and subject. Keep it concise.
Description97/100
Get measured agent-integration results for the developer APIs, SDKs and tools the user asks about. Use when the user asks which product to use in a covered category, compares named products (X vs Y), or asks how easy a product is to integrate or onboard onto, for categories such as Browser Automation (tasks: Carry a cookie between two remote browser sessions with a persistent context; Create, inspect, list and terminate a remote browser session through the REST API), Deploy and hosting (tasks: Deploy a live HTTP endpoint; Deploy two versions and roll back), Email (tasks: Create and delete an inbox; Read delivery and bounce events), GTM Data (tasks: Enrich a company's firmographics; Filtered company search), Managed database (tasks: Branch a database, migrate the branch, and leave the parent unchanged; Create a scoped database credential, connect with it, and revoke it), Search (tasks: Make a web search request; Scrape a URL to markdown), Weather API. Returns, per product, whether an AI coding agent completed its first successful integration from the docs (completion rate, passed/failed/blocked runs), average run time, an overall score with its experience and agent readiness scores, and a link to the product's benchmark page, ordered by overall score. When the user names products, pass just those names as the query; pass a category only when the user asks about a whole category, for alternatives or for a ranking.
The description explains the capability, when to use it, and what to expect.
Inputs93/100
Input documentation gives an agent enough context to populate the arguments.
query
The product or need the user named: a product name, its domain, or a description of what they want to integrate. Matched against product names, domains and categories; a description with no direct match is resolved to the closest covered category.
Clear enough to supply this argument.
category
The benchmark category the user is asking about, e.g. 'Weather API'. Narrows the results to that category. The covered categories are named in this server's instructions.
Clear enough to supply this argument.
task
A task to rank by, as its key or title, e.g. 'send-transactional' or 'Send a transactional email'. Combine with a category to order that category's products by their score on the task instead of their overall score.
Clear enough to supply this argument.
limit
How many of the best-ranked matching products to return.
Clear enough to supply this argument.
Annotations100/100
All four behavior hints are declared.
{
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}Output schema81/100
The output schema explains the structured result.
View output schema
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"interactionId"
],
"properties": {
"error": {
"enum": [
"rate_limited",
"unavailable",
"invalid_response",
"incomplete"
],
"type": "string",
"description": "Present only on a rate-limited call (rate_limited) or when the benchmarks service failed (unavailable, invalid_response, incomplete). Absent on success."
},
"products": {
"type": "array",
"items": {
"type": "object",
"required": [
"productKey",
"displayName",
"category",
"completionRate",
"passed",
"failed",
"blocked",
"total",
"averageSuccessfulDurationMs",
"lastTestedAt",
"overallScore",
"experienceScore",
"readinessScore",
"tasks",
"coverage"
],
"properties": {
"tasks": {
"type": "array",
"items": {
"type": "object",
"required": [
"taskKey",
"title",
"status",
"reason",
"score",
"passRate",
"runs"
],
"properties": {
"runs": {
"type": "number"
},
"score": {
"type": [
"number",
"null"
]
},
"title": {
"type": "string"
},
"reason": {
"type": [
"string",
"null"
]
},
"status": {
"enum": [
"scored",
"unsupported"
],
"type": "string"
},
"taskKey": {
"type": "string"
},
"passRate": {
"type": "number"
}
},
"additionalProperties": false
}
},
"total": {
"type": "number"
},
"failed": {
"type": "number"
},
"passed": {
"type": "number"
},
"blocked": {
"type": "number"
},
"category": {
"type": "object",
"required": [
"slug",
"name"
],
"properties": {
"name": {
"type": "string"
},
"slug": {
"type": "string"
}
},
"additionalProperties": false
},
"coverage": {
"anyOf": [
{
"type": "object",
"required": [
"tested",
"total",
"unsupported"
],
"properties": {
"total": {
"type": "number"
},
"tested": {
"type": "number"
},
"unsupported": {
"type": "number"
}
},
"additionalProperties": false
},
{
"type": "null"
}
]
},
"productKey": {
"type": "string"
},
"displayName": {
"type": "string"
},
"lastTestedAt": {
"type": "string"
},
"overallScore": {
"type": [
"number",
"null"
]
},
"completionRate": {
"type": "number"
},
"readinessScore": {
"type": [
"number",
"null"
]
},
"experienceScore": {
"type": [
"number",
"null"
]
},
"averageSuccessfulDurationMs": {
"type": [
"number",
"null"
]
}
},
"additionalProperties": false
},
"description": "Matching products with scores, outcome counts and tasks; empty when nothing matched."
},
"categories": {
"type": "array",
"items": {
"type": "object",
"required": [
"slug",
"name",
"products"
],
"properties": {
"name": {
"type": "string"
},
"slug": {
"type": "string"
},
"products": {
"type": "number"
},
"description": {
"type": "string"
}
},
"additionalProperties": false
},
"description": "Covered benchmark categories."
},
"generatedAt": {
"type": "string",
"description": "When the leaderboard snapshot was generated."
},
"totalMatched": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": 0,
"description": "Products that matched before the limit was applied."
},
"interactionId": {
"type": "string",
"description": "Id of this call; also present in the result _meta."
}
},
"description": "Success results carry generatedAt, totalMatched, products and categories and no error. Results with error set carry only interactionId and error.",
"additionalProperties": false
}