Live MCP · Streamable HTTP OAuth 2.0 + PKCE

FXMacroData MCP Server

Connect Claude, Cursor, VS Code, or any MCP-compatible AI host to live central bank and macroeconomic data. Ask questions in plain English — no code required.

https://fxmacrodata.com/mcp
9 tools available
7 REST routes

Quick Connect

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

    USD data and public tools work immediately — no API key needed. To unlock all 18 currencies, enter your API key when the OAuth prompt appears.

  4. 4

    Verify the connection

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

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

Use indicator_visual_artifact to render an interactive chart widget directly inside AI clients that support MCP Apps.

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%.

Tool Catalog

6 tools
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
currency · indicator?

Returns upcoming release timestamps with optional indicator filtering.

Input: currency, indicator? Output: {currency, indicator, data[]}
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[]}

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")

Authentication

No auth Public (USD)
  • Connect with just the bare URL
  • USD indicators, 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>
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, FX rates, catalogue, calendar, and sessions are free — no key needed. Non-USD indicators, 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
Metadata:https://fxmacrodata.com/.well-known/oauth-authorization-server

Allowed OAuth callbacks

http://localhost:6274/oauth/callback
http://localhost:6274/oauth/callback/debug
https://claude.ai/api/mcp/auth_callback
https://claude.com/api/mcp/auth_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
7 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

# MCP route probe (406 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 (replace SESSION_ID)
curl -i -X POST "https://fxmacrodata.com/mcp" \
    -H "Content-Type: application/json" \
    -H "Accept: application/json" \
    -H "Mcp-Session-Id: SESSION_ID" \
    --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" \
    -H "Mcp-Session-Id: SESSION_ID" \
    --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 — expected for plain GET probes
400Invalid MCP request format
401/403Authentication or authorization failure on protected data
200Valid MCP initialize with Accept: application/json returns session id

Support & Privacy