SM

seansoreilly/mcp-server-abs

Developer tools

이 페이지는 AI로 자동 번역되었습니다. 기술적인 세부 사항은 원문을 확인하세요. 원문 보기

9 stars 10 forks 품질 66 트렌드 25

MCP 서버 호주 통계국

개요

MCP (Model Context Protocol) 서버는 Australian Bureau of Statistics (ABS) Data API에 액세스 할 수 있습니다. 이 서버는 SDMX-ML API를 통해 ABS 통계 데이터를 쿼리하고 분석 할 수 있습니다. - — id (e.g. C21 G01 LGA)에 의해 ABS 데이터셋을 태깅하고 SDMX-JSON 페이로드를 텍스트와 구조화콘텐츠와 리소스 링크가 상류 URL에 반환합니다. 제목, 읽기 전용 주석 및 outputSchema를 선언합니다. MCP 프로토콜 개정 2025-11-25 (SDK v2, 레거시 시대)에 내장되어 있습니다. ABSApiClient 및 DataFlowService는 dataset discovery, 다중 형식 지원 (JSON/CSV/XML) 및 구성 가능한 재생 간격으로 on-disk 캐싱을 구현합니다. 그들은 완전히 테스트하지만, 그래서 도구 표면이 아직 — a list dataflows tool is a natural next step. 아래 섹션을 도구 표면의 아닌 서비스 층의 설명으로 취급합니다. ABS Data API가 열려 있습니다. - 서버가 필요합니다. 모든 로깅은 , 결코 stdout - stdout는 MCP JSON-RPC 채널을 운반합니다.

개요(AI 번역)

MCP (Model Context Protocol) 서버는 Australian Bureau of Statistics (ABS) Data API에 액세스 할 수 있습니다. 이 서버는 SDMX-ML API를 통해 ABS 통계 데이터를 쿼리하고 분석 할 수 있습니다.

특징

현재 서버는 ** 하나 도구 **:

-query_dataset — id(e.g. C21_G01_LGA)에 의해 ABS dataset를 태치하고 반환합니다. SDMX-JSON 페이로드 모두 텍스트와 structuredContent, 와 resource_link] 상류 URL에. title, 읽기 전용 주석 및 outputSchema를 선언합니다.

MCP 프로토콜 개정 2025-11-25 (SDK v2, 레거시 시대)에 내장되어 있습니다.

아직 노출되지 않음

ABSApiClient 과 DataFlowService] dataset discovery, 멀티 포맷 구현 지원 (JSON/CSV/XML), 그리고 설정할 수 있는 재생 간격으로 on-disk 캐싱. 그들은 완전히 테스트되었지만 현재 서버로 연결되지 않음, 그래서 도구 없음 표면이 아직 — list_dataflows 도구는 자연의 다음 단계입니다. 치료 방법 아래 섹션의 설명으로 서비스 층, 도구 표면의 아닙니다.

구성

| 변하기 쉬운 | 기본 | 용도 | 인포메이션 | ABS_API_BASE | https://data.api.abs.gov.au | 아BS API 원산지, 스텁에 점멸 |

이 페이지는 AI로 자동 번역되었습니다. 기술적인 세부 사항은 원문을 확인하세요.

README

원문 README의 일부입니다. 원문 보기.

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

The server currently exposes one tool:

  • query_dataset — fetches an ABS dataset by id (e.g. C21_G01_LGA) and returns the SDMX-JSON payload as both text and structuredContent, with a resource_link to the upstream URL. Declares a title, read-only annotations, and an outputSchema.

Built on MCP protocol revision 2025-11-25 (SDK v2, legacy era) over stdio.

Not yet exposed

ABSApiClient and DataFlowService implement dataset discovery, multi-format support (JSON/CSV/XML), and on-disk caching with a configurable refresh interval. They are fully tested but not currently wired into the server, so no tool surfaces them yet — a list_dataflows tool is the natural next step. Treat the section below as a description of the service layer, not of the tool surface.

Configuration

Variable Default Purpose
ABS_API_BASE https://data.api.abs.gov.au ABS API origin; override to point at a stub
ABS_LOG_LEVEL debug Winston log level
ABS_LOG_DIR /logs Directory for log files
ABS_CACHE_FILE /../cache/dataflows.json Where the dataflow cache is written
ABS_CACHE_REFRESH_HOURS 24 How long a cached dataflow list stays fresh
ABS_REQUEST_TIMEOUT_MS 30000 Request timeout for ABS API calls

The ABS Data API is open — the server needs no API key or credentials.

All logging goes to stderr, never stdout — stdout carries the MCP JSON-RPC channel.

Installation

npm install

Docker

A container image is published to GitHub Container Registry on every push to main, tagged latest, main, sha-, and — for v* tags — the semver version.

docker pull ghcr.io/seansoreilly/mcp-server-abs:latest
docker run -i --rm ghcr.io/seansoreilly/mcp-server-abs:latest

-i is required: the server speaks MCP over stdio, so stdin and stdout are the transport. There is no port to publish and no HTTP endpoint to health-check.

The image runs as the unprivileged node user and writes its logs and dataflow cache to /data. Mount a volume there to keep the cache across restarts:

docker run -i --rm -v abs-mcp-data:/data ghcr.io/seansoreilly/mcp-server-abs:latest

Every variable in Configuration can be passed with -e; the image presets ABS_CACHE_FILE=/data/dataflows.json and ABS_LOG_DIR=/data/logs.

docker run -i --rm -e ABS_LOG_LEVEL=info -e ABS_CACHE_REFRESH_HOURS=6 \
  ghcr.io/seansoreilly/mcp-server-abs:latest

To build locally instead of pulling:

docker build -t abs-mcp-server .
./scripts/smoke-test.sh abs-mcp-server   # drives an MCP initialize over stdio

As a sidecar

GitHub에서 전체 README 보기

설치

docker run -i --rm -v abs-mcp-data:/data ghcr.io/seansoreilly/mcp-server-abs:latest
MCP 초보자라면? mcpskill.org 가이드부터 시작하세요 →

설정

{ "mcpServers": { "abs": { "command": "node", "args": ["/absolute/path/to/mcp-server-abs/build/index.js"] } } }