ABS MCP Server
An MCP (Model Context Protocol) server that provides access to the Australian Bureau of Statistics (ABS) Data API. This server allows AI assistants to query and analyze ABS statistical data through the SDMX-ML API.
Features
Dynamic discovery of all available ABS datasets via SDMX-ML API
Query ABS datasets with optional filters
Support for multiple data formats (JSON, CSV, XML)
Built on the MCP protocol for seamless integration with AI assistants
Caching system for improved performance
Comprehensive logging and error handling
Related MCP server: Financial Datasets MCP Server
Installation
Development
Prerequisites
Node.js 18 or higher
npm 8 or higher
Building
Running
Development Tools
npm run build: Build the TypeScript codenpm start: Run the servernpm run inspector: Run the MCP inspector for testing
Project Structure
Implementation Details
ABS API Client
The ABSApiClient class handles communication with the ABS Data API:
Uses SDMX-ML format for data exchange
Supports multiple response formats (JSON, CSV, XML)
Implements proper error handling and logging
Configurable timeouts and retries
Data Flow Service
The DataFlowService class manages ABS data flows:
Dynamically fetches available datasets from ABS API
Implements caching with configurable refresh intervals
Provides methods for querying specific datasets
Handles data transformation and formatting
Logging
Comprehensive logging system using Winston:
Debug-level logging for development
Structured JSON logging format
Console and file transport options
Configurable log levels and formats
Integration with Claude Desktop
Close Claude Desktop if it's running
Start the ABS MCP server:
npm startStart Claude Desktop
The ABS tools should appear in the "Available MCP Tools" window
API Documentation
For more information about the ABS Data API:
Contributing
Fork the repository
Create a feature branch
Make your changes
Submit a pull request
License
MIT License