Live release feed
Sub-second macro releases for FX backtests
Point-in-time history
Official CPI, jobs, GDP, and central-bank events with point-in-time history.
$25/month 14-day free trial
Start Free Trial
Live MCP · Streamable HTTP OAuth 2.0 + PKCE

FXMacroData MCP Server

Give your AI assistant a live macro data terminal: official-source indicators, release calendars, FX spot context, COT, commodities, chart apps, and task-ready research workflows inside the tools you already use.

https://fxmacrodata.com/mcp
30 tools available
48 REST routes

First API call

Quick Request

Start with a live announcement endpoint. Authentication stays in the api_key query parameter for direct browser and script testing.

EUR inflation example GET /api/v1/announcements/eur/inflation
Request snippet
curl "https://fxmacrodata.com/api/v1/announcements/eur/inflation?api_key=YOUR_API_KEY"

Why Connect FXMacroData MCP

FXMacroData MCP turns a general-purpose AI assistant into a macro-aware research agent. Instead of asking a model to guess from stale training data, the assistant can call live tools for policy rates, inflation, GDP, labor data, release calendars, FX rates, COT positioning, commodities, and official dataset families. The result is a conversation that can cite actual data rows, use release timestamps, and keep the analysis grounded in the same production API that powers the FXMacroData dashboard.

For discretionary FX research

Ask for a EUR/USD macro setup, compare policy-rate differentials, review the next event risks, or build a pre-central-bank briefing without leaving Claude, ChatGPT, Cursor, VS Code, or your preferred agent host.

For quant and systematic workflows

Use point-in-time release timestamps, backtest tasks, event-gated filters, portfolio risk scoring, and reusable research packs to keep exploratory notebooks and agent-generated analysis aligned with live macro data.

For coding agents

Give Cursor, Continue, Cline, Windsurf, Replit Agent, Zed, Kiro, and JetBrains a single remote MCP endpoint that can discover indicators, validate examples, and generate macro-aware app or notebook code.

For chart-first answers

Compatible MCP Apps hosts can render interactive chart resources for indicator series, FX rates, policy-rate comparisons, release calendars, heatmaps, scenario models, event replays, and quant labs.

Choose the Right MCP Surface

Use data tools for exact facts

Call data_catalogue, indicator_query, forex, and release_calendar when you need rows, timestamps, JSON, tables, or exact values.

Best prompt: "Get USD inflation from 2024-01-01 to 2025-01-01."

Use Apps for visual analysis

Call visual artifact tools when the answer should include an interactive chart, release-calendar view, heatmap, scenario model, or event replay inside the chat.

Best prompt: "Show me a chart of AUD policy rates since 2020."

Use tasks for research workflows

Call task tools when the assistant should assemble several data sources into a decision-ready output, such as a trade setup, risk score, backtest, or research pack.

Best prompt: "Build a EUR/USD trade setup with catalysts and invalidation notes."

Use prompts for repeatable routines

Prompt-aware hosts can discover curated workflows for macro briefings, pair risk checks, post-release summaries, week-ahead plans, and chart routing.

Best prompt: "Run the FX pair risk check prompt for EUR/USD."

Quick Connect

Start with the bare MCP URL when your host supports OAuth. Use the API-key URL only when the host cannot complete an OAuth flow or when you want a simple server-to-agent connection for a private workspace.

Claude (Web & Desktop)

claude.ai — remote MCP connector

  1. 1

    Open Claude → Settings → Connectors

    Click Add MCP Server and select Remote.

  2. 2

    Enter the server URL

    https://fxmacrodata.com/mcp
  3. 3

    Start using it

    Free access supports USD table data (indicator_query) with no key. For MCP app visuals, analytics tools, and non-USD coverage, use a paid key or OAuth. Claude should discover OAuth automatically from the MCP URL. If a Claude flow asks for an OAuth client ID and secret, use the FXMacroData-issued values for that host. As a direct fallback, use https://fxmacrodata.com/mcp?api_key=YOUR_KEY.

  4. 4

    Verify the connection

    In a new chat, ask: "Run the FXMacroData ping tool", "Show me available USD indicators", "What sessions are open right now?", or "Run subscribe_for_mcp_access".

Example: Live in Claude

Claude claude.ai
FXMacroData connected
What's the EUR vs USD interest rate differential, and what does it mean for EUR/USD?
indicator_query(currency="eur", indicator="policy_rate")
indicator_query(currency="usd", indicator="policy_rate")
Tool results
ECB (EUR) policy_rate: 4.25%
Fed (USD) policy_rate: 5.50%
Differential: −1.25% (USD premium)
Based on the latest central bank data from FXMacroData, the Fed rate of 5.50% exceeds the ECB rate of 4.25% by 125 basis points. This USD rate premium is a structurally bearish factor for EUR/USD — higher US yields attract capital flows that support dollar strength relative to the euro.
Ask about FX macro data...

Chart Artifacts

FXMacroData MCP Apps span release calendars, indicator visuals, pair-comparison analysis, cross-currency heatmaps, scenario tooling, war-room workflows, event replay, quant distributions, and subscription unlock flows. Each image below is captured from a real local MCP app render; the final in-chat experience depends on whether the host mounts MCP Apps resources inline.

MCP indicator app preview with rendered USD inflation chart
Indicator chart app with premium analysis cards and signal pills.
MCP indicator app with Area, MA(5), and Trend controls enabled
Indicator control stack in action: Area + MA(5) + Trend overlays.
MCP comparison app for multi-series and spread views
Comparison app surface for line, spread, ratio, normalized, and z-score modes.
MCP macro heatmap app for cross-currency matrix analysis
Macro heatmap app with mode toggles and matrix scale legend.
MCP policy scenario modeler app with FX elasticity controls
Policy scenario modeler for spread shocks and projected spot outputs.
MCP macro war room app showing pair context and release controls
Macro war room cockpit for pair context, release queue, and risk alerts.
MCP event impact replay app with timeline controls
Event impact replay timeline for point-in-time market context reviews.
MCP quant scenario lab app with stress percentiles
Quant scenario lab for stress distribution inputs and percentile outputs.
MCP subscribe call-to-action card for gated tools
Subscriber CTA card with direct checkout handoff for gated MCP features.
Claude claude.ai
FXMacroData connected
Plot the USD policy rate since 2020 as a chart
indicator_visual_artifact(currency="usd", indicator="policy_rate", start_date="2020-01-01")
USD / POLICY_RATE 15 points · latest 2024-12 = 4.50%
6% 4% 2% 0% 2020 2022 2023 2024 5.50% 4.50%
FX Macrodata · indicator_visual_artifact · interactive in Claude
Here is the USD policy rate (Fed funds rate) from 2020 to 2024. The rate was held near zero through 2021, then the Fed launched its fastest hiking cycle in decades — rising from 0.25% to a peak of 5.50% by mid-2023. The first cuts began in late 2024, bringing the rate back to 4.50%.

MCP Apps Explorer

MCP Apps are best when the answer should stay interactive inside the conversation. FXMacroData now exposes release-calendar, charting, pair intelligence, macro heatmap, policy scenario, macro war room, event replay, and quant lab app flows. For persistent hosts like Claude Code and Gemini-driven coding agents, the server also exposes task-capable non-visual research workflows that can be polled and reused across a long thread.

Release calendar app

"Show me the AUD release calendar"

release_calendar(currency="aud") -> ui://fxmacrodata/release-calendar.html

Interactive chart widget

"Show me a chart of AUD policy rate history"

indicator_visual_artifact(currency="aud", indicator="policy_rate")

FX pair comparison app

"Compare EUR and USD policy rates with carry context"

pair_intel_task(base="eur", quote="usd")

Macro heatmap app

"Show me the strongest and weakest macro prints across G10"

macro_heatmap_task(currencies="usd,eur,gbp,jpy", indicators="policy_rate,inflation,gdp")

Scenario modeler app

"What happens if the Fed hikes 50 bps more?"

policy_scenario_modeler_task(base="usd", quote="jpy", shock_leg="base", shock_bps=50)

Macro war room app

"Build me a live EUR/USD macro war room for USD GDP"

macro_war_room_task(base="eur", quote="usd", currency="usd", indicator="gdp")

Event replay app

"Replay USD GDP surprises against EUR/USD"

event_impact_replay_task(currency="usd", indicator="gdp", base="eur", quote="usd", lookback_events=12)

Quant scenario lab app

"Run a 30-day stress distribution for EUR/USD after a base-leg shock"

quant_scenario_lab_task(base="eur", quote="usd", shock_leg="base", shock_bps=50, annualized_volatility_pct=8, horizon_days=30)

Capabilities, Apps, and Tasks

Remote MCP transport

  • Streamable HTTP endpoint at https://fxmacrodata.com/mcp
  • Plain JSON responses for proxy/CDN compatibility
  • Stateless HTTP requests, so every call carries its own auth context

MCP Apps resources

Visual tools return structured data plus ui:// resource metadata so compatible hosts can render chart and workflow apps inline.

ui://fxmacrodata/indicator-chart.html
ui://fxmacrodata/comparison-chart.html
ui://fxmacrodata/release-calendar.html
ui://fxmacrodata/macro-heatmap.html
ui://fxmacrodata/scenario-modeler.html
ui://fxmacrodata/macro-war-room.html
ui://fxmacrodata/event-impact-replay.html
ui://fxmacrodata/quant-scenario-lab.html
ui://fxmacrodata/subscribe-cta.html

Task-capable tools

Advanced workflow tools can be called like normal tools. Hosts that support experimental MCP Tasks can also create a task, poll status with tasks/get, and retrieve the final payload when complete.

macro_briefing_task known_at_time_task fx_backtest_task macro_research_pack_task portfolio_risk_engine_task

Built-in prompts

Prompt-aware clients can discover reusable FX workflows through prompts/list and invoke them with prompts/get.

macro_briefing rate_decision_brief pair_analysis pre_central_bank_decision_brief post_release_trade_summary pair_risk_check week_ahead_macro_plan visualize_macro_series

Tool Catalog

30 tools

FXMacroData exposes a read-only tool surface. The detailed cards below cover the core tools most users call directly; the complete public tool set is grouped here for quick discovery.

Core data

ping data_catalogue indicator_query release_calendar forex market_sessions cot_data commodities official_dataset_family

Visual artifacts

indicator_visual_artifact forex_visual_artifact commodities_visual_artifact cot_visual_artifact policy_rate_differential_visual_artifact

App and research workflows

macro_briefing_task indicator_intel_task pair_intel_task macro_heatmap_task policy_scenario_modeler_task macro_war_room_task event_impact_replay_task quant_scenario_lab_task

Decision and portfolio tasks

known_at_time_task macro_regime_classifier_task release_risk_score_task portfolio_risk_engine_task fx_trade_setup_task fx_backtest_task macro_research_pack_task subscribe_for_mcp_access
data_catalogue read-only
currency

Returns all available indicators and metadata for a given currency code.

Input: currency (e.g. "usd") Output: {currency, catalogue[]}
indicator_query read-only
currency · indicator · dates

Returns macroeconomic indicator time series for a currency. Supports policy_rate, inflation, gdp, employment, and more.

Input: currency, indicator, start_date?, end_date? Output: {currency, indicator, data[]}
indicator_visual_artifact visual
currency · indicator · dates

Returns indicator time series with MCP Apps metadata so compatible clients can render an interactive chart artifact in-context.

Input: currency, indicator, start_date?, end_date? Output: structuredContent + chart resource
release_calendar read-only app
currency · indicator?

Returns upcoming release timestamps with optional indicator filtering, plus Release Calendar App metadata for compatible hosts.

Input: currency, indicator? Output: {currency, timezone, data[]} + resource_link App: ui://fxmacrodata/release-calendar.html
cot_data read-only
currency · dates

Returns CFTC Commitment of Traders (COT) weekly positioning data for a currency's FX futures contract.

Input: currency, start_date?, end_date? Output: {currency, data[]}
commodities read-only
indicator · dates

Returns commodity and energy indicator time series. Covers gold, oil (Brent/WTI), and natural gas.

Input: indicator, start_date?, end_date? Output: {indicator, data[]}
known_at_time_task task
currency · indicator · as_of

Returns the point-in-time-safe slice of a macro series using announcement timestamps as the integrity boundary.

Input: currency, indicator, as_of, start_date?, end_date? Output: {known_rows[], latest_known, integrity}
macro_regime_classifier_task task
currency

Classifies a currency's macro regime from policy, inflation, growth, and labor context with explicit confidence notes.

Input: currency, start_date?, end_date? Output: {regime, latest, signals, confidence_notes}
release_risk_score_task task
base · quote

Ranks the next release slate for a pair using pair-aware heuristic impact weights.

Input: base, quote, horizon_events? Output: {events[], top_risk, methodology}
portfolio_risk_engine_task task
portfolio

Evaluates an FX portfolio with stress PnL, concentration diagnostics, currency exposure, and event-at-risk ranking from release calendars.

Input: positions_json, stress_shock_pct?, horizon_events? Output: {portfolio, positions, exposure_by_currency, event_risk, risk_flags}
fx_trade_setup_task task
base · quote

Builds a trader-facing FX pair setup with directional bias, macro differentials, catalyst ranking, execution window context, and invalidation notes.

Input: base, quote, horizon_events?, include_cot? Output: {bias, spot_context, catalysts, execution, quality}
fx_backtest_task task
base · quote · dates

Runs a transparent rule-based FX backtest with carry/momentum signals, benchmark comparison, equity curve output, and optional release-window event gating.

Input: base, quote, start_date?, end_date?, strategy?, momentum_lookback?, transaction_cost_bps?, initial_capital?, event_gated?, event_window_days? Output: {metrics, benchmark, assumptions, series.equity_curve}
macro_research_pack_task task
currency · indicator

Builds a reusable research payload that combines catalogue validation, series history, next release timing, and optional FX context.

Input: currency, indicator, base?, quote?, start_date?, end_date? Output: {catalogue, series, next_release, fx_context}

Research Playbooks

The best MCP workflows combine discovery, exact data retrieval, and a final synthesis step. These playbooks are the patterns we recommend for analysts, traders, and agent builders who want reliable macro answers instead of one-off tool calls.

Central-bank decision day

Use this before a Fed, ECB, BoE, BoJ, RBA, BoC, SNB, or RBNZ decision. The assistant should check the latest policy rate, inflation path, labor market, next scheduled release, and regime classification before writing the brief.

macro_regime_classifier_task(currency="usd") -> indicator_query(policy_rate) -> release_calendar(policy_rate)

Post-release FX reaction

Use this after CPI, GDP, payrolls, unemployment, or retail sales prints. The agent should compare the latest row to prior context, replay recent event history, and map implications to the relevant FX pair.

event_impact_replay_task(currency="usd", indicator="gdp", base="eur", quote="usd")

Pre-trade macro checklist

Use this before expressing a view in a currency pair. The assistant should inspect spot context, carry, inflation divergence, upcoming releases, current sessions, and COT positioning where available.

fx_trade_setup_task(base="eur", quote="usd", horizon_events=4)

Portfolio event-risk scan

Use this when you have several FX positions and need to know which upcoming events matter most. The task maps exposures by currency, estimates stress PnL, and ranks event risks.

portfolio_risk_engine_task(positions_json='[{"base":"eur","quote":"usd","side":"long","notional":100000}]')

Point-in-time backtest hygiene

Use this when a strategy depends on macro releases. The assistant should avoid lookahead by filtering rows through announcement timestamps and, when relevant, event-gating the backtest window.

known_at_time_task(currency="usd", indicator="gdp", as_of="2025-01-15")

Agent-built macro apps

Use this when a coding agent is building dashboards, notebooks, alerts, or widgets. Start with catalogue discovery, ask for exact endpoint shapes, then generate code against production URLs and query-parameter auth examples.

data_catalogue(currency="aud") -> indicator_query(currency="aud", indicator="policy_rate")

Usage Examples

Connectivity check

"Run the FXMacroData ping tool"

ping()

USD inflation time series

"Get USD inflation data from 2024-01-01 to 2025-01-01"

indicator_query(currency="usd", indicator="inflation", start_date="2024-01-01", end_date="2025-01-01")

AUD catalogue discovery

"What AUD indicators are available?"

data_catalogue(currency="aud")

USD release calendar

"Show upcoming USD GDP release dates"

release_calendar(currency="usd", indicator="gdp")

EUR/USD spot rates

"Show EUR/USD spot rates with RSI and SMA"

forex(base="eur", quote="usd", start_date="2024-01-01", end_date="2024-12-31", indicators="sma_20,rsi_14")

Chart artifact — EUR policy rate

"Plot the EUR policy rate as a chart"

indicator_visual_artifact(currency="eur", indicator="policy_rate")

Live FX sessions

"What FX sessions are open right now?"

market_sessions()

GBP COT positioning

"Show GBP futures positioning data"

cot_data(currency="gbp", start_date="2024-01-01")

Gold price series

"Get gold prices for 2024"

commodities(indicator="gold", start_date="2024-01-01", end_date="2024-12-31")

Cross-market heatmap

"Show me macro winners and losers across USD, EUR, GBP, and JPY"

macro_heatmap_task(currencies="usd,eur,gbp,jpy", indicators="policy_rate,inflation,gdp")

Policy scenario modeler

"What if the Fed hikes 50 bps more?"

policy_scenario_modeler_task(base="usd", quote="jpy", shock_leg="base", shock_bps=50)

Macro war room intelligence

"Assemble a macro war room for EUR/USD and USD GDP"

macro_war_room_task(base="eur", quote="usd", currency="usd", indicator="gdp")

Point-in-time event replay

"Replay recent USD GDP events with EUR/USD context"

event_impact_replay_task(currency="usd", indicator="gdp", base="eur", quote="usd", lookback_events=12)

Quant scenario stress lab

"Run an advanced EUR/USD scenario with volatility bands"

quant_scenario_lab_task(base="eur", quote="usd", shock_leg="base", shock_bps=50, annualized_volatility_pct=8, horizon_days=30)

Point-in-time macro slice

"Show only what was known about USD GDP by January 15, 2025"

known_at_time_task(currency="usd", indicator="gdp", as_of="2025-01-15T00:00:00Z")

Macro regime classifier

"Classify the current USD macro regime"

macro_regime_classifier_task(currency="usd")

Pair release risk scoring

"What are the biggest scheduled risks for EUR/USD next?"

release_risk_score_task(base="eur", quote="usd", horizon_events=6)

Portfolio risk engine

"Score risk and event exposure for my EUR/USD and GBP/USD book"

portfolio_risk_engine_task(positions_json='[{"base":"eur","quote":"usd","side":"long","notional":100000},{"base":"gbp","quote":"usd","side":"short","notional":80000}]', stress_shock_pct=1.5, horizon_events=5)

Trader-ready FX setup

"Build me a trade setup for EUR/USD with catalysts and invalidation notes"

fx_trade_setup_task(base="eur", quote="usd", horizon_events=4)

Event-gated strategy backtest

"Backtest EUR/USD carry + momentum around macro release windows with realistic trading costs"

fx_backtest_task(base="eur", quote="usd", start_date="2024-01-01", end_date="2025-01-01", strategy="carry_momentum", momentum_lookback=10, transaction_cost_bps=2.0, event_gated=true, event_window_days=1)

Persistent research pack

"Build one canonical research payload for USD GDP with EUR/USD context"

macro_research_pack_task(currency="usd", indicator="gdp", base="eur", quote="usd")

Authentication

No auth Public (USD)
  • Connect with just the bare URL
  • USD indicators (last 365 days), FX rates, catalogue, calendar, sessions
  • No API key or OAuth required
Full access OAuth 2.0 + PKCE
  • Authorization code flow with PKCE
  • Scope: fxmacrodata.read
  • Bearer transport: Authorization: Bearer <token>
  • Dynamic Client Registration for clients that self-register
Full access API Key
  • Append to MCP URL as query param
  • /mcp?api_key=YOUR_KEY
  • Best for IDE / SDK runtimes without OAuth
Access tiers: USD indicators (most recent 365 days), FX rates, catalogue, calendar, and sessions are free — no key needed. Non-USD indicators, the full USD historical archive, COT, and commodities require an API key. Get access →

OAuth endpoints

Authorization:https://fxmacrodata.com/api/oauth/authorize
Token:https://fxmacrodata.com/api/oauth/token
Registration:https://fxmacrodata.com/api/oauth/register
Metadata:https://fxmacrodata.com/.well-known/oauth-authorization-server
Protected resource:https://fxmacrodata.com/api/.well-known/oauth-protected-resource

OAuth client support

  • Public PKCE clients with token_endpoint_auth_method=none
  • Confidential clients using client_secret_post or client_secret_basic
  • Bearer tokens resolved back to the API-key subscription context for protected tools

Callback allowlist patterns

http://localhost:6274/oauth/callback
http://localhost:6274/oauth/callback/debug
http://localhost:*/* and http://127.0.0.1:*/* for local tooling callbacks
https://vscode.dev/redirect and https://*.vscode.dev/redirect
https://claude.ai/api/mcp/auth_callback
https://claude.com/api/mcp/auth_callback
https://chatgpt.com/connector/oauth/{callback_id}
https://chatgpt.com/connector_platform_oauth_redirect
https://chat.openai.com/aip/g-*/oauth/callback

Server Details

MCP base URL
https://fxmacrodata.com/mcp
Transport
Streamable HTTP
Security
HTTPS / TLS
Status
General Availability
Deployment
Google Cloud Run
REST routes
48 public endpoints

Quick Validation

bash
# API health check
curl -i https://fxmacrodata.com/api/v1/ping

# OAuth metadata
curl -i https://fxmacrodata.com/.well-known/oauth-authorization-server

# OAuth metadata (API alias)
curl -i https://fxmacrodata.com/api/.well-known/oauth-authorization-server

# MCP route probe (JSON guidance expected for plain GET)
curl -i https://fxmacrodata.com/mcp

# MCP initialize
curl -i -X POST "https://fxmacrodata.com/mcp" \
    -H "Content-Type: application/json" \
    -H "Accept: application/json" \
    --data '{"jsonrpc":"2.0","id":"1","method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"curl","version":"1.0"}}}'

# MCP tools/list
curl -i -X POST "https://fxmacrodata.com/mcp" \
    -H "Content-Type: application/json" \
    -H "Accept: application/json" \
    --data '{"jsonrpc":"2.0","id":"2","method":"tools/list","params":{}}'

# Authenticated indicator_query
curl -i -X POST "https://fxmacrodata.com/mcp" \
    -H "Content-Type: application/json" \
    -H "Accept: application/json" \
    -H "Authorization: Bearer ACCESS_TOKEN" \
    --data '{"jsonrpc":"2.0","id":"3","method":"tools/call","params":{"name":"indicator_query","arguments":{"currency":"usd","indicator":"inflation","start_date":"2024-01-01","end_date":"2025-01-01"}}}'

Error Reference

Status Meaning
406Unsupported Accept header or wrong HTTP method (for example, non-JSON protocol calls)
400Invalid MCP request format
401/403Authentication or authorization failure on protected data
200Valid MCP initialize with Accept: application/json returns server capabilities and instructions

Support & Privacy

AI Answer-Ready

Key Facts

Page
MCP Server
Section
Documentation
Canonical URL
https://fxmacrodata.com/documentation/mcp-server
Source
FXMacroData editorial and official publisher references
Last Updated
See page metadata

Provenance And Trust

Cite the canonical URL and source field above. Where available, this page maps to official publisher releases and timestamped updates.

Quick Q&A

What is this page about? This page explains MCP Server with directly usable context for trading, research, and API workflows.

What source should be cited? Use the canonical URL and the listed source field; cite official publisher references when available.

How fresh is this content? The last updated value above reflects the page metadata or latest available data timestamp.

Can this be used in AI assistants? Yes. This section is intentionally structured for retrieval and citation in chat assistants.

Prompt Packs

Use these in ChatGPT, Claude, Gemini, Mistral, Perplexity, or Grok for consistent source-aware outputs.

Share page X LinkedIn Email