Skip to main content
Glama

AI Agent Analytics

Get agent discovery evidence

get_discovery
Read-onlyIdempotent

Return evidence-backed discovery sources for product_id over a trailing days window. Use this to answer how the product was found; do not use it for repeat relationships, use get_agents, or for settled commerce, use get_revenue. days defaults to 30 and includes the current partial day plus the preceding 29 days; changing days changes only the window, never evidence classification. Requires analytics:read; product_id is tenant-checked, traffic classes remain separate, and the shared MCP limit is 300 calls per 60 seconds per caller before HTTP 429 with Retry-After.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
daysNoLookback length in whole days, 1 through 90 inclusive. Defaults to 30 when omitted.
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
discoveryYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed8 schema fields changed
    • addedOutput schema / properties / discovery / additionalProperties
      Added value: +{}
    • removedOutput schema / properties / discovery / description
      Removed value: -"Discovery intelligence grouped by observed source and evidence class for the requested lookback."
    • addedOutput schema / properties / discovery / properties
      Added value: +{
      +  "generated_at": {
      +    "description": "UTC end of the observed discovery window.",
      +    "type": "string"
      +  },
      +  "integrity": {
      +    "additionalProperties": {},
      +    "properties": {
      +      "historical_source_backfill": {
      +        "type": "boolean"
      +      },
      +      "note": {
      +        "type": "string"
      +      },
      +      "registry_directory_infrastructure_not_real_agents": {
      +        "type": "boolean"
      +      },
      +      "source_attribution_model": {
      +        "type": "string"
      +      },
      +      "unknown_external_not_promoted": {
      +        "type": "boolean"
      +      }
      +    },
      +    "required": [
      +      "source_attribution_model",
      +      "registry_directory_infrastructure_not_real_agents",
      +      "unknown_external_not_promoted",
      +      "historical_source_backfill",
      +      "note"
      +    ],
      +    "type": "object"
      +  },
      +  "property_id": {
      +    "description": "Product/property ID.",
      +    "type": [
      +      "string",
      +      "null"
      +    ]
      +  },
      +  "schema_version": {
      +    "description": "Discovery-intelligence schema version.",
      +    "type": "string"
      +  },
      +  "sources": {
      +    "description": "Per-source discovery and linked relationship evidence.",
      +    "items": {
      +      "additionalProperties": {},
      +      "properties": {
      +        "average_confidence": {
      +          "anyOf": [
      +            {
      +              "maximum": 1,
      +              "minimum": 0,
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "discoveries": {
      +          "maximum": 9007199254740991,
      +          "minimum": 0,
      +          "type": "integer"
      +        },
      +        "evaluated_agents": {
      +          "maximum": 9007199254740991,
      +          "minimum": 0,
      +          "type": "integer"
      +        },
      +        "evaluation_rate": {
      +          "anyOf": [
      +            {
      +              "maximum": 1,
      +              "minimum": 0,
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "identified_agents": {
      +          "maximum": 9007199254740991,
      +          "minimum": 0,
      +          "type": "integer"
      +        },
      +        "infrastructure": {
      +          "maximum": 9007199254740991,
      +          "minimum": 0,
      +          "type": "integer"
      +        },
      +        "label": {
      +          "description": "Human-readable source label.",
      +          "type": "string"
      +        },
      +        "paying_agents": {
      +          "maximum": 9007199254740991,
      +          "minimum": 0,
      +          "type": "integer"
      +        },
      +        "paying_rate": {
      +          "anyOf": [
      +            {
      +              "maximum": 1,
      +              "minimum": 0,
      +              "type": "number"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "qualified_discoveries": {
      +          "maximum": 9007199254740991,
      +          "minimum": 0,
      +          "type": "integer"
      +        },
      +        "source": {
      +          "description": "Normalized observed discovery source.",
      +          "type": "string"
      +        },
      +        "source_class": {
      +          "description": "Evidence class such as qualified_external or infrastructure.",
      +          "type": "string"
      +        },
      +        "synthetic_or_internal": {
      +          "maximum": 9007199254740991,
      +          "minimum": 0,
      +          "type": "integer"
      +        },
      +        "unresolved_external": {
      +          "maximum": 9007199254740991,
      +          "minimum": 0,
      +          "type": "integer"
      +        }
      +      },
      +      "required": [
      +        "source",
      +        "label",
      +        "source_class",
      +        "discoveries",
      +        "qualified_discoveries",
      +        "unresolved_external",
      +        "infrastructure",
      +        "synthetic_or_internal",
      +        "average_confidence",
      +        "identified_agents",
      +        "evaluated_agents",
      +        "paying_agents",
      +        "evaluation_rate",
      +        "paying_rate"
      +      ],
      +      "type": "object"
      +    },
      +    "type": "array"
      +  },
      +  "summary": {
      +    "additionalProperties": {},
      +    "description": "Discovery totals kept separate by evidence class.",
      +    "properties": {
      +      "countable_evaluations": {
      +        "maximum": 9007199254740991,
      +        "minimum": 0,
      +        "type": "integer"
      +      },
      +      "identified_agents": {
      +        "maximum": 9007199254740991,
      +        "minimum": 0,
      +        "type": "integer"
      +      },
      +      "infrastructure_discoveries": {
      +        "maximum": 9007199254740991,
      +        "minimum": 0,
      +        "type": "integer"
      +      },
      +      "qualified_discoveries": {
      +        "maximum": 9007199254740991,
      +        "minimum": 0,
      +        "type": "integer"
      +      },
      +      "source_linked_evaluations": {
      +        "maximum": 9007199254740991,
      +        "minimum": 0,
      +        "type": "integer"
      +      },
      +      "synthetic_or_internal_discoveries": {
      +        "maximum": 9007199254740991,
      +        "minimum": 0,
      +        "type": "integer"
      +      },
      +      "unattributed_countable_evaluations": {
      +        "maximum": 9007199254740991,
      +        "minimum": 0,
      +        "type": "integer"
      +      },
      +      "unknown_external_evaluations": {
      +        "maximum": 9007199254740991,
      +        "minimum": 0,
      +        "type": "integer"
      +      },
      +      "unresolved_external_discoveries": {
      +        "maximum": 9007199254740991,
      +        "minimum": 0,
      +        "type": "integer"
      +      }
      +    },
      +    "required": [
      +      "qualified_discoveries",
      +      "unresolved_external_discoveries",
      +      "infrastructure_discoveries",
      +      "synthetic_or_internal_discoveries",
      +      "identified_agents",
      +      "countable_evaluations",
      +      "source_linked_evaluations",
      +      "unattributed_countable_evaluations",
      +      "unknown_external_evaluations"
      +    ],
      +    "type": "object"
      +  },
      +  "window": {
      +    "additionalProperties": {},
      +    "properties": {
      +      "current_day_partial": {
      +        "description": "True because the current day may still be in progress.",
      +        "type": "boolean"
      +      },
      +      "end": {
      +        "description": "UTC end of the discovery lookback.",
      +        "type": "string"
      +      },
      +      "lookback_days": {
      +        "description": "Requested trailing-day count.",
      +        "maximum": 90,
      +        "minimum": 1,
      +        "type": "integer"
      +      },
      +      "start": {
      +        "description": "UTC start of the discovery lookback.",
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "start",
      +      "end",
      +      "lookback_days",
      +      "current_day_partial"
      +    ],
      +    "type": "object"
      +  }
      +}
    • addedOutput schema / properties / discovery / required
      Added value: +[
      +  "schema_version",
      +  "property_id",
      +  "generated_at",
      +  "window",
      +  "summary",
      +  "sources",
      +  "integrity"
      +]
    • addedOutput schema / properties / discovery / 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 / days / description
      Previous value: -"Lookback window in days, from 1 to 90."New value: +"Lookback length in whole days, 1 through 90 inclusive. Defaults to 30 when omitted."
    • 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": {
      +    "discovery": {
      +      "description": "Discovery intelligence grouped by observed source and evidence class for the requested lookback."
      +    },
      +    "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",
      +    "discovery"
      +  ],
      +  "type": "object"
      +}
  3. First observed

TDQS

A4.9/5.0
Behavior5/5

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

Beyond the readOnly/idempotent annotations, the description discloses authentication requirements, tenant checking, isolation of traffic classes, and a concrete rate limit with the HTTP 429 and Retry-After behavior. It also explains the precise window semantics including the current partial day. This is rich behavioral context with no contradiction.

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

Conciseness5/5

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

The description is dense but every sentence earns its place: purpose, routing, window semantics, and operational constraints. It front-loads the core function and keeps the exclusions immediately after, so an agent gets the decision-relevant information first.

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 output schema exists, no return-format explanation is needed. The description covers purpose, alternative routing, parameter semantics, authorization, tenant scoping, and rate limiting — nothing an agent needs to call this tool correctly is missing.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3, but the description adds genuinely useful semantics beyond the schema: days includes the current partial day plus the preceding 29 days, and changing days affects only the window, not evidence classification. That extra nuance earns a 4.

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?

States a specific verb and resource: 'Return evidence-backed discovery sources for product_id over a trailing days window.' It clearly distinguishes itself from related tools by naming what it is not for (repeat relationships via get_agents, settled commerce via get_revenue), and 'discovery sources' differentiates it from the generic get_evidence sibling.

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?

Explicitly provides when-to-use guidance ('answer how the product was found') and when-not-to-use guidance with named alternatives. This is exactly the routing information an agent needs to select between siblings.

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