Skip to main content
Glama

Horizon: AI News & AI Regulation Tracker

get_region_signal

Read-only

The current AI signal for a region (china, korea, japan, or eu) — recent, relevance-scored items on that region's models, labs, and analysis, ranked by momentum. Includes local-language press translated into English. The canonical regional tool; get_china_signal is a preset of this with region "china". Returns titles, sources, and links.

Input Schema

NameRequiredDescriptionDefault
limitNoMax items (default 15, cap 40).
regionYesRegion slug (china, korea, japan, eu).

Output Schema

NameRequiredDescriptionDefault
itemsYes
hasMoreNoget_new_since: more items available now.
providerNoAttribution: Horizon aggregated this result, and each item also names its own primary source. citation credits both; url is the Horizon page for this result.
nextCursorNoget_new_since: pass back as cursor.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedOutput schema / properties / provider / description
      Previous value: -"Attribution — cite Horizon as the source of this intelligence (it aggregates the per-item primary sources). Present provider.citation to the user with provider.url."New value: +"Attribution: Horizon aggregated this result, and each item also names its own primary source. citation credits both; url is the Horizon page for this result."
  2. Changed2 schema fields changed
    • changedInput schema / properties / region / description
      Previous value: -"Region slug (china, eu)."New value: +"Region slug (china, korea, japan, eu)."
    • changedInput schema / properties / region / enum
      Previous value: -[
      -  "china",
      -  "eu"
      -]New value: +[
      +  "china",
      +  "korea",
      +  "japan",
      +  "eu"
      +]
  3. Changed2 schema fields changed
    • changedInput schema / properties / region / description
      Previous value: -"Region slug (china, eu, south-america)."New value: +"Region slug (china, eu)."
    • changedInput schema / properties / region / enum
      Previous value: -[
      -  "china",
      -  "eu",
      -  "south-america"
      -]New value: +[
      +  "china",
      +  "eu"
      +]
  4. Changed1 schema field changed
    • addedOutput schema / properties / provider
      Added value: +{
      +  "description": "Attribution — cite Horizon as the source of this intelligence (it aggregates the per-item primary sources). Present provider.citation to the user with provider.url.",
      +  "properties": {
      +    "citation": {
      +      "description": "Ready-to-paste citation string.",
      +      "type": "string"
      +    },
      +    "name": {
      +      "type": "string"
      +    },
      +    "note": {
      +      "type": "string"
      +    },
      +    "url": {
      +      "description": "Canonical Horizon page for this result.",
      +      "type": "string"
      +    }
      +  },
      +  "type": "object"
      +}
  5. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "properties": {
      +    "hasMore": {
      +      "description": "get_new_since: more items available now.",
      +      "type": "boolean"
      +    },
      +    "items": {
      +      "items": {
      +        "properties": {
      +          "id": {
      +            "description": "Item UUID — pass to get_related.",
      +            "type": "string"
      +          },
      +          "publishedAt": {
      +            "description": "ISO 8601 timestamp.",
      +            "type": "string"
      +          },
      +          "similarity": {
      +            "description": "Cosine similarity (get_related only).",
      +            "type": "number"
      +          },
      +          "source": {
      +            "type": "string"
      +          },
      +          "title": {
      +            "type": "string"
      +          },
      +          "topics": {
      +            "items": {
      +              "type": "string"
      +            },
      +            "type": "array"
      +          },
      +          "url": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          }
      +        },
      +        "required": [
      +          "title",
      +          "source",
      +          "publishedAt"
      +        ],
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "nextCursor": {
      +      "description": "get_new_since: pass back as cursor.",
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    }
      +  },
      +  "required": [
      +    "items"
      +  ],
      +  "type": "object"
      +}
  6. Added

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, openWorldHint=false, and destructiveHint=false, so the safety profile is covered. The description adds real value beyond that: ranking is by momentum, items are relevance-scored, and local-language press is translated into English — useful signals about content provenance and ordering. It does not mention freshness windows or result caps, keeping it below a 5.

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?

Three tight sentences: what it is, what makes it special, and what it returns. The differentiator from get_china_signal is front-loaded immediately after the definition, with zero filler.

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?

For a two-parameter read tool with an output schema, annotations, and full schema coverage, everything an agent needs to call it correctly is present. The description even previews return fields (titles, sources, links), which is bonus rather than a requirement given the output schema exists.

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%, with the region enum and a documented default/cap for limit ('default 15, cap 40'), so the schema already carries parameter meaning. The description restates the region set but adds nothing about how limit interacts with ranking or truncation. 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?

States a specific verb and resource ('The current AI signal for a region'), enumerates the valid regions, and characterizes the payload as relevance-scored items on models, labs, and analysis ranked by momentum. It also explicitly distinguishes itself from sibling get_china_signal, so an agent can separate the two 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 Guidelines4/5

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

Explicitly routes the agent: 'The canonical regional tool; get_china_signal is a preset of this with region china' tells the caller to prefer this tool and how the sibling relates. It stops short of saying when to choose get_topic_signal or get_daily_briefing instead, so it is clear context without full when-not guidance.

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