← All MCP tools

MCP tool

get_brand_analytics

Read advertiser-owned Plausible website traffic, an optional exact goal display-name filter and currency-preserved revenue for a date range. The Stats API proves its executed filter but does not enumerate configured goal identities, so zero is explicitly ambiguous. Prefer tenant-scoped campaignId, which resolves the campaign’s immutable analytics key; the stored destination URL is context, not a page/path filter, and raw campaign is advanced compatibility only. The response is correlated brand-site evidence, not a causal media claim.

Input

Pass fields from this schema as the tool arguments. Runtime ownership, product scope and readiness checks still apply.

Input JSON Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "fromDate": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
    },
    "toDate": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
    },
    "goal": {
      "type": "string",
      "minLength": 1,
      "maxLength": 120
    },
    "campaignId": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "campaign": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    }
  },
  "required": [
    "fromDate",
    "toDate"
  ]
}

REST mapping and authority

The tool wraps this REST endpoint. The mapping identifies path/query/body transformations and approval or idempotency headers.

Request contract
{
  "method": "GET",
  "path": "/api/v1/workspace/analytics",
  "pathFields": [],
  "pathSchema": {
    "type": "object",
    "properties": {},
    "additionalProperties": false
  },
  "pathEncoding": "encodeURIComponent for each path field",
  "governedAction": null,
  "headers": {},
  "querySchema": {
    "type": "object",
    "properties": {
      "fromDate": {
        "type": "string",
        "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
      },
      "toDate": {
        "type": "string",
        "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
      },
      "goal": {
        "type": "string",
        "minLength": 1,
        "maxLength": 120
      },
      "campaignId": {
        "type": "string",
        "minLength": 1,
        "maxLength": 100
      },
      "campaign": {
        "type": "string",
        "minLength": 1,
        "maxLength": 200
      }
    },
    "additionalProperties": false,
    "required": [
      "fromDate",
      "toDate"
    ]
  },
  "queryEncoding": "URLSearchParams; omit undefined fields, stringify supplied values",
  "responseMapping": "REST JSON is returned as MCP structuredContent and a compatibility text block; privacy-sensitive tools validate their output schema."
}

Output

This is the registered MCP output envelope. Nested fields are only modeled where the schema explicitly defines them.

Output JSON Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {},
  "additionalProperties": {}
}

Safety annotations

MCP annotations
{
  "readOnlyHint": true,
  "destructiveHint": false,
  "idempotentHint": false,
  "openWorldHint": false
}

Annotations help a client present the tool. The API independently enforces authorization and exact action approvals. Error and retry guidance →

get_brand_analytics | AdBuyMCP docs