Skip to main content
Glama
joshdels

free-transmission-wildlife

by joshdels

Анализ линий электропередачи и дикой природы с помощью ИИ и MCP

Сценарий использования

Группа по охране дикой природы хочет отслеживать потенциальное влияние инфраструктуры линий электропередачи на дикую природу и охраняемые земли в долине Сан-Хоакин в Калифорнии.

Группа имеет ограниченное финансирование и не может постоянно выполнять ручной ГИС-анализ или просматривать большие пространственные наборы данных с помощью традиционного ГИС-программного обеспечения. Им нужен простой способ задавать пространственные вопросы о линиях электропередачи и зонах дикой природы и получать аналитические результаты без ручного написания SQL или выполнения ГИС-операций.

Этот проект использует Model Context Protocol (MCP) для подключения Claude к пространственным данным, хранящимся в ГИС-файлах и запрашиваемым через DuckDB.

Вместо того чтобы вручную открывать ГИС-программное обеспечение и выполнять пространственный анализ, пользователи могут задавать вопросы Claude на естественном языке.

Примеры:

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 интерпретирует запрос, использует MCP-сервер для доступа к пространственным данным, выполняет необходимые пространственные запросы DuckDB и возвращает результаты в читаемом формате.

Related MCP server: PostGIS Yukon MCP

Цель

Основная цель — продемонстрировать, как ИИ, MCP, DuckDB и пространственные данные можно объединить для создания легковесного ГИС-ассистента для анализа.

Проект сосредоточен на:

  1. Доступе к пространственным наборам данных на естественном языке

  2. Пространственных запросах без необходимости писать SQL

  3. Анализе линий электропередачи и зон дикой природы

  4. Недорогой обработке ГИС-данных

  5. Воспроизводимом пространственном анализе через DuckDB

  6. Возврате аналитических результатов напрямую через Claude

Данные

В настоящее время проект работает с двумя пространственными наборами данных:

Линии электропередачи

Инфраструктура линий электропередачи, представленная в виде Shapefile.

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

Дикая природа / земли общественного доступа

Данные California Department of Fish and Wildlife о землях общественного доступа, представленные в виде Shapefile.

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

Эти наборы данных загружаются в DuckDB с использованием расширения DuckDB Spatial.

Архитектура

Базовая архитектура выглядит так:

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

MCP-сервер выступает в роли моста между Claude и уровнем пространственной базы данных.

DuckDB выполняет собственно обработку данных и пространственные операции.

Технологический стек

  1. Python 3.14

  2. DuckDB

  3. DuckDB Spatial

  4. MCP Python

  5. PyArrow

  6. Pandas

  7. Claude

Структура проекта

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

Начало работы

В этом проекте для управления окружением Python и зависимостями используется uv.

Установите зависимости проекта:

uv sync

Разработка

Запустите MCP-сервер в режиме разработки:

make dev

Это запускает:

uv run mcp dev app/server/server.py

Сервер разработки можно использовать для тестирования MCP-инструментов и изучения их поведения.

Установка в Claude

Установите MCP-сервер для Claude:

make install

Это эквивалентно выполнению:

uv run mcp install app/server/server.py

После установки MCP-сервер становится доступен для Claude.

Запуск приложения

После установки MCP-сервера откройте Claude и начните задавать вопросы о пространственных наборах данных.

Например:

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?

MCP-сервер преобразует эти запросы в операции над DuckDB.

Пространственный анализ

Проект предназначен для поддержки пространственных операций, таких как:

  • Пересечение

  • Внутри

  • Анализ расстояний

  • Буферный анализ

  • Проверка геометрии

  • Пространственная фильтрация

  • Агрегация

  • Подсчет пересекающихся объектов

  • Вычисление площадей

  • Вычисление длин

Например, анализ пересечений концептуально можно представить так:

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

Это позволяет DuckDB выполнять пространственный анализ, в то время как Claude предоставляет интерфейс на естественном языке.

Результаты

Результаты возвращаются через Claude в формате Markdown.

Пример:

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

Цель — сделать аналитический результат понятным для пользователей, не требуя от них понимания SQL или DuckDB.

Почему DuckDB

DuckDB предоставляет легковесную аналитическую базу данных, которая может запрашивать данные напрямую, без необходимости в традиционном сервере базы данных.

В сочетании с расширением Spatial она может выполнять ГИС-операции, сохраняя относительно простую архитектуру.

Поэтому для этого прототипа проект не требует PostgreSQL/PostGIS.

Архитектура выглядит так:

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

Это делает проект подходящим для экспериментов с ИИ-ассистированным ГИС-анализом.

Дальнейшее развитие

Возможные будущие улучшения включают:

  1. Переход с Shapefile на GeoParquet

  2. Добавление дополнительных наборов данных о дикой природе Калифорнии

  3. Добавление наборов данных о земельных участках

  4. Добавление охраняемых территорий

  5. Добавление наборов данных об экологических ограничениях

  6. Добавление анализа расстояний и буферного анализа

  7. Добавление автоматических пространственных отчетов

  8. Добавление визуализации карт

  9. Возврат результатов GeoJSON для веб-карт

  10. Размещение пространственных данных в облачном объектном хранилище

  11. Добавление пространственных наборов данных большего масштаба

  12. Создание рабочего процесса ИИ-ассистированного ГИС-анализа

Цель проекта

Долгосрочная цель — продемонстрировать, что пространственный анализ можно сделать более доступным, сочетая традиционную обработку ГИС-данных с интерфейсами ИИ на естественном языке.

Вместо того чтобы требовать от каждого пользователя знания ГИС-программ, SQL и операций с пространственными базами данных, пользователь может описать вопрос на естественном языке и позволить Claude координировать анализ через MCP и 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