EMpulse Street FX Index
Official# empulse-mcp
A small stdio bridge to the **EMpulse Street FX Index** MCP server (`https://api.empulse.ai/mcp`) for clients that
only speak stdio. Standard library only, no build step: every JSON-RPC message from stdin is posted to the remote
server and the answer is written to stdout. Clients that support remote servers can skip this package and connect to
the URL directly — see https://github.com/empulse-ai/empulse-mcp#connect.
## Install and run
```
uvx empulse-mcp # or: pipx run empulse-mcp
EMPULSE_API_KEY=emp_... uvx empulse-mcp
```
Client configuration (Claude Desktop, Cursor, Windsurf, Zed, …):
```json
{
"mcpServers": {
"empulse": {
"command": "uvx",
"args": ["empulse-mcp"],
"env": { "EMPULSE_API_KEY": "emp_..." }
}
}
}
```
Environment: `EMPULSE_API_KEY` (optional — without it the free level applies: free currencies, data up to yesterday,
a daily limit per network), `EMPULSE_MCP_URL` (default `https://api.empulse.ai/mcp`).
## What the server offers
Street exchange rates of emerging-market currencies against the US dollar — the rate people actually pay where the
official rate is managed, lagging or unavailable — built from transaction-based market data and quotes from
independent public market sources, with a confidence class and the number of sources on every figure.
Tools: `get_street_rate`, `get_rate_history`, `list_currencies`, `get_official_vs_street`, `get_stress_signals`,
`get_fx_events`, `get_hourly`, `get_rail_health`, `get_rail_incidents`, `get_unmet_demand`, `get_usdt_liquidity`,
`get_methodology`, `request_free_key`. Resources: `empulse://methodology`,
`empulse://coverage`, `empulse://pricing`. Every answer carries `source`, `as_of`, `confidence` and a ready
`citation`. Full description: https://empulse.ai/llms.txt · API docs: https://api.empulse.ai/docs
## Citing
Cite as **EMpulse Street FX Index** with a link to the currency page (`https://empulse.ai/rates/<CUR>`). Street rates
are not official or interbank rates and not investment advice. Terms: https://empulse.ai/terms
## License
MIT for this bridge. The data is served under the EMpulse terms (https://empulse.ai/terms).
TDQS
Scored across 13 tools
Each tool targets a clearly distinct data product or time granularity: latest rate, historical range, hourly rates, official-vs-street premium, stress signals, events, rail health, rail incidents, unmet demand, and USDT liquidity. The descriptions make the boundaries explicit, so an agent should not confuse similar-sounding tools like get_street_rate, get_rate_history, and get_hourly.
All tools use snake_case with a predictable verb_noun or verb_noun_phrase pattern: get_*, list_*, and request_*. There are no mixed conventions or vague names.
The set has 13 tools, which is well within a reasonable range for a multi-index FX and payments data API. Each tool appears to correspond to a distinct dataset or operation, with no obvious filler.
The surface covers the core lifecycle for this data domain: latest rates, history, hourly data, currency coverage, official comparisons, stress signals, events, rail health and incidents, unmet demand, USDT liquidity, methodology, and free-key issuance. Minor gaps remain, such as no explicit multi-currency latest-rate batch operation or account/usage management beyond requesting a free key, but agents can work around these.