Skip to main content
Glama

get_upcoming_risks

get_upcoming_risks
Read-onlyIdempotent

Retrieve known scheduled macroeconomic and central-bank risks that may affect a supported FX instrument within a future time window.

Use this tool when the user asks what could move EURUSD, GBPUSD, or USDJPY, what macro risks are coming up, what is happening in the next 24 hours, this week, or over the next month, what upcoming macro risks or scheduled events exist, or when the next CPI, next NFP, next PCE, next ISM, next Fed, next ECB, next BoE, or next BoJ event occurs.

The supported risks are U.S. CPI releases, U.S. Nonfarm Payrolls releases, U.S. PCE inflation releases, ISM Manufacturing and Services PMI releases, Federal Reserve monetary-policy decisions, ECB monetary-policy decisions, Bank of England monetary-policy decisions, and Bank of Japan monetary-policy decisions.

The horizon can extend up to 720 hours (30 days). scheduleCoverage reports, for each supported event type, the latest known scheduled date and whether the known calendar covers the whole window. If scheduleCoverageComplete is false, some event types may have additional events in the window that are not yet known; say so instead of treating the list as complete.

Results are based on official release calendars and contain scheduled events only. This tool does not predict market direction, include unscheduled news, or provide trading recommendations.

If no supported scheduled event exists within the requested horizon, an empty risk list is returned.

Input Schema

NameRequiredDescriptionDefault
instrumentNoFX instrument: EURUSD, GBPUSD, or USDJPY. Defaults to EURUSD.
horizonHoursNoFuture time window in hours. Defaults to 24. Maximum is 720 (30 days).

Output Schema

NameRequiredDescriptionDefault
asOfYes
risksYes
windowEndYes
instrumentYes
horizonHoursYes
scheduleCoverageYes
scheduleCoverageCompleteYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedOutput schema / $defs / ScheduledEventType / enum
      Previous value: -[
      -  "US_CPI",
      -  "US_NONFARM_PAYROLLS",
      -  "US_PCE",
      -  "FEDERAL_RESERVE",
      -  "ECB",
      -  "BANK_OF_ENGLAND",
      -  "BANK_OF_JAPAN"
      -]New value: +[
      +  "US_CPI",
      +  "US_NONFARM_PAYROLLS",
      +  "US_PCE",
      +  "US_ISM_MANUFACTURING",
      +  "US_ISM_SERVICES",
      +  "FEDERAL_RESERVE",
      +  "ECB",
      +  "BANK_OF_ENGLAND",
      +  "BANK_OF_JAPAN"
      +]
  2. Changed8 schema fields changed
    • changedInput schema / properties / horizonHours / description
      Previous value: -"Future time window in hours. Defaults to 24. Maximum is 168 (7 days)."New value: +"Future time window in hours. Defaults to 24. Maximum is 720 (30 days)."
    • addedOutput schema / $defs
      Added value: +{
      +  "ScheduledEventType": {
      +    "enum": [
      +      "US_CPI",
      +      "US_NONFARM_PAYROLLS",
      +      "US_PCE",
      +      "FEDERAL_RESERVE",
      +      "ECB",
      +      "BANK_OF_ENGLAND",
      +      "BANK_OF_JAPAN"
      +    ],
      +    "type": "string"
      +  }
      +}
    • addedOutput schema / properties / risks / items / properties / eventType / $ref
      Added value: +"#/$defs/ScheduledEventType"
    • removedOutput schema / properties / risks / items / properties / eventType / enum
      Removed value: -[
      -  "US_CPI",
      -  "US_NONFARM_PAYROLLS",
      -  "US_PCE",
      -  "FEDERAL_RESERVE",
      -  "ECB",
      -  "BANK_OF_ENGLAND",
      -  "BANK_OF_JAPAN"
      -]
    • removedOutput schema / properties / risks / items / properties / eventType / type
      Removed value: -"string"
    • addedOutput schema / properties / scheduleCoverage
      Added value: +{
      +  "items": {
      +    "properties": {
      +      "coversWindow": {
      +        "type": "boolean"
      +      },
      +      "eventType": {
      +        "$ref": "#/$defs/ScheduledEventType"
      +      },
      +      "latestKnownScheduledAt": {
      +        "format": "date-time",
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "coversWindow",
      +      "eventType"
      +    ],
      +    "type": "object"
      +  },
      +  "type": "array"
      +}
    • addedOutput schema / properties / scheduleCoverageComplete
      Added value: +{
      +  "type": "boolean"
      +}
    • changedOutput schema / required
      Previous value: -[
      -  "asOf",
      -  "horizonHours",
      -  "instrument",
      -  "risks",
      -  "windowEnd"
      -]New value: +[
      +  "asOf",
      +  "horizonHours",
      +  "instrument",
      +  "risks",
      +  "scheduleCoverage",
      +  "scheduleCoverageComplete",
      +  "windowEnd"
      +]
  3. Changed1 schema field changed
    • changedOutput schema / properties / risks / items / properties / eventType / enum
      Previous value: -[
      -  "US_CPI",
      -  "US_NONFARM_PAYROLLS",
      -  "FEDERAL_RESERVE",
      -  "ECB",
      -  "BANK_OF_ENGLAND",
      -  "BANK_OF_JAPAN"
      -]New value: +[
      +  "US_CPI",
      +  "US_NONFARM_PAYROLLS",
      +  "US_PCE",
      +  "FEDERAL_RESERVE",
      +  "ECB",
      +  "BANK_OF_ENGLAND",
      +  "BANK_OF_JAPAN"
      +]
  4. Changed1 schema field changed
    • changedOutput schema / properties / risks / items / properties / eventType / enum
      Previous value: -[
      -  "US_CPI",
      -  "FEDERAL_RESERVE",
      -  "ECB",
      -  "BANK_OF_ENGLAND",
      -  "BANK_OF_JAPAN"
      -]New value: +[
      +  "US_CPI",
      +  "US_NONFARM_PAYROLLS",
      +  "FEDERAL_RESERVE",
      +  "ECB",
      +  "BANK_OF_ENGLAND",
      +  "BANK_OF_JAPAN"
      +]
  5. Changed1 schema field changed
    • changedOutput schema / properties / risks / items / properties / eventType / enum
      Previous value: -[
      -  "US_CPI",
      -  "FEDERAL_RESERVE",
      -  "ECB",
      -  "BANK_OF_ENGLAND"
      -]New value: +[
      +  "US_CPI",
      +  "FEDERAL_RESERVE",
      +  "ECB",
      +  "BANK_OF_ENGLAND",
      +  "BANK_OF_JAPAN"
      +]
  6. Changed1 schema field changed
    • changedOutput schema / properties / risks / items / properties / eventType / enum
      Previous value: -[
      -  "US_CPI",
      -  "FEDERAL_RESERVE",
      -  "ECB"
      -]New value: +[
      +  "US_CPI",
      +  "FEDERAL_RESERVE",
      +  "ECB",
      +  "BANK_OF_ENGLAND"
      +]
  7. Changed1 schema field changed
    • changedInput schema / properties / instrument / description
      Previous value: -"FX instrument. Defaults to EURUSD."New value: +"FX instrument: EURUSD, GBPUSD, or USDJPY. Defaults to EURUSD."
  8. First observed

TDQS

A4.4/5.0
Behavior5/5

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

Annotations already declare readOnly, idempotent, non-destructive, closed-world, so the safety profile is covered; the description adds real behavioral context on top: results come from official release calendars, scheduled events only, an empty list is returned when nothing matches, and the horizon cap is 720 hours. It also explains the scheduleCoverage / scheduleCoverageComplete caveat and instructs the agent to disclose incompleteness rather than imply a complete list.

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?

Well front-loaded: purpose first, then usage, then the supported-event inventory, then the coverage caveat and exclusions. It is somewhat long and mildly repetitive, re-listing event types and the 720-hour cap that already appear in the usage examples and schema, but every paragraph still carries signal.

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?

An output schema exists, so return values need not be spelled out, yet the description still explains the meaning of scheduleCoverage and scheduleCoverageComplete and what an empty result means. Combined with the instrument list, horizon cap, and exclusions, an agent has everything needed to call and interpret the tool correctly.

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 both parameters (instrument, horizonHours) are already documented with defaults and the 720-hour maximum. The description restates the instrument set and the 720-hour horizon cap but adds no syntax, format, or edge-case detail beyond the schema, so 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 ('Retrieve known scheduled macroeconomic and central-bank risks') and narrows scope to a supported FX instrument and future window. It enumerates the exact supported event families and instruments, so an agent can distinguish it from historical-reaction siblings like get_historical_analogs or get_market_reaction 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?

Gives a rich when-to-use section with concrete user phrasings ('what could move EURUSD', 'next CPI, next NFP, next Fed') plus explicit when-not guidance (no market-direction prediction, no unscheduled news, no trading recommendations). It never names a sibling tool as the alternative to route to, so it stops short of a 5.

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