人口普查数据查询MCP服务器

为Claude提供美国人口普查局数据访问能力的MCP服务器,支持查询波多黎各78个市镇及其街区的人口、经济、住房、教育、健康与基础设施统计数据。

  • by Foundation-for-Puerto-Rico
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 Foundation-for-Puerto-Rico/fpr-censo-mcp

使用说明

fpr-censo-mcp

MCP Server que conecta a Claude con datos del U.S. Census Bureau, optimizado para Puerto Rico. Desarrollado para Foundation for Puerto Rico.

Provee 12 tools para consultar datos demográficos, económicos, de vivienda, educación, salud e infraestructura de los 78 municipios y sus barrios. Todos los estimados del ACS incluyen Margin of Error (MOE) y evaluación de confiabilidad.

Instalar y conectar

No hay un servidor público. Corres el servidor en tu máquina y Claude lo lanza por stdio.

  1. Clona el repo e instala el paquete en un entorno virtual (requiere Python 3.11 o superior):

    git clone https://github.com/Foundation-for-Puerto-Rico/fpr-censo-mcp.git
    cd fpr-censo-mcp
    python3 -m venv .venv
    .venv/bin/pip install -e .
    
  2. Pide una API key gratuita del Census en la página de registro de la API del Census.

  3. Agrega el servidor a tu .mcp.json (Claude Code) o claude_desktop_config.json (Claude Desktop). Reemplaza /ruta/a/fpr-censo-mcp por la ruta absoluta del repo:

    {
      "mcpServers": {
        "fpr-censo": {
          "command": "/ruta/a/fpr-censo-mcp/.venv/bin/python",
          "args": ["-P", "-m", "src.server"],
          "env": { "CENSUS_API_KEY": "tu_key" }
        }
      }
    }
    

    El flag -P evita que Python busque módulos en la carpeta desde donde Claude lanza el servidor. Sin él, un archivo src.py o una carpeta src/ en esa carpeta puede tapar el paquete.

  4. Reinicia Claude y verifica la conexión con el tool censo_estado.

Tools disponibles

Exploración

Tool Qué hace
censo_estado Verifica configuración del servidor y API key
censo_listar_datasets Datasets disponibles para PR con años
censo_buscar_variables Busca variables por keyword en español o inglés
censo_listar_geografias Niveles geográficos disponibles
censo_listar_municipios Los 78 municipios con FIPS codes
censo_listar_barrios Barrios dentro de un municipio

Consulta

Tool Qué hace
censo_consultar Query flexible: variables, geografía, dataset, año
censo_perfil Perfil temático pre-configurado (demográfico, económico, etc.)
censo_serie_temporal Una variable a través de múltiples años

Análisis

Tool Qué hace
censo_comparar Compara indicadores entre 2+ geografías
censo_evaluar_calidad Evalúa confiabilidad estadística (MOE/CV)
censo_contexto Contextualiza un dato vs. PR y EE.UU.

Perfiles temáticos

Usados por censo_perfil para obtener indicadores pre-seleccionados:

  • demografico — Población, edad, sexo, raza/etnicidad
  • economico — Ingreso, pobreza, empleo/desempleo
  • vivienda — Unidades, ocupación, valor, renta
  • educacion — Nivel educativo, matrícula escolar
  • salud_social — Seguro médico, discapacidad, idioma
  • infraestructura — Internet, vehículos, transporte

Ejemplos de uso

Con el servidor conectado, pídele a Claude cosas como:

  • "Consulta la población de Vega Baja"
  • "Dame el perfil económico de Manatí"
  • "Compara la mediana de ingreso entre San Juan, Bayamón y Carolina"
  • "Muéstrame la tendencia de población de PR del 2010 al 2023"
  • "Lista los barrios de Ponce con sus FIPS codes"

Evaluación de calidad

Cada estimado del ACS incluye evaluación automática:

CV Clasificación Significado
< 15% ✅ Confiable Dato robusto
15-30% ⚠️ Precaución Usar con cuidado
> 30% ❌ No confiable Considerar agregar geografías

Desarrollo local

# Instalar
pip install -e ".[dev]"

# API key (gratis)
export CENSUS_API_KEY=tu_key  # https://api.census.gov/data/key_signup.html

# Correr local (stdio)
python -m src.server

# Correr como HTTP server
python -m src.server --transport streamable-http --port 8001

# Tests
pytest tests/

Deploy

Si quieres publicarlo como servidor HTTP, deploy/deploy.sh instala el servidor en una VM con Caddy como reverse proxy (HTTPS automático). El servidor no tiene autenticación: si lo expones a internet, cualquiera con la URL puede usarlo y consumir la cuota de tu CENSUS_API_KEY.

export CENSUS_API_KEY=tu_key
./deploy/deploy.sh

Fuente de datos

U.S. Census Bureau Data API. Dataset principal: ACS 5-Year Estimates (acs/acs5), que cubre todas las áreas geográficas de PR hasta nivel de block group. Año default: 2023.