
Fxabsolute
io.github.varsansriPublished by GitHub account varsansriv0.1.0Updated Oct 24, 2026
Five years of 1-minute forex, index and crypto candles, plus a live bridge to a trader's chart.
Overview
Local MCP server that gives an assistant numeric forex, index and crypto candle history from FXAbsolute, plus a live bridge to a trader's chart.
- What you can do
- List available instruments, bar counts and fields, and fetch raw OHLC candles over a date range at timeframes from M1 to W1. Scan specific bars of a trading session across months and summarise them, with coverage warnings for missing weekdays. Group movement statistics by hour, weekday, month or year, and check whether a price level held and how price reacted. Pair with an open FXAbsolute chart via a six-character code, wait for the trader's messages, reply into the chart panel, show a thinking indicator and disconnect.
- When to use it
- Useful when an assistant needs exact price numbers for backtesting or session analysis instead of reading chart screenshots, or when a trader wants an agent answering questions inside a live FXAbsolute chart session.
- Requirements
- Runs locally over stdio, typically via npx with the fxabsolute-mcp package; Node.js is needed. No API key or account. Data is fetched from the FXAbsolute site by default and cached under the user's cache directory, about 38 MB per instrument, so network access is needed on first use. Optional environment variables FXA_DATA_DIR and FXA_ORIGIN change the data source.
Installation
In SourceWeft
- Open Fxabsolute in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
fxabsolute-mcp
Connects a coding agent directly to FXAbsolute's candle history over MCP.
The point is to stop the model looking at pictures of charts. A screenshot forces it to recover prices from pixels; these tools hand it the numbers, so "what does the New York open actually do" becomes a query instead of a guess.
Setup
Nothing to install and no API key. The server fetches what it needs and caches it.
Claude Code
Cursor, Windsurf, Claude Desktop, or anything reading a config file
Verify with claude mcp list, or just ask your agent "what instruments does fxabsolute
have?" — it should answer with fifteen, and tell you volume is not available.
Working on the server itself
Where the data comes from
In order:
FXA_DATA_DIR— an explicit directory of.binfiles../public/data— automatic when running inside the checkoutFXA_ORIGIN(defaulthttps://www.fxabsolute.com) — fetched once per instrument and cached under~/.cache/fxabsolute-mcp, so it works from any machine
~38 MB per instrument, downloaded lazily and only once.
Tools
Live chart bridge
A trader opens the backtester, switches to the AI tab, and reads out the six-character
code. Their agent calls fxa_connect_chart, then loops on fxa_wait_for_message → answer →
fxa_reply. The site holds no API key and pays for no inference — every trader brings their
own agent.
Each message carries a snapshot of the chart: instrument, timeframe, replay position, the
current candle, every drawing as real geometry (height in pips, bars spanned, slope per bar,
fib levels, whether price sits inside a box), open trades and running performance. The agent
reads numbers, so it can check a claim with fxa_session_scan instead of guessing from an
image.
Transport is a Supabase Realtime broadcast channel, so the browser and the agent need not be
on the same machine — a chart on a phone pairs with a terminal on a laptop. Credentials come
from /bridge-config.json on the site, which carries only the publishable key already present
in every visitor's browser bundle, so pairing needs no setup.
The replay position is included with a note telling the agent not to reveal bars the trader has not reached. Backtesting is worthless if the assistant spoils the future.
The motivating query — the first 5-minute candle of the New York session, every day, for six months — is one call:
Two things worth knowing
There is no volume. The binary format is 20 bytes per candle: uint32 timestamp plus four
float32 OHLC values. Volume was never stored, so no tool reports it and none invents a proxy
silently — rangePips is offered instead, and every relevant response says so. Adding real
volume means re-fetching all ~543 MB from Dukascopy into a wider record format.
Timeframes are bucketed on wall-clock time, not by array index. The browser chart
aggregates every N bars, which is right for bar-by-bar replay but drifts for analysis: forex
data has weekend and holiday gaps, so the Nth group of 60 M1 bars stops lining up with a real
clock hour and an "H1 candle" can straddle a weekend. Here, bars are bucketed on
floor(ts / period), so every bar sits on a true boundary and gaps produce no bar rather than
a synthetic one.
Session windows are evaluated in exchange-local time with daylight saving resolved to the second, so "the 09:30 bar" is the 09:30 bar in both January and July rather than drifting an hour each spring.
fxa_session_scan also reports coverage: how many weekdays in the window produced no data at
all. This matters more than it sounds — SPX500 is missing about 19% of weekdays in the first
half of 2024, and without the warning a scan over that period returns clean-looking statistics
built on a fifth less data than you asked for.
Source: README.md at commit 01c2c61
Tools
0Version history
1- v0.1.0LatestSep 16, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts