Skip to main content
Glama

AI Agent Analytics

Inspect metric evidence

get_evidence
Read-onlyIdempotent

Return privacy-minimized evidence explaining why the six core metrics counted for product_id on one product-local day. Use this to audit metric rationale; do not use it for headline daily status, use get_daily_pulse, or for a multi-day window, use get_report. day is optional: omit it for the current product-local day, and partially observed days are labeled as partial. Requires analytics:read; unresolved evidence stays unresolved, raw prompts/private payloads/credentials/full paid results are never returned, and the shared MCP limit is 300 calls per 60 seconds per caller before HTTP 429 with Retry-After.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
dayNoProduct-local calendar day as YYYY-MM-DD. Omit to inspect the current product-local day.
product_idYesExact AI Agent Analytics product/property ID returned by list_products. Do not pass a product name, URL, or organization ID.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
schemaYesDelegated response schema identifier.
productYes
evidenceYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed8 schema fields changed
    • addedOutput schema / properties / evidence / additionalProperties
      Added value: +{}
    • removedOutput schema / properties / evidence / description
      Removed value: -"Evidence inspector payload explaining metric inclusion, exclusions, and unresolved evidence."
    • addedOutput schema / properties / evidence / properties
      Added value: +{
      +  "blocker": {
      +    "description": "Explicit reason evidence is unavailable.",
      +    "type": "string"
      +  },
      +  "day": {
      +    "type": [
      +      "string",
      +      "null"
      +    ]
      +  },
      +  "exclusions": {
      +    "anyOf": [
      +      {
      +        "additionalProperties": {},
      +        "properties": {
      +          "registry_directory_events": {
      +            "maximum": 9007199254740991,
      +            "minimum": 0,
      +            "type": "integer"
      +          },
      +          "synthetic_or_internal_events": {
      +            "maximum": 9007199254740991,
      +            "minimum": 0,
      +            "type": "integer"
      +          },
      +          "unknown_external_events": {
      +            "maximum": 9007199254740991,
      +            "minimum": 0,
      +            "type": "integer"
      +          }
      +        },
      +        "required": [
      +          "unknown_external_events",
      +          "synthetic_or_internal_events",
      +          "registry_directory_events"
      +        ],
      +        "type": "object"
      +      },
      +      {
      +        "type": "null"
      +      }
      +    ]
      +  },
      +  "generated_at": {
      +    "description": "UTC generation timestamp.",
      +    "type": "string"
      +  },
      +  "integrity": {
      +    "additionalProperties": {},
      +    "properties": {
      +      "actor_ids_are_pseudonymous": {
      +        "type": "boolean"
      +      },
      +      "full_receipt_ids_exposed": {
      +        "type": "boolean"
      +      },
      +      "note": {
      +        "type": "string"
      +      },
      +      "raw_payloads_exposed": {
      +        "type": "boolean"
      +      },
      +      "unknown_external_promoted": {
      +        "type": "boolean"
      +      }
      +    },
      +    "required": [
      +      "raw_payloads_exposed",
      +      "full_receipt_ids_exposed",
      +      "actor_ids_are_pseudonymous",
      +      "unknown_external_promoted"
      +    ],
      +    "type": "object"
      +  },
      +  "metrics": {
      +    "anyOf": [
      +      {
      +        "additionalProperties": {},
      +        "properties": {
      +          "agent_revenue": {
      +            "additionalProperties": {},
      +            "properties": {
      +              "evidence": {
      +                "description": "Privacy-minimized evidence rows supporting the metric.",
      +                "items": {},
      +                "type": "array"
      +              },
      +              "rule": {
      +                "description": "Deterministic counting rule.",
      +                "type": "string"
      +              },
      +              "value": {
      +                "additionalProperties": {
      +                  "type": "string"
      +                },
      +                "description": "Settled minor-unit amounts keyed by an exact currency/asset/network identity; unlike money is never combined.",
      +                "propertyNames": {
      +                  "type": "string"
      +                },
      +                "type": "object"
      +              }
      +            },
      +            "required": [
      +              "value",
      +              "evidence",
      +              "rule"
      +            ],
      +            "type": "object"
      +          },
      +          "conversion": {
      +            "additionalProperties": {},
      +            "properties": {
      +              "evidence": {
      +                "items": {
      +                  "additionalProperties": {},
      +                  "properties": {
      +                    "actor": {
      +                      "description": "Masked pseudonymous actor label.",
      +                      "type": "string"
      +                    },
      +                    "confidence": {
      +                      "enum": [
      +                        "confirmed",
      +                        "probable"
      +                      ],
      +                      "type": "string"
      +                    },
      +                    "conversion_seen": {
      +                      "type": "boolean"
      +                    },
      +                    "first_seen_at": {
      +                      "type": [
      +                        "string",
      +                        "null"
      +                      ]
      +                    },
      +                    "intent_seen": {
      +                      "type": "boolean"
      +                    },
      +                    "invocation_count": {
      +                      "maximum": 9007199254740991,
      +                      "minimum": 0,
      +                      "type": "integer"
      +                    },
      +                    "last_seen_at": {
      +                      "type": [
      +                        "string",
      +                        "null"
      +                      ]
      +                    }
      +                  },
      +                  "required": [
      +                    "actor",
      +                    "confidence",
      +                    "invocation_count",
      +                    "intent_seen",
      +                    "conversion_seen",
      +                    "first_seen_at",
      +                    "last_seen_at"
      +                  ],
      +                  "type": "object"
      +                },
      +                "type": "array"
      +              },
      +              "rule": {
      +                "type": "string"
      +              },
      +              "value": {
      +                "additionalProperties": {},
      +                "properties": {
      +                  "converted_agents": {
      +                    "maximum": 9007199254740991,
      +                    "minimum": 0,
      +                    "type": "integer"
      +                  },
      +                  "intent_agents": {
      +                    "maximum": 9007199254740991,
      +                    "minimum": 0,
      +                    "type": "integer"
      +                  },
      +                  "rate": {
      +                    "anyOf": [
      +                      {
      +                        "maximum": 1,
      +                        "minimum": 0,
      +                        "type": "number"
      +                      },
      +                      {
      +                        "type": "null"
      +                      }
      +                    ]
      +                  }
      +                },
      +                "required": [
      +                  "converted_agents",
      +                  "intent_agents",
      +                  "rate"
      +                ],
      +                "type": "object"
      +              }
      +            },
      +            "required": [
      +              "value",
      +              "evidence",
      +              "rule"
      +            ],
      +            "type": "object"
      +          },
      +          "paid_intent": {
      +            "additionalProperties": {},
      +            "properties": {
      +              "evidence": {
      +                "description": "Privacy-minimized evidence rows supporting the metric.",
      +                "items": {},
      +                "type": "array"
      +              },
      +              "rule": {
      +                "description": "Deterministic counting rule.",
      +                "type": "string"
      +              },
      +              "value": {
      +                "maximum": 9007199254740991,
      +                "minimum": 0,
      +                "type": "integer"
      +              }
      +            },
      +            "required": [
      +              "value",
      +              "evidence",
      +              "rule"
      +            ],
      +            "type": "object"
      +          },
      +          "real_agents": {
      +            "additionalProperties": {},
      +            "properties": {
      +              "evidence": {
      +                "description": "Privacy-minimized evidence rows supporting the metric.",
      +                "items": {},
      +                "type": "array"
      +              },
      +              "rule": {
      +                "description": "Deterministic counting rule.",
      +                "type": "string"
      +              },
      +              "value": {
      +                "maximum": 9007199254740991,
      +                "minimum": 0,
      +                "type": "integer"
      +              }
      +            },
      +            "required": [
      +              "value",
      +              "evidence",
      +              "rule"
      +            ],
      +            "type": "object"
      +          },
      +          "repeat_agents": {
      +            "additionalProperties": {},
      +            "properties": {
      +              "evidence": {
      +                "description": "Privacy-minimized evidence rows supporting the metric.",
      +                "items": {},
      +                "type": "array"
      +              },
      +              "rule": {
      +                "description": "Deterministic counting rule.",
      +                "type": "string"
      +              },
      +              "value": {
      +                "maximum": 9007199254740991,
      +                "minimum": 0,
      +                "type": "integer"
      +              }
      +            },
      +            "required": [
      +              "value",
      +              "evidence",
      +              "rule"
      +            ],
      +            "type": "object"
      +          },
      +          "successful_delivery": {
      +            "additionalProperties": {},
      +            "properties": {
      +              "evidence": {
      +                "description": "Privacy-minimized evidence rows supporting the metric.",
      +                "items": {},
      +                "type": "array"
      +              },
      +              "rule": {
      +                "description": "Deterministic counting rule.",
      +                "type": "string"
      +              },
      +              "value": {
      +                "maximum": 9007199254740991,
      +                "minimum": 0,
      +                "type": "integer"
      +              }
      +            },
      +            "required": [
      +              "value",
      +              "evidence",
      +              "rule"
      +            ],
      +            "type": "object"
      +          }
      +        },
      +        "required": [
      +          "real_agents",
      +          "paid_intent",
      +          "conversion",
      +          "agent_revenue",
      +          "successful_delivery",
      +          "repeat_agents"
      +        ],
      +        "type": "object"
      +      },
      +      {
      +        "type": "null"
      +      }
      +    ]
      +  },
      +  "property_id": {
      +    "type": [
      +      "string",
      +      "null"
      +    ]
      +  },
      +  "schema_version": {
      +    "description": "Evidence-inspector schema version.",
      +    "type": "string"
      +  },
      +  "stage_evidence": {
      +    "additionalProperties": {
      +      "additionalProperties": {},
      +      "properties": {
      +        "countable_external": {
      +          "maximum": 9007199254740991,
      +          "minimum": 0,
      +          "type": "integer"
      +        },
      +        "observed_events": {
      +          "maximum": 9007199254740991,
      +          "minimum": 0,
      +          "type": "integer"
      +        },
      +        "outcomes": {
      +          "additionalProperties": {
      +            "type": "number"
      +          },
      +          "propertyNames": {
      +            "type": "string"
      +          },
      +          "type": "object"
      +        },
      +        "stage": {
      +          "type": "string"
      +        },
      +        "synthetic_or_internal": {
      +          "maximum": 9007199254740991,
      +          "minimum": 0,
      +          "type": "integer"
      +        },
      +        "unknown_external": {
      +          "maximum": 9007199254740991,
      +          "minimum": 0,
      +          "type": "integer"
      +        }
      +      },
      +      "required": [
      +        "stage",
      +        "observed_events",
      +        "countable_external",
      +        "unknown_external",
      +        "synthetic_or_internal",
      +        "outcomes"
      +      ],
      +      "type": "object"
      +    },
      +    "description": "Aggregate evidence by canonical funnel stage.",
      +    "propertyNames": {
      +      "type": "string"
      +    },
      +    "type": "object"
      +  },
      +  "state": {
      +    "description": "Present when evidence is unavailable.",
      +    "type": "string"
      +  },
      +  "time_zone": {
      +    "type": "string"
      +  },
      +  "window": {
      +    "additionalProperties": {},
      +    "properties": {
      +      "end": {
      +        "type": [
      +          "string",
      +          "null"
      +        ]
      +      },
      +      "full_property_day_observed": {
      +        "type": "boolean"
      +      },
      +      "start": {
      +        "type": [
      +          "string",
      +          "null"
      +        ]
      +      }
      +    },
      +    "required": [
      +      "start",
      +      "end",
      +      "full_property_day_observed"
      +    ],
      +    "type": "object"
      +  }
      +}
    • addedOutput schema / properties / evidence / required
      Added value: +[
      +  "schema_version",
      +  "property_id",
      +  "day",
      +  "time_zone",
      +  "generated_at",
      +  "window",
      +  "metrics",
      +  "stage_evidence",
      +  "exclusions",
      +  "integrity"
      +]
    • addedOutput schema / properties / evidence / type
      Added value: +"object"
    • changedOutput schema / properties / product / properties / id / description
      Previous value: -"Product/property ID."New value: +"Tenant-checked product/property ID."
    • changedOutput schema / properties / product / properties / time_zone / description
      Previous value: -"IANA time zone used for product-local daily interpretation."New value: +"IANA time zone used for product-local interpretation."
    • changedOutput schema / properties / schema / description
      Previous value: -"Response schema identifier."New value: +"Delegated response schema identifier."
  2. Changed3 schema fields changed
    • changedInput schema / properties / day / description
      Previous value: -"Optional YYYY-MM-DD day in the product's configured time zone."New value: +"Product-local calendar day as YYYY-MM-DD. Omit to inspect the current product-local day."
    • changedInput schema / properties / product_id / description
      Previous value: -"AI Agent Analytics product/property ID from list_products."New value: +"Exact AI Agent Analytics product/property ID returned by list_products. Do not pass a product name, URL, or organization ID."
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "$schema": "https://json-schema.org/draft/2020-12/schema",
      +  "additionalProperties": {},
      +  "properties": {
      +    "evidence": {
      +      "description": "Evidence inspector payload explaining metric inclusion, exclusions, and unresolved evidence."
      +    },
      +    "product": {
      +      "additionalProperties": {},
      +      "properties": {
      +        "id": {
      +          "description": "Product/property ID.",
      +          "type": "string"
      +        },
      +        "name": {
      +          "description": "Product name.",
      +          "type": "string"
      +        },
      +        "time_zone": {
      +          "description": "IANA time zone used for product-local daily interpretation.",
      +          "type": "string"
      +        }
      +      },
      +      "required": [
      +        "id",
      +        "name",
      +        "time_zone"
      +      ],
      +      "type": "object"
      +    },
      +    "schema": {
      +      "description": "Response schema identifier.",
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "schema",
      +    "product",
      +    "evidence"
      +  ],
      +  "type": "object"
      +}
  3. First observed

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the safety profile is known. The description adds valuable context beyond that: requires analytics:read permission, states unresolved evidence stays unresolved, notes that raw prompts/private payloads/credentials/full paid results are never returned, and discloses the rate limit (300 calls/60s) with HTTP 429 and Retry-After behavior. It also mentions partially observed days are labeled as partial. This goes well beyond the annotations without contradicting them.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single dense paragraph, but every clause carries useful information: purpose, alternatives, optional day behavior, auth requirement, data privacy guarantees, partial-day labeling, and rate limit. It is front-loaded with the core purpose and then proceeds logically to constraints. It could be slightly more scannable with bullets or shorter sentences, but there is no fluff or repetition, so it earns a strong 4.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's privacy-sensitive nature and the presence of an output schema (so return format need not be explained), the description covers everything an agent needs: clear scope (single product, single day), precise usage rules with alternatives, authentication requirement, behavioral guarantees about what is never returned, rate limiting, and handling of partial days. Nothing critical is missing for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents both parameters (day and product_id) with formats and constraints. The description re-states that 'day is optional' and omitting it gets the current day, but this duplicates the schema's 'Omit to inspect the current product-local day.' No new semantic detail is added beyond what the schema provides, so the baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb 'Return' with a clear resource ('privacy-minimized evidence') and scope ('why the six core metrics counted for product_id on one product-local day'). It also explicitly differentiates from siblings by naming get_daily_pulse and get_report for alternative use cases, making it impossible to confuse with other tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives explicit usage guidance: 'Use this to audit metric rationale' and directly states what not to use it for, naming two alternatives with conditions ('headline daily status' → get_daily_pulse, 'multi-day window' → get_report). This is exactly the when/when-not/alternatives pattern that earns a top score.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources