query_metadata_analytics_benchmarks
Query the Metadata.io marketing knowledge base for cross-account industry benchmarks and priors.
Read analytics
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
Request template, not a complete runnable example. Replace placeholders, empty objects, arrays, and zero values with valid account-specific inputs. Read required fields and nested constraints in the full schema. Confirm the account, connected channels, and referenced assets before calling a write tool.
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.
{
"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.
{
"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: