Skip to main content
Glama
joshdels

free-transmission-wildlife

by joshdels

Análisis asistido por IA de líneas de transmisión y vida silvestre con MCP

Caso de uso

Un grupo de conservación de la vida silvestre quiere monitorizar el posible impacto de la infraestructura de transmisión eléctrica en la vida silvestre y las tierras protegidas del Valle de San Joaquín, en California.

El grupo dispone de financiación limitada y no puede realizar análisis GIS manuales de forma continua ni inspeccionar grandes conjuntos de datos espaciales con software GIS tradicional. Necesita una forma sencilla de plantear preguntas espaciales sobre líneas de transmisión y áreas de vida silvestre y recibir resultados analíticos sin escribir SQL manualmente ni realizar operaciones GIS.

Este proyecto utiliza el Model Context Protocol (MCP) para conectar Claude con datos espaciales almacenados en archivos GIS y consultados a través de DuckDB.

En lugar de abrir manualmente el software GIS y realizar análisis espaciales, los usuarios pueden hacer preguntas a Claude en lenguaje natural.

Ejemplos:

Which wildlife areas intersect transmission lines?

Which transmission lines pass through public access lands?

How many transmission line segments intersect wildlife areas?

What wildlife areas are within 1 kilometer of a transmission line?

Show me the transmission lines that have potential impacts on wildlife areas.

Claude interpreta la solicitud, utiliza el servidor MCP para acceder a los datos espaciales, ejecuta las consultas espaciales de DuckDB necesarias y devuelve los resultados en un formato legible.

Related MCP server: PostGIS Yukon MCP

Objetivo

El objetivo principal es demostrar cómo se pueden combinar IA, MCP, DuckDB y datos espaciales para crear un asistente ligero de análisis GIS.

El proyecto se centra en:

  1. Acceso en lenguaje natural a conjuntos de datos espaciales

  2. Consultas espaciales sin que los usuarios tengan que escribir SQL

  3. Análisis de líneas de transmisión y áreas de vida silvestre

  4. Procesamiento de datos GIS de bajo coste

  5. Análisis espacial reproducible mediante DuckDB

  6. Devolución de resultados analíticos directamente a través de Claude

Datos

El proyecto trabaja actualmente con dos conjuntos de datos espaciales:

Líneas de transmisión

Infraestructura de líneas de transmisión representada como un Shapefile.

data/
└── transmission_lines/
    └── TransmissionLine_CEC.shp

Vida silvestre / Tierras de acceso público

Datos de tierras de acceso público del California Department of Fish and Wildlife representados como un Shapefile.

data/
└── public_lands/
    └── CDFW_Public_Access_Lands_[ds3077].shp

Estos conjuntos de datos se cargan en DuckDB mediante la extensión DuckDB Spatial.

Arquitectura

La arquitectura básica es:

User
  |
  | Natural-language question
  v
Claude
  |
  | MCP
  v
MCP Server
  |
  | DuckDB Spatial SQL
  v
Spatial Datasets
  |
  +-- Transmission Lines
  |
  +-- Wildlife / Public Access Lands
  |
  v
Analysis Result
  |
  v
Claude Response

El servidor MCP actúa como puente entre Claude y la capa de base de datos espacial.

DuckDB se encarga del procesamiento de datos y de las operaciones espaciales.

Stack tecnológico

  1. Python 3.14

  2. DuckDB

  3. DuckDB Spatial

  4. MCP Python

  5. PyArrow

  6. Pandas

  7. Claude

Estructura del proyecto

free-transmission-wildlife/
│
├── app/
│   ├── db/
│   │   ├── load_data.py
│   │   └── queries.py
│   │
│   └── server/
│       └── server.py
│
├── data/
│   ├── transmission_lines/
│   │   └── TransmissionLine_CEC.shp
│   │
│   └── public_lands/
│       └── CDFW_Public_Access_Lands_[ds3077].shp
│
├── pyproject.toml
├── uv.lock
├── Makefile
└── README.md

Primeros pasos

Este proyecto utiliza uv para la gestión del entorno de Python y de las dependencias.

Instala las dependencias del proyecto:

uv sync

Desarrollo

Inicia el servidor MCP en modo de desarrollo:

make dev

Esto ejecuta:

uv run mcp dev app/server/server.py

El servidor de desarrollo se puede utilizar para probar las herramientas MCP e inspeccionar su comportamiento.

Instalación en Claude

Instala el servidor MCP para Claude:

make install

Esto ejecuta el equivalente de:

uv run mcp install app/server/server.py

Una vez instalado, el servidor MCP queda disponible para Claude.

Ejecución de la aplicación

Después de instalar el servidor MCP, abre Claude y empieza a hacer preguntas sobre los conjuntos de datos espaciales.

Por ejemplo:

Show me the schema of the transmission lines dataset.
Show me the schema of the wildlife lands dataset.
Find transmission lines that intersect wildlife lands.
How many wildlife areas intersect transmission lines?
Which transmission lines have the greatest number of wildlife intersections?

El servidor MCP traduce estas solicitudes en operaciones contra DuckDB.

Análisis espacial

El proyecto está pensado para admitir operaciones espaciales como:

  • Intersección

  • Dentro de

  • Análisis de distancia

  • Análisis de buffer

  • Inspección de geometría

  • Filtrado espacial

  • Agregación

  • Recuento de entidades que se intersectan

  • Cálculo de áreas

  • Cálculo de longitudes

Por ejemplo, un análisis de intersección puede representarse conceptualmente como:

SELECT
    t.*,
    w.*
FROM transmission_lines t
JOIN wildlife_lands w
    ON ST_Intersects(t.geom, w.geom);

Esto permite que DuckDB realice el análisis espacial mientras Claude proporciona la interfaz de lenguaje natural.

Salida

Los resultados se devuelven a través de Claude en Markdown.

Ejemplo:

Transmission lines intersecting wildlife lands

| Transmission Line | Wildlife Area | Intersection |
|-------------------|---------------|--------------|
| Line A             | Area 001      | Yes          |
| Line B             | Area 014      | Yes          |
| Line C             | Area 021      | Yes          |

Total intersecting transmission lines: 3

El objetivo es que el resultado analítico sea comprensible para los usuarios sin que estos necesiten entender SQL ni DuckDB.

Por qué DuckDB

DuckDB ofrece una base de datos analítica ligera que puede consultar datos directamente sin necesidad de un servidor de base de datos tradicional.

Combinado con la extensión Spatial, puede realizar operaciones GIS manteniendo una arquitectura relativamente sencilla.

Por lo tanto, el proyecto no requiere PostgreSQL/PostGIS para este prototipo.

La arquitectura es:

Shapefile / GeoParquet
        |
        v
      DuckDB
        |
        v
  DuckDB Spatial
        |
        v
    MCP Server
        |
        v
      Claude

Esto hace que el proyecto sea adecuado para experimentar con análisis GIS asistido por IA.

Desarrollo futuro

Las posibles mejoras futuras incluyen:

  1. Migrar de Shapefiles a GeoParquet

  2. Añadir más conjuntos de datos de vida silvestre de California

  3. Añadir conjuntos de datos de parcelas

  4. Añadir áreas protegidas

  5. Añadir conjuntos de datos de restricciones ambientales

  6. Añadir análisis de distancia y buffer

  7. Añadir informes espaciales automatizados

  8. Añadir visualización de mapas

  9. Devolver resultados GeoJSON para mapas web

  10. Desplegar los datos espaciales en un almacenamiento de objetos en la nube

  11. Añadir conjuntos de datos espaciales a mayor escala

  12. Crear un flujo de trabajo de análisis GIS asistido por IA

Objetivo del proyecto

El objetivo a largo plazo es demostrar que el análisis espacial puede hacerse más accesible combinando el procesamiento tradicional de datos GIS con interfaces de IA en lenguaje natural.

En lugar de exigir que todos los usuarios conozcan el software GIS, SQL y las operaciones de bases de datos espaciales, el usuario puede describir su pregunta en lenguaje natural y dejar que Claude coordine el análisis a través de MCP y DuckDB.

F
license - not found
Not graded
quality - not tested
A
maintenance

Maintenance

Maintainers
Response time
0dRelease cycle
2Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • F
    license
    Not graded
    quality
    Not graded
    maintenance
    An Iceberg-native geospatial MCP server powered by DuckDB that provides tools for spatial SQL queries, catalog discovery, and data management. It enables LLM agents to interact with Apache Iceberg lakehouses to perform complex spatial analysis, joins, and aggregations.
    1
  • A
    license
    Not graded
    quality
    F
    maintenance
    Enables natural language and geospatial queries on PostGIS databases, with 32 tools for spatial analysis, geometry operations, and database management.
    4
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    An MCP server that connects AI agents to cloud-native geospatial data via STAC metadata and DuckDB with H3 spatial indexing, enabling zero-configuration SQL queries on terabyte-scale datasets over S3.
    23
    BSD 3-Clause
  • A
    license
    Not graded
    quality
    C
    maintenance
    Connects AI assistants (Claude, Cursor, etc.) to QGIS 4.x via MCP, enabling natural language-driven GIS workflows through 37+ tools, including data loading, processing, and spatial analysis.
    GPL 2.0

View all related MCP servers

Related MCP Connectors

  • MCP server giving Claude AI access to 22+ NYC public-record databases for real estate due diligence

  • Analytical memory for AI agents: a real Postgres queried in plain English over MCP. One command.

  • GibsonAI MCP server: manage your databases with natural language

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/joshdels/free-transmission-wildlife'

If you have feedback or need assistance with the MCP directory API, please join our Discord server