
seansoreilly/mcp-server-abs
Developer tools이 페이지는 AI로 자동 번역되었습니다. 기술적인 세부 사항은 원문을 확인하세요. 원문 보기
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 andstructuredContent, with aresource_linkto the upstream URL. Declares atitle, read-only annotations, and anoutputSchema.
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
설치
docker run -i --rm -v abs-mcp-data:/data ghcr.io/seansoreilly/mcp-server-abs:latest설정
{
"mcpServers": {
"abs": {
"command": "node",
"args": ["/absolute/path/to/mcp-server-abs/build/index.js"]
}
}
}