Catálogo de fuentes públicas de España

io.github.BquantFinance由 GitHub 帳號 BquantFinance 發布v0.10.0更新於 Oct 24, 2026

Fuentes de datos públicos de España verificadas: endpoints, trampas, recetas, identificadores

概覽

AI 產生的概覽

本機 MCP 伺服器,以 102 個經實測的西班牙公開資料來源目錄,為助理提供端點、陷阱說明與現成資料查詢。

可以做什麼
  • 檢索目錄中的資料來源,查看其端點、注意事項與隱性陷阱
  • 直接取數:市政概況、經濟指標、依 NIF 查公司、油價、電價
  • 以 SQL 查詢本機 Parquet 資料倉儲中的公開資料集
  • 透過產品、意圖配方、識別碼與參數代碼等索引定位來源
適用情境
適合以西班牙公開資料(政府採購、補助、統計、地籍、法規)開發產品或進行分析時使用,讓助理找到正確來源並避開未公開的陷阱,而不是憑猜測呼叫端點。
執行需求
以本機程序方式在使用者電腦上執行(僅桌面版,stdio)。README 說明可用 uvx 從 Git 儲存庫啟動或安裝 Python 套件,另提供打包的 .mcpb 版本。未宣告任何驗證、環境變數或標頭。存取公開資料端點需要網路。
安裝前請注意
助理會呼叫第三方公開端點,並在本機資料倉儲上執行 SQL。部分來源有各自的授權與個人資料,README 提醒對外販售前須確認授權、引用與個人資料。資料可能不完整或被修訂,部分來源僅限非商業使用。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Catálogo de fuentes públicas de España,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

[fuentes públicas: datos públicos de España para agentes y devs]

Administración fuentes públicas

[CI] [Licencia CC0] [Apoya en Ko-fi]

Spanish public data, ready to build products on: where each dataset lives, how to call it, what it returns and the traps that change the numbers, verified with real calls; plus code that fetches it already solved. Start at llms-min.txt or the MCP server.

Datos públicos de España listos para construir productos. Para cada fuente: dónde está, cómo pedirla, qué devuelve y qué falla, comprobado con llamadas reales, y código que ya trae el dato resuelto. Pensado para startups, desarrolladores y agentes de IA.

Empieza aquí

  • Con un agente (MCP): uvx --from git+https://github.com/BquantFinance/Administracion-fuentes-publicas mcp-catalogo, [Instalar en Cursor], o en Claude Code /plugin marketplace add BquantFinance/Administracion-fuentes-publicas y /plugin install fuentes-publicas@fuentes-publicas. buscar encuentra la fuente, ficha da endpoints y trampas, y perfil_municipio, coyuntura, empresa_nif y el resto traen el dato (herramientas).
  • Con código: pip install "fuentes-publicas-mcp @ git+https://github.com/BquantFinance/Administracion-fuentes-publicas". Clientes que ya resuelven certificados, codificaciones y paginación (scripts/clientes), un almacén local en Parquet para lo que las APIs no dejan consultar (guía) y ejemplos que funcionan.
  • Leyendo: llms-min.txt para orientarse y la ficha de cada fuente en sources/.

Qué puedes construir hoy

Cada producto con piezas que ya funcionan; frescura, volumen medido, licencia y la trampa que más cuesta en indices/productos.yaml. Antes de vender: licencias, cita y datos personales.

productopara quiénfichaspiezas
radar-licitaciones · Avisos de licitaciones nuevas por CPV, provincia u órgano de contrataciónpymes y consultoras que licitan con la Administraciónplacsp-datos-abiertos, dir3-directoriofuentes-radar con ejemplos/radar/ (aviso diario en GitHub Actions: issue, RSS y JSON; CPV, NUTS, importe y palabras); almacen.py sync --fuentes placsp para histórico y búsquedas
inteligencia-competidores · Quién gana los contratos de un sector u órgano, a qué importe y contra cuántas ofertasempresas que licitan, analistas de contratación pública, periodistasplacsp-datos-abiertosalmacen.py (tabla placsp_adjudicaciones y vista adjudicaciones_ultimo); ejemplos/adjudicaciones.py; herramienta almacen_sql
radar-ayudas · Convocatorias de subvenciones nuevas que encajan con el perfil de una empresa (sector, región, tipo de beneficiario)pymes, gestorías y consultoras de financiación públicabdns-api, boe-api-sumariofuentes-radar con ejemplos/radar/ (convocatorias nuevas por palabras y nivel, aviso diario); scripts/clientes/bdns.py (convocatorias y concesiones paginadas, altas por fecha de alta)
kyb-proveedores · Ficha de riesgo de un proveedor o cliente por NIF (ayudas, contratos, actos mercantiles, prohibiciones de contratar)departamentos de compras, fintech de crédito, compliancebdns-api, placsp-datos-abiertos, borme-api-sumario, hacienda-registro-licitadoresherramienta empresa_nif (por NIF o por nombre, que resuelve el NIF con el directorio de la BDNS) y ejemplos/empresa_nif.py; con almacén local añade contratos adjudicados y actos del BORME
leads-sociedades-nuevas · Sociedades recién constituidas por provincia y objeto social, con capital y domicilioproveedores B2B (asesorías, bancos, software de gestión, seguros)borme-api-sumariofuentes-radar con ejemplos/radar/ (constituciones por provincia, objeto social y capital, aviso diario); almacen.py sync --fuentes borme para el histórico; empresa_nif con la denominación para el NIF
informe-ubicacion · Informe de una localización (población, renta, paro, vivienda, criminalidad y colegios, salud y recarga a 1 km) para inmobiliarias, retail y franquiciasinmobiliarias, cadenas de retail y franquicias, proptechine-api-tempus, sepe-estadisticas, interior-criminalidad, mivau-precios-vivienda-alquiler, catastro-ovc, centros-docentes-ccaa, centros-sanitarios-ccaa, dgt-datex-traficoherramienta perfil_municipio con el municipio, una dirección o «lat,lon» (CP, referencia catastral del portal y, con dirección, el bloque cerca) y ejemplos/mi_municipio.py; datos/municipios.csv para pasar entre códigos
comparador-carburantes · Gasolineras más baratas cerca y evolución de precios por estación para conductores y flotasapps de movilidad, gestores de flotas, comparadoresminetur-precios-carburantesejemplos/carburante_cerca.py; almacen.py sync --fuentes carburantes para la serie diaria por estación
monitor-regulatorio · Avisos de normas nuevas o modificadas por materia y del texto vigente de un artículodespachos, compliance, legaltechboe-api-sumario, boe-api-legislacion-consolidada, boe-elifuentes-radar con ejemplos/radar/ (BOE por sección, departamento y palabras, aviso diario); scripts/clientes/boe.py (normas actualizadas ayer y versión vigente de un bloque)
panel-macro · Panel de coyuntura (IPC, paro, PIB, Euríbor, prima de riesgo) para fintech, medios y asesoresfintech, medios, asesores financierosine-api-tempus, bde-estadisticasherramienta coyuntura (consulta.coyuntura); los 90 ZIP del Banco de España con descarga condicional para series completas
precio-electricidad · Precio de la electricidad por cuarto de hora para apps de ahorro, domótica y recarga de vehículosapps de consumo, domótica, puntos de recargaomie-mercadoficha omie-mercado (ficheros marginalpdbc por día y ZIP anual)
buscador-medicamentos · Buscador de medicamentos con presentaciones, prospecto y problemas de suministrofarmacias, healthtech, apps de pacientesaemps-cima-apificha aemps-cima-api (API REST JSON sin clave)
agritech-parcelas · Información de una parcela agrícola por coordenadas (uso, superficie, Red Natura, zonas vulnerables a nitratos)agritech, cooperativas, aseguradoras agrariasmapa-sigpac, catastro-ovcperfil_municipio con «lat,lon» (recinto, uso, superficie y referencia catastral de la parcela, municipio INE); scripts/clientes/ogc.py (recintos por bbox siguiendo next)
viviendas-turisticas · Mapa y censo de viviendas turísticas por municipio, barrio o calle, con licencia frente a anuncios en plataformasproptech, ayuntamientos, asociaciones vecinales, gestores de alquiler, hotelerosviviendas-uso-turistico, ine-api-tempus, cnig-centro-descargasperfil_municipio (bloque viviendas_turisticas: INE en toda España y registro en Cataluña, Madrid y Comunitat Valenciana); los listados con dirección y referencia catastral de Socrata y CKAN; ubicar para cruzar por referencia catastral
eficiencia-energetica-edificios · Etiqueta energética de un edificio y reparto de letras por municipio para rehabilitación, hipotecas verdes y proptechempresas de rehabilitación y ESE, bancos (financiación verde), proptech, administradores de fincascertificados-eficiencia-energetica, cnig-centro-descargas, catastro-ovcperfil_municipio con una dirección (bloque certificados_energeticos: el último certificado por inmueble de la parcela en Cataluña y la Comunitat Valenciana); Socrata con $group para el reparto por municipio en Cataluña; CSV y 7z en Madrid y Andalucía

Lo que no dice la documentación oficial

Algunos ejemplos, comprobados con llamadas reales:

  • La exportación de la BDNS devuelve 50 filas aunque haya miles si no pasas pageSize, y no avisa. Y para sincronizarla no sirve la fecha de concesión: las del 15/01/2025 se siguieron dando de alta hasta agosto de 2026 (el filtro bueno, fechaRegInicio, no está documentado).
  • Para filtrar un municipio, el INE no quiere su código (02001) sino un Id interno (6124). En SIGPAC y Catastro, Madrid es 28:900, no 28079, y otros 4.448 municipios cambian de número (tabla de equivalencias).
  • El IPC del último mes es un avance que se revisa, y el PIB que se publica es el corregido: 0,68 % trimestral en 2026T2 frente al 4,79 % de la serie sin corregir.
  • En el CSV del paro registrado del SEPE, Oza-Cesuras sale con 0 parados y Cerdedo-Cotobade no aparece: sus datos van con los códigos de antes de la fusión.
  • Muchos servidores .gob.es envían el certificado FNMT sin la intermedia: el navegador entra, curl y requests fallan (arreglo).
  • Los CSV de los portales PC-Axis llegan en UTF-8 aunque la cabecera diga ISO-8859-15, y el del SEPE en Windows-1252 aunque diga UTF-8.
  • En GBIF la encina ibérica es sobre todo Quercus rotundifolia (1,3 millones de registros en España); preguntar por Quercus ilex, que es lo que devuelve el buscador de nombres, da 21.322 sin ningún aviso. Y 41,6 de sus 95,8 millones de registros en España son CC BY-NC.

Fuentes catalogadas: 102. Alcance actual: Administración General del Estado y, desde octubre de 2026, las cuatro comunidades más pobladas (Madrid, Cataluña, Andalucía y Comunitat Valenciana) y los ayuntamientos de Madrid y Barcelona. Después: resto de comunidades y entidades locales, Cortes y Poder Judicial, Unión Europea.

Principios

  • Una ficha por fuente, en YAML, con campos fijos validados contra un esquema. Sin prosa de relleno: cada línea ahorra una búsqueda.
  • Fuente única de verdad. Solo se editan sources/**/*.yaml. Índices, catalog.json y llms*.txt se generan.
  • Lo que no dice la documentación oficial. El campo gotchas recoge los detalles que hacen perder horas: cabeceras obligatorias, codificaciones raras, límites no documentados, URLs que cambian. Las trampas silenciosas, las que dan una cifra incompleta o distinta sin ningún error, van aparte en alerts, y el servidor MCP las devuelve lo primero.
  • Verificación explícita. verified lleva la fecha de la última prueba real del endpoint, o null. Un job semanal comprueba que las URLs siguen respondiendo.
  • Top-down. Se cubren primero las fuentes de mayor uso e impacto, sector a sector, hasta cubrirlo todo.

Sectores

sectordescripciónfuentes
legislacion-boletinesLegislación y boletines oficiales6
economia-finanzasEconomía, finanzas y mercados5
hacienda-presupuestosHacienda, tributos y presupuestos6
estadisticaEstadística oficial7
contratacion-subvencionesContratación pública y subvenciones3
empleo-seguridad-socialEmpleo y Seguridad Social3
gobierno-abierto-administracionGobierno abierto, transparencia y organización administrativa12
territorio-cartografiaTerritorio, catastro y cartografía5
meteorologia-climaMeteorología y clima2
medio-ambiente-agua-biodiversidadMedio ambiente, agua y biodiversidad5
energiaEnergía5
sanidad-medicamentosSanidad y medicamentos6
ciencia-investigacionCiencia e investigación (biología, química, geología, oceanografía)7
agricultura-pesca-alimentacionAgricultura, pesca y alimentación4
transporte-movilidadTransporte y movilidad7
comercio-industria-propiedadComercio exterior, industria y propiedad industrial4
educacion-universidadesEducación y universidades3
justicia-interior-seguridadJusticia, interior y seguridad1
cultura-patrimonioCultura y patrimonio2
demografia-migraciones-sociedadDemografía, migraciones y sociedad4
vivienda-urbanismoVivienda y urbanismo3
telecomunicaciones-digitalTelecomunicaciones y sociedad digital1
exterior-cooperacionAcción exterior y cooperación0
consumo-seguridad-alimentariaConsumo y seguridad alimentaria1
defensaDefensa0

Estructura

sources/<sector>/<id>.yaml   fichas (fuente de verdad)sources/<sector>/README.md   índice del sector (generado)schema/source.schema.json    esquema de fichaschema/vocab.yaml            vocabulario controlado: sectores, acceso, auth, formatoscatalog.json                 todo el catálogo (generado)llms-min.txt, llms.txt, llms-full.txt   entrada para agentes, de menos a más (generado)indices/*.yaml               productos, recetas por intención, necesidades, identificadores, códigos que son parámetros, rutas muertas (fuente de verdad)indices/README.md            los seis índices en texto (generado)ejemplos/                    proyectos pequeños que funcionan (carburante, BOE, licitaciones, municipio, subvenciones)plugins/, .claude-plugin/    plugin de Claude Code con la skill y el servidor MCPdatos/municipios.csv         los 8.132 municipios con su código INE, Id del INE Tempus, SIGPAC y Catastro, DIR3, NIF, NUTS3 y coordenadas (scripts/municipios.py)scripts/                     validate.py, build.py, check_links.py, check_recetas.py, check_ejemplos.py, fnmt_bundle.py, mcp_catalogo.py (servidor MCP local)scripts/clientes/            sesión HTTP, clientes CKAN, Socrata, PC-Axis, ArcGIS y OGC, cargadores (BOE y BORME, BDNS, AEMET, INE, PLACSP, DataComex, Saiku) y almacén local en Parquetscripts/clientes/muestras/   respuestas reales recortadas para probar los parsers sin red (python scripts/test_clientes.py)evals/                       24 tareas con respuesta esperada para medir lo que aporta el repo a un agentetemplates/source.yaml        plantilla de fichaguides/                      guías transversales (cliente HTTP, identificadores, servidor MCP, reutilización y datos personales, almacén)

Uso rápido

bash
# Todo el catálogocurl -s https://raw.githubusercontent.com/BquantFinance/Administracion-fuentes-publicas/main/catalog.json
# Fuentes de un sector con API REST y sin autenticacióncurl -s .../catalog.json | jq '.sources[] | select(.sector=="economia-finanzas" and (.access|index("api-rest")) and .auth=="none") | .id'
python
# pip install "fuentes-publicas-mcp @ git+https://github.com/BquantFinance/Administracion-fuentes-publicas"from fuentes_publicas.clientes import ckan, socrata, pcaxis, arcgis, ogcfrom fuentes_publicas.clientes.sesion import sesion  # requests.Session con FNMT, User-Agent, reintentos y bloqueos
pcaxis.tabla(24077)[:3]                 # IPC del INE en CSV: UTF-8 real, coma decimal y periodo sin dato como Nonelist(socrata.filas("gn9e-3qhr"))        # 87.930 filas de la Generalitat, no las 1.000 que da Socrata sin $limitlist(ckan.filas("cnmc", rid))           # todas las filas del datastore aunque el portal recorte limit a 32.000ckan.comparar("comunidad-madrid", rec)  # el datastore del padrón tiene 5.000 filas; el CSV, 18.718

Índices para agentes

Además de las fichas, indices/ responde a las preguntas que se hacen antes de elegir una fuente:

  • Productos: qué se puede construir hoy, para quién y con qué piezas.
  • Recetas por intención: procedimientos verificados que encadenan fichas (de un NIF a sus subvenciones y contratos, de unas coordenadas a la referencia catastral, del sumario del BOE al texto consolidado). Cada receta lleva comprobaciones que python scripts/check_recetas.py ejecuta contra los servidores reales.
  • Dónde está cada cosa: necesidades habituales con la ficha que las resuelve y la nota que evita el desvío típico.
  • Identificadores: los códigos que cruzan datasets, con regex, ejemplo, emisor y vías verificadas de conversión.
  • Códigos que son parámetros: valores que las APIs exigen y no se adivinan (Id del INE para tv, países de DataComex, estación de AEMET por capital, productos de carburantes, rangos del BOE), obtenidos con llamadas reales.
  • Rutas muertas: URLs de documentación antigua que ya no sirven y su sustituta.

Medido (evals/): en diez tareas resueltas por el mismo agente con y sin catálogo (dos modelos), el acierto fue el mismo; con catálogo, en las tareas difíciles las llamadas HTTP y los pasos del agente bajan a la mitad y las fallidas casi a cero. En tareas con trampas silenciosas y un modelo pequeño (Haiku, tres repeticiones, tokens medidos turno a turno), el acierto pasa de 3 de 21 sin catálogo a 13 de 21 con el servidor MCP, con un 43 % menos de tokens; con las alertas, las trampas que aún fallaban pasan de 5 a 18 de 18.

Todo en indices/README.md y, para consumo programático, bajo la clave indices de catalog.json. Cada endpoint principal de una ficha lleva example (llamada copiable) y returns (forma de la respuesta vista en esa llamada). python scripts/mcp_catalogo.py expone el catálogo por MCP en local para cargar solo lo necesario (guía).

Contribuir

Lee CONTRIBUTING.md. Resumen: copia templates/source.yaml, rellena, ejecuta python scripts/validate.py && python scripts/build.py, abre un PR.

Licencia

Catálogo y documentación: CC0 1.0. Los datos a los que apuntan las fichas tienen cada uno su propia licencia, indicada en el campo license.

來源:README.md,提交 8d9a593

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

6
  1. v0.10.0最新Oct 5, 2026
  2. v0.9.0Oct 5, 2026
  3. v0.7.0Oct 5, 2026
  4. v0.5.0Oct 1, 2026
  5. v0.3.0Oct 1, 2026
  6. v0.1.0Oct 1, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分