Australian Bureau of Statistics (ABS)

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

Installation

npm install

Development

Prerequisites

  • Node.js 18 or higher
  • npm 8 or higher

Building

npm run build

Running

npm start

Development Tools

  • npm run build: Build the TypeScript code
  • npm start: Run the server
  • npm run inspector: Run the MCP inspector for testing

Project Structure

src/ ├── index.ts # Main server implementation ├── services/ │ └── abs/ │ ├── ABSApiClient.ts # ABS API communication │ └── DataFlowService.ts # Data flow management and caching ├── types/ │ └── abs.ts # TypeScript type definitions └── utils/ └── logger.ts # Logging configuration

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

  1. Close Claude Desktop if it's running
  2. Start the ABS MCP server: npm start
  3. Start Claude Desktop
  4. The ABS tools should appear in the "Available MCP Tools" window

API Documentation

For more information about the ABS Data API:

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Submit a pull request

License

MIT License

A
security – no known vulnerabilities (report Issue)
F
license - not found
A
quality - confirmed to work

Provides access to the Australian Bureau of Statistics (ABS) Data API. This server allows AI assistants to query and analyze ABS statistical data.

  1. Features
    1. Installation
      1. Development
        1. Prerequisites
          1. Building
            1. Running
              1. Development Tools
              2. Project Structure
                1. Implementation Details
                  1. ABS API Client
                    1. Data Flow Service
                      1. Logging
                      2. Integration with Claude Desktop
                        1. API Documentation
                          1. Contributing
                            1. License