Skip to main content
Glama

Get one change and its sources

get_change
Read-onlyIdempotent

Get one published change with its scores, main subject and every outlet that reported it (name, link, date, evidence level, role). Use it after list_changes, search_changes or get_topic to see who reported a change; for its receipts and what AiSeek knew earlier use get_change_history. Parameters: id is the change UUID from those tools, or the last part of an aiseek.dev/{locale}/signals/{id} link; locale translates headline and summary only, while source names and links are the same in every language. Behavior: scores and sources can grow as later reports arrive, so a second call may return more; quoted passages are never returned; a dossierId points to https://aiseek.dev/{locale}/stories/{dossierId}, which no tool returns; a withdrawn or unknown id is an error. One call of the key's quota (Free keys have a daily MCP cap); a rejected argument costs nothing.

Input Schema

NameRequiredDescriptionDefault
idYesThe change id: a UUID such as 3f2b8c1e-5a47-4d0e-9b6a-1c7e2d8f4a90, taken from the id of an item in list_changes, search_changes or get_topic; an unpublished id is an error
localeNoLanguage of headlines, summaries and notices in the answer: en, zh or ja; omit for the connection's default language (en unless set)

Output Schema

NameRequiredDescriptionDefault
idYesThe change id
urlYesThe change's page on aiseek.dev
titleYesHeadline in the requested language
scoresNoAiSeek's scores for the change
localesNoLanguages the headline exists in (en, zh, ja)
sourcesYesThe sources that reported the change: names and links only, never quoted passages
summaryNoSummary in the requested language
dossierIdNoId of the in-depth dossier on this change, when one is published
detectedAtYesISO 8601 time AiSeek detected the change
reportedAtNoISO 8601 time the first source reported it, when known
signalTypeNoThe kind of change
effectiveAtNoISO 8601 time the change takes effect, when it has one
primaryEntityNoThe main company or subject

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changed
    • changedInput schema / properties / id / description
      Previous value: -"The change id: a UUID such as 3f2b8c1e-5a47-4d0e-9b6a-1c7e2d8f4a90, taken from the id of an item in latest_changes or search_changes; an unpublished id is an error"New value: +"The change id: a UUID such as 3f2b8c1e-5a47-4d0e-9b6a-1c7e2d8f4a90, taken from the id of an item in list_changes, search_changes or get_topic; an unpublished id is an error"
    • removedInput schema / properties / locale / default
      Removed value: -"en"
    • changedInput schema / properties / locale / description
      Previous value: -"Language of headlines, summaries and notices in the answer: en (the default), zh or ja"New value: +"Language of headlines, summaries and notices in the answer: en, zh or ja; omit for the connection's default language (en unless set)"
  2. Changed1 schema field changed
    • changedInput schema / properties / id / description
      Previous value: -"The change id (a UUID) from latest_changes or search_changes"New value: +"The change id: a UUID such as 3f2b8c1e-5a47-4d0e-9b6a-1c7e2d8f4a90, taken from the id of an item in latest_changes or search_changes; an unpublished id is an error"
  3. Changed3 schema fields changed
    • changedInput schema / properties / id / description
      Previous value: -"The change id from latest_changes or search_changes"New value: +"The change id (a UUID) from latest_changes or search_changes"
    • changedInput schema / properties / locale / description
      Previous value: -"Language of titles and summaries: en, zh or ja"New value: +"Language of headlines, summaries and notices in the answer: en (the default), zh or ja"
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "$schema": "http://json-schema.org/draft-07/schema#",
      +  "additionalProperties": {},
      +  "properties": {
      +    "detectedAt": {
      +      "description": "ISO 8601 time AiSeek detected the change",
      +      "type": "string"
      +    },
      +    "dossierId": {
      +      "description": "Id of the in-depth dossier on this change, when one is published",
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "effectiveAt": {
      +      "description": "ISO 8601 time the change takes effect, when it has one",
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "id": {
      +      "description": "The change id",
      +      "type": "string"
      +    },
      +    "locales": {
      +      "description": "Languages the headline exists in (en, zh, ja)",
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "primaryEntity": {
      +      "anyOf": [
      +        {
      +          "additionalProperties": {},
      +          "properties": {
      +            "entityType": {
      +              "type": "string"
      +            },
      +            "name": {
      +              "type": "string"
      +            },
      +            "slug": {
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "slug",
      +            "name"
      +          ],
      +          "type": "object"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "description": "The main company or subject"
      +    },
      +    "reportedAt": {
      +      "description": "ISO 8601 time the first source reported it, when known",
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "scores": {
      +      "additionalProperties": {},
      +      "description": "AiSeek's scores for the change",
      +      "properties": {
      +        "evidenceStrength": {
      +          "description": "0 to 1",
      +          "type": "number"
      +        },
      +        "importance": {
      +          "description": "0 to 1",
      +          "type": "number"
      +        },
      +        "novelty": {
      +          "description": "0 to 1",
      +          "type": "number"
      +        },
      +        "velocity": {
      +          "description": "0 to 1",
      +          "type": "number"
      +        }
      +      },
      +      "required": [
      +        "importance",
      +        "novelty",
      +        "velocity",
      +        "evidenceStrength"
      +      ],
      +      "type": "object"
      +    },
      +    "signalType": {
      +      "description": "The kind of change",
      +      "type": "string"
      +    },
      +    "sources": {
      +      "description": "The sources that reported the change: names and links only, never quoted passages",
      +      "items": {
      +        "additionalProperties": {},
      +        "properties": {
      +          "level": {
      +            "description": "Evidence level: PRIMARY, REGULATOR, COMPANY, INSTITUTIONAL, MEDIA, COMMUNITY or DERIVED",
      +            "type": "string"
      +          },
      +          "publishedAt": {
      +            "description": "When the source published it",
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "role": {
      +            "description": "How the source is used for the change",
      +            "type": "string"
      +          },
      +          "source": {
      +            "description": "Outlet or publisher name",
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "url": {
      +            "description": "Link to the source article",
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          }
      +        },
      +        "required": [
      +          "source",
      +          "url",
      +          "publishedAt",
      +          "level",
      +          "role"
      +        ],
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "summary": {
      +      "description": "Summary in the requested language",
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    },
      +    "title": {
      +      "description": "Headline in the requested language",
      +      "type": "string"
      +    },
      +    "url": {
      +      "description": "The change's page on aiseek.dev",
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "id",
      +    "title",
      +    "detectedAt",
      +    "sources",
      +    "url"
      +  ],
      +  "type": "object"
      +}
  4. First observed

TDQS

A4.6/5.0
Behavior4/5

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

Annotations cover the safety profile (readOnly, idempotent, non-destructive), and the description adds real operational context: scores/sources can grow so a later call may return more, quoted passages are never returned, a dossierId maps to a URL no tool exposes, withdrawn/unknown ids error out, and one call consumes quota while rejected arguments are free. That is well beyond what the annotations provide.

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 text is front-loaded (purpose, then usage, then 'Parameters:' and 'Behavior:' blocks) and nearly every clause carries actionable information. It is longer than a minimal definition, but the density of constraints justifies it rather than padding it.

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?

With an output schema present, return values need not be described, and the description still covers error cases (withdrawn/unknown id), quota cost, result mutability over time, and the dossierId link convention. Nothing needed to invoke this tool correctly appears to be 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 meaning the schema does not: id may be taken from a UUID returned by sibling tools or from the last path segment of an aiseek.dev/{locale}/signals/{id} link, and locale only translates headlines/summaries while source names and links stay identical across languages.

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 names a specific verb and resource ('Get one published change') and enumerates the returned content (scores, main subject, every reporting outlet with name, link, date, evidence level, role). It also explicitly separates itself from get_change_history, list_changes, search_changes and get_topic, so an agent can route without opening a schema.

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 states the exact upstream tools whose ids feed this call ('Use it after list_changes, search_changes or get_topic') and names the alternative for a different need ('for its receipts and what AiSeek knew earlier use get_change_history'). When-to-use and when-to-use-something-else are both explicit.

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