query_metadata_analytics_benchmarks
Query the Metadata.io marketing knowledge base for cross-account industry benchmarks and priors.
Read analytics
Returns data. Calling it changes nothing, so it is safe in an unattended loop.
What it does
Query the Metadata.io marketing knowledge base for cross-account industry benchmarks and priors.
Arguments
| Argument | Type | Notes | |
|---|---|---|---|
question |
string | required | Natural-language question. Should describe a COHORT (industry × size × channel × format / audience), not a specific company. |
conversation_id |
any | Optional. Pass the value returned from a prior `_benchmarks` call to keep the query context warm. The two knowledge-base tools never share conversation_ids — pass only IDs returned by `_benchmarks` here. |
Request
curl
curl -s -X POST https://mcp-server.metadata.io/mcp \
-H "Authorization: $METADATA_PAT" \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-H "MCP-Protocol-Version: 2025-11-25" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"query_metadata_analytics_benchmarks","arguments":{"question":"<question>"}}}'
Response
Recorded with these arguments. Enum values are the first the tool's own schema
declares; ids were fetched live from a list_ call immediately before.
arguments used
{
"question": "What is the median cost per lead for B2B software?"
}
Real, from the production server, in 21091 ms. Values that identify a customer or disclose money are replaced with typed placeholders; keys, types and nesting are exactly as returned.
recorded response
{
"status": "ok",
"tool": "[tool redacted]",
"sql": "[sql redacted]",
"text_reply": "[text_reply redacted]",
"columns": [
"channel",
"median_cpl",
"confidence_tier",
"experiment_count_distinct"
],
"rows": [
[
"facebook",
"[rows redacted]",
"HIGH",
"[rows redacted]"
],
[
"google_ads",
"[rows redacted]",
"HIGH",
"[rows redacted]"
],
[
"instagram",
"[rows redacted]",
"HIGH",
"[rows redacted]"
],
[
"linkedin",
"[rows redacted]",
"HIGH",
"[rows redacted]"
]
],
"row_count": 4,
"conversation_id": "[conversation_id redacted]",
"message_id": "[message_id redacted]",
"latency_ms": "[number redacted]",
"confidence": "HIGH",
"applied_filters": {
"account_scope": null,
"k_anon_floor": true
},
"empty_reason": null
}
Related
Other analytics tools: