MCP ExplorerExplorer

Abs

@seansoreillyon a year ago
4 MIT
FreeCommunity
AI Systems
MCP server for Australian Bureau of Statistics

Overview

What is Abs

The ABS MCP Server is an MCP (Model Context Protocol) server that provides access to the Australian Bureau of Statistics (ABS) Data API, enabling AI assistants to query and analyze ABS statistical data through the SDMX-ML API.

Use cases

Use cases for the ABS MCP Server include data analysis for research, generating statistical reports, integrating ABS data into AI applications, and providing real-time access to Australian statistical information for decision-making.

How to use

To use the ABS MCP Server, install the necessary dependencies with ‘npm install’, build the project using ‘npm run build’, and start the server with ‘npm start’. Ensure that Node.js 18 or higher and npm 8 or higher are installed.

Key features

Key features include dynamic discovery of ABS datasets via the SDMX-ML API, querying capabilities with optional filters, support for multiple data formats (JSON, CSV, XML), a caching system for improved performance, and comprehensive logging and error handling.

Where to use

undefined

Content

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

Tools

No tools

Comments

Recommend MCP Servers

View All MCP Servers