Dbx
Query databases from AI agents using connections configured in DBX.
Descripción del creador (original en inglés)
BFS STAT-TAB PxWeb API for official Swiss statistics
Estos tres nunca se combinan en una sola puntuación: las opiniones, las mediciones y la popularidad son cosas distintas.
Todavía no escribimos un resumen sencillo para este. Abajo están los datos que leímos del registro.
Elige la app de IA que usas y copia la configuración.
Necesitas
¿Qué app usas?
Elige tu app arriba. La recordamos, así que la próxima vez el botón dirá “Instalar en …”.
Abre Claude Desktop → Settings → Developer → Edit Config y pega esto en claude_desktop_config.json
{
"mcpServers": {
"swiss-statistics": {
"command": "uvx",
"args": [
"swiss-statistics-mcp"
]
}
}
}Ejecuta esto en tu terminal
claude mcp add swiss-statistics -- uvx swiss-statistics-mcpPégalo en .cursor/mcp.json de tu proyecto, o en ~/.cursor/mcp.json
{
"mcpServers": {
"swiss-statistics": {
"command": "uvx",
"args": [
"swiss-statistics-mcp"
]
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
Pégalo en .vscode/mcp.json de tu proyecto
{
"servers": {
"swiss-statistics": {
"type": "stdio",
"command": "uvx",
"args": [
"swiss-statistics-mcp"
]
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
Este se ejecuta en tu computadora, y ChatGPT solo puede conectarse a servidores en internet. Elige otra app.
Tu elección se guarda en una cookie en este dispositivo; no necesitas cuenta.
Esta configuración se genera a partir de la ficha del creador en el registro. Si el README dice otra cosa, sigue el README.
Según cómo se conecta este servidor y la documentación de cada app, comprobado el 10 nov 2026.
Se ejecutan en tu computadora en
ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatRaycast
Se ejecuta en tu computadora; la lista de herramientas aparece en tu app de IA después de instalarlo.
Revisamos información que cualquiera puede ver; no hemos leído el código. Las revisiones que no aplican no se cuentan. · Revisado el 11 nov 2026
El nombre en el registro se verificó con la cuenta de GitHub malkreide, dueña del repo
Último cambio de código: hace 3 días
Todavía no hemos leído este repo en GitHub
Este se ejecuta en tu computadora; no hay endpoint en internet
Se ejecuta en tu computadora y usa ajustes locales en su lugar
Se ejecuta en tu computadora; solo podemos leer listas de herramientas de endpoints en internet
Comparado con todos los servidores activos de esta categoría en el registro. Las estrellas solo cuentan cuando quien lo publica es dueño del repo.
Superó 2 de 2 revisiones básicas aplicables. No hemos leído el código. Antes de agregar una clave o un token, revisa qué acceso pide el servidor y usa una clave que tenga solo los permisos que necesitas.
El registro no indica ninguna clave obligatoria, aunque algunos servidores te piden iniciar sesión la primera vez que los usas.
Se ejecuta en tu computadora. Tu app de IA lo inicia cuando hace falta, y los datos no pasan por los servidores del creador (a menos que el propio servidor llame a un servicio en línea).
El repo de GitHub cambió por última vez hace 3 días, y la última versión (0.8.0) llegó al registro el mes pasado.
Las apps compatibles con MCP, como Claude Desktop, Claude Code, Cursor y VS Code. También necesitas Python (uv) en tu computadora.
En la misma categoría: Dbx, MCP Toolbox for Databases, MCP Toolbox for Databases
Servidores de la misma categoría hechos por otros creadores, ordenados por estrellas.
Cómo leer una tarjeta:↓ Descargas por semanai★ Estrellas de GitHubiTres pilares: reseñas · revisiones · usoiActualizado = fecha en que se publicó la última versión en el registroi
Query databases from AI agents using connections configured in DBX.
MCP Toolbox for Databases enables your agent to connect to your database.
MCP Toolbox for Databases enables your agent to connect to your database.
Copiado tal cual del repo del creador. PopNx MCP no lo ha revisado ni lo respalda. Se quitaron HTML, imágenes y scripts. Los enlaces llevan fuera de este sitio.
🇨🇭 Part of the [Swiss Public Data MCP Portfolio](https://github.com/malkreide)
MCP Server for Swiss Federal Statistical Office (BFS) data via STAT-TAB PxWeb API — 682 datasets across 21 themes, no authentication required
This server is Alpha (0.x) as per the PyPI classifier. Until 1.0:
mainSee CHANGELOG.md for breaking changes.
swiss-statistics-mcp provides AI-native access to the Swiss Federal Statistical Office (BFS) via the STAT-TAB PxWeb API, without authentication:
| Property | Details |
|---|---|
| API | STAT-TAB PxWeb API v1 |
| Endpoint | https://www.pxweb.bfs.admin.ch/api/v1/ |
| Provider | Swiss Federal Statistical Office (BFS) |
| Datasets | 682 tables across 21 thematic areas |
| Languages | German (de), French (fr), Italian (it), English (en) |
| Licence | Open Government Data (OGD) — BFS Terms of Use |
| Authentication | None — fully public |
Anchor demo query: *"How many students attended lower secondary schools in the canton of Zurich in 2024?"* — real BFS figures, no hallucination.
# Clone the repository
git clone https://github.com/malkreide/swiss-statistics-mcp.git cd swiss-statistics-mcp
pip install -e .
uv pip install -e .
Or with uvx (no permanent installation):
uvx swiss-statistics-mcp
# stdio (for Claude Desktop)
python -m swiss_statistics_mcp.server
python -m swiss_statistics_mcp.server --http --port 8000
MCP_HOST=0.0.0.0 python -m swiss_statistics_mcp.server --http --port 8000
python -m swiss_statistics_mcp.server --http --host 0.0.0.0 --port 8000
Try it immediately in Claude Desktop:
*"How many teachers worked in the canton of Zurich in 2023?"*
*"What is the population of canton Bern broken down by age?"*
*"Compare the social assistance rate across all cantons for 2022."*
Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": { "swiss-statistics": { "command": "python", "args": ["-m", "swiss_statistics_mcp.server"] } } }
Or with uvx:
{
"mcpServers": { "swiss-statistics": { "command": "uvx", "args": ["swiss-statistics-mcp"] } } }
Config file locations:
~/Library/Application Support/Claude/claude_desktop_config.json%APPDATA%\Claude\claude_desktop_config.jsonThe configuration syntax is identical to Claude Desktop. The file name depends on the client:
.cursor/mcp.json in the project folder, or ~/.cursor/mcp.json globally~/.codeium/windsurf/mcp_config.json.continue/config.jsonFor use via claude.ai in the browser (e.g. on managed workstations without local software).
⚠️ Security note — this server has no authentication. A public URL
turns it into an open proxy to the BFS API on your deployment's IP. Any
client with the URL can drive the tools, consume your platform quota, and
attribute traffic to your IP. Two mitigations, in order of preference:
1. Put it behind access control — Render's «Private Service», Cloudflare
Access, or a reverse proxy with Basic-Auth / IP allowlist in front of the
container.
2. Accept it as a public open-data proxy — only acceptable because all
data is BFS OGD (Public Open Data) and tools are read-only.
The server binds to
127.0.0.1by default. To expose it on a container
port you must explicitly set
MCP_HOST=0.0.0.0(e.g. as a Render env var)
or pass
--host 0.0.0.0. Do not do this without one of the mitigations above.
Render.com:
MCP_HOST=0.0.0.0python -m swiss_statistics_mcp.server --http --port 8000https://your-app.onrender.com/sse💡 *"stdio for the developer laptop, SSE for the browser."*
Since v0.2.0, every tool returns a typed Pydantic model rather than a JSON string. FastMCP serializes these as structured content so MCP clients can read fields directly.
# Old (pre-0.2.0)
result = await bfs_get_data(...) # str data = json.loads(result) # dict print(data["rows_total"])
result = await bfs_get_data(...) # DataTableResult print(result.rows_total) # 1000 print(result.truncated) # True
Every result carries error: str | None and hint: str | None at the top level — result.error is None means success. Data-returning tools (bfs_get_data, bfs_education_stats, bfs_population, bfs_compare_cantons) additionally expose truncated: bool, rows_total: int, and rows_returned: int for machine-readable cap detection.
| Tool | Result type |
|---|---|
bfs_browse_catalog | BrowseCatalogResult |
bfs_search_tables | SearchTablesResult |
bfs_get_table_metadata | TableMetadataResult |
bfs_get_data | DataTableResult |
bfs_education_stats | DataTableResult |
bfs_population | DataTableResult |
bfs_compare_cantons | DataTableResult |
bfs_featured_datasets | FeaturedDatasetsResult |
lookup_commune | LookupCommuneResult |
resolve_historical_commune | ResolveHistoricalCommuneResult |
list_communes | ListCommunesResult |
search_historical_series | SearchHistoricalSeriesResult |
bfs_construction_activity | ConstructionActivityResult |
bfs_construction_investment | ConstructionInvestmentResult |
bfs_price_index | PriceIndexResult |
Reference-layer results additionally carry source (attribution) and provenance (live_api \| cached); SearchHistoricalSeriesResult also carries licence_note with the mandatory HSSO NonCommercial notice. The construction and price-index results carry source + provenance on the same envelope pattern.
| Tool | Description |
|---|---|
bfs_featured_datasets | Curated list of highly relevant datasets (focus on education and demographics) |
bfs_browse_catalog | Browse the catalogue: all 21 themes (no theme_code), or all tables in a theme (e.g. theme_code="15" = Education and Science) |
bfs_search_tables | Full-text search across the entire data catalogue (682 datasets) |
bfs_get_table_metadata | Variables, values and metadata for a specific table |
bfs_get_data | Data retrieval with optional filters by dimensions and values |
bfs_education_stats | Convenience tool: teachers, pupils, demographic scenarios, scholarships |
bfs_population | Resident population by canton, year, age structure or sex |
bfs_compare_cantons | Cross-cantonal comparison for any table and any variable |
lookup_commune | Resolve a commune by name or BFS number as of a given date (canton, validity, LINDAS URI) |
resolve_historical_commune | Map a historical BFS number onto today's number(s) — re-key old statistics across fusions |
list_communes | List all communes of a canton as of a given date |
search_historical_series | Search long-run time series in Historical Statistics of Switzerland (HSSO) |
bfs_construction_activity | New buildings & dwellings per commune (yearly), incl. dwelling room-size mix |
bfs_construction_investment | Building investment & Arbeitsvorrat (leading indicator) by region/canton/commune |
bfs_price_index | Construction price index (Baupreisindex, parsed series) / residential property price index (IMPI, source links) |
Four of these tools form the reference layer of the portfolio (see Join Keys): they turn official BFS commune numbers into a reliable join key and let you re-key statistics that predate a municipal merger. The two bfs_construction_* tools cover STAT-TAB theme 09 (Bau- und Wohnungswesen) — see Construction sources. bfs_price_index covers price indices that are not in STAT-TAB — see Price-index sources.
| Cube ID | Title | Coverage | Used by |
|---|---|---|---|
px-x-0904030000_106 | Neu erstellte Gebäude mit Wohnungen nach Gemeinde, Gebäudetyp | 2013– | bfs_construction_activity |
px-x-0904030000_105 | Neu erstellte Wohnungen nach Gemeinde, Anzahl Zimmer | 2013– | bfs_construction_activity |
px-x-0904010000_205 | Bauinvestitionen und Arbeitsvorrat nach Grossregion/Kanton/Gemeinde | 1994– | bfs_construction_investment |
The pre-2013 Gemeinde-level building series lives in the discontinued cubes
px-x-0904030000_101/_104(1995–2012), which use a different geo coding and are not queried by these tools. Building/dwelling figures are the consolidated official yearly statistics — for up-to-date register states and the construction pipeline, cross-validate againstswiss-housing-mcp(deliberate redundancy).
bfs_price_index covers two indices that are not published via STAT-TAB. Their datasets live on opendata.swiss (CKAN); the data files themselves are BFS DAM assets.
| Index | Source | Returns |
|---|
| baupreisindex | opendata.swiss dataset *Schweizerischer Baupreisindex (Multibasen)* → DAM XLSX asset | Parsed national semi-ann