readrba-mcp
This server provides read-only access to public Reserve Bank of Australia (RBA) economic data via six tools:
Search RBA series (
rba_search_series): Find data series by keyword or list all available series in the built-in catalogue.Search RBA tables (
rba_search_tables): Search statistical table listings (with a "readable" flag), optionally refreshing from the RBA website.Get RBA series data (
rba_get_series): Download actual values for one or more series IDs (e.g.,GCPIAG) with current, historical, or both vintages and optional date filtering.Get RBA table data (
rba_get_table): Retrieve entire statistical tables (e.g.,G1) by table number, with the same vintage and date-range options.Get RBA forecasts (
rba_get_forecasts): Access the latest or full historical public forecasts, filterable by series name and publication/observation dates.Get RBA cash rate (
rba_get_cash_rate): Obtain the cash rate target, interbank overnight rate, or both, with optional date range.
All tools support pagination (offset/max_rows) and return structured JSON responses with metadata (total_rows, returned_rows, has_more, truncated), ISO date formatting (YYYY-MM-DD), and null for missing values.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@readrba-mcpWhat is the current RBA cash rate?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
readrba-mcp
readrba-mcp is a local Matt Cowgill Protocol (MCP) server for public
Reserve Bank of Australia data. It exposes six read-only tools backed by the
R package readrba.
This repository is a prototype and has not been tested extensively!!! Use with Caution!!!
How it works
The TypeScript server handles MCP schemas, validation, timeouts, and stdio.
Each tool call starts one R process. The R worker loads the required packages,
runs one readrba request, and returns one JSON result.
R and package diagnostics go to stderr. Stdout is reserved for MCP JSON-RPC.
Related MCP server: AusEcon MCP for ABS | RBA | APRA data
Requirements
Node.js 20 or later.
R with
Rscriptavailable.R packages:
pacman,readrba,jsonlite,dplyr,tibble, andpurrr.
Install the R packages once:
install.packages(
c("pacman", "readrba", "jsonlite", "dplyr", "tibble", "purrr")
)Then install and build the server:
git clone https://github.com/dominic-behrens/readrba-mcp.git
cd readrba-mcp
npm install
npm run buildRun the server directly:
npm startIt will wait for an MCP client on stdin.
Tools
Every tool accepts offset, which defaults to 0, and max_rows, which
defaults to 1000. offset must be a non-negative integer. max_rows must
be a positive integer and has no configured ceiling.
Tool | Main arguments |
| Optional |
| Optional |
| Required |
| Required |
|
|
|
|
vintage accepts current, historical, or both. type accepts target,
interbank, or both.
For a both table or series request, overlapping observations are retained.
The response includes rba_vintage; the server does not deduplicate the two
sources.
Results and errors
Filters and deterministic sorting are applied before pagination. Successful tools return the same object as JSON text and as MCP structured content:
{
"data": [],
"total_rows": 0,
"returned_rows": 0,
"offset": 0,
"max_rows": 1000,
"has_more": false,
"truncated": false
}has_more reports whether later rows remain. truncated is true when the
response does not contain every matching row, including when offset skips
earlier rows.
Dates are serialized as YYYY-MM-DD. Missing R values are JSON null.
Validation, R, download, timeout, worker, and unknown-series failures are
returned as MCP tool errors with isError: true.
Configuration
Environment variable | Default | Purpose |
|
| Rscript executable |
|
| Directory for RBA spreadsheet downloads and R temporary files |
|
| Positive worker timeout in milliseconds |
On some corporate Windows networks, readrba may also require
R_READRBA_DL_METHOD=wininet.
readrba can overwrite downloaded spreadsheets in
READRBA_DOWNLOAD_PATH. The directory is outside this repository by default,
so raw downloads are not committed. These files are package working files,
not a stable or complete response cache.
Client setup
Build the server first. Replace each placeholder path below with a path that is valid in the client’s operating environment.
Windows
Use native Windows paths when the client runs on Windows:
{
"mcpServers": {
"readrba": {
"command": "node",
"args": ["C:\\path\\to\\readrba-mcp\\dist\\index.js"],
"env": {
"RSCRIPT_PATH": "\\path\\to\\rscript"
}
}
}
}WSL
Use WSL paths when Node runs in WSL. A Windows R installation can be called through its mounted path:
{
"mcpServers": {
"readrba": {
"command": "node",
"args": ["/path/to/readrba-mcp/dist/index.js"],
"env": {
"RSCRIPT_PATH": "\\path\\to\\rscript"
}
}
}
}Alternatively, install R inside WSL and omit RSCRIPT_PATH if Rscript is on
PATH.
Codex
The current Codex CLI accepts a stdio command after -- and environment
variables through repeated --env options:
codex mcp add \
--env RSCRIPT_PATH=/path/to/Rscript \
readrba -- node /path/to/readrba-mcp/dist/index.jsSee the Codex MCP documentation for configuration scope and other options.
Claude Code
Claude Code uses the same command separator:
claude mcp add \
--env RSCRIPT_PATH=/path/to/Rscript \
readrba -- node /path/to/readrba-mcp/dist/index.jsUse --scope user or --scope project if required. See
Claude Code MCP setup.
Other stdio clients
Configure:
command:
nodearguments:
/path/to/readrba-mcp/dist/index.jsenvironment: set
RSCRIPT_PATHifRscriptis not onPATH
The process must receive MCP JSON-RPC on stdin and have exclusive use of stdout.
Development and tests
npm testThis builds strict TypeScript and exercises the built server through the MCP v2 client over stdio. It checks all six schemas, validation, pagination, structured content, ISO dates, JSON nulls, clean errors, and stderr isolation.
Run the offline R catalogue checks:
TEST_RSCRIPT_PATH=/path/to/Rscript npm run test:r:offlineRun live RBA smoke tests:
READRBA_LIVE_TEST=1 \
TEST_RSCRIPT_PATH=/path/to/Rscript \
npm run test:liveThe live tests cover CPI series GCPIAG, both vintages of table A1, latest
forecasts, and target, interbank, and combined cash rates.
Attribution
The server architecture is adapted from
jonobri/readabs-mcp. RBA data
access is provided by
MattCowgill/readrba.
This project is not affiliated with the Reserve Bank of Australia.
Licence
MIT. See LICENSE.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Flicense-qualityDmaintenanceAn MCP server that exposes Enable Banking API tools for interacting with bank accounts through Open Banking. It enables users to authenticate sessions, list accounts, and fetch transaction history or balances via a secure self-hosted server.Last updated2
- AlicenseAqualityAmaintenanceMCP server for structured Australian macroeconomic and financial data from the Australian Bureau of Statistics (ABS), the Reserve Bank of Australia (RBA), and the Australian Prudential Regulation Authority (APRA).Last updated4144MIT
- Flicense-qualityCmaintenanceA local MCP server that gives Claude and other MCP clients access to Federal Reserve Economic Data (FRED) — 800,000+ economic time series covering GDP, inflation, employment, interest rates, and more.Last updated1
- Alicense-qualityAmaintenanceMCP server providing one-call access to 100+ curated Australian government datasets across 9 sources, including ABS, RBA, ATO, and more.Last updated291MIT
Related MCP Connectors
MCP server for US Treasury Fiscal Data — debt, interest rates, exchange rates, and spending.
MCP server for live, sourced Brazilian public data from the official IBGE APIs.
This MCP server provides seamless access to Malaysia's government open data, including datasets, w…
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Dominic-Behrens/readrba-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server