
qgis
by pacphi
Consistent dev environments anywhere. Define once in YAML, deploy to Docker, Fly.io, or DevPod. Pre-built extensions for AI, languages & infrastructure.
SKILL.md
name: qgis description: > Geospatial analysis and GIS operations via QGIS. Use for calculating distances, buffering zones, coordinate transforms (EPSG:4326 to EPSG:3857), layer operations, geoprocessing (intersect, union, clip), and exporting map images. Requires QGIS running on Display :1 with MCP plugin enabled. version: 2.0.0 author: turbo-flow-claude mcp_server: true protocol: fastmcp entry_point: mcp-server/server.py port: 9877 dependencies:
- qgis
QGIS Skill
Geospatial analysis and GIS operations via FastMCP protocol, communicating with QGIS instance via TCP socket.
When to Use This Skill
- Calculate distances between geographic points
- Create buffer zones around features (proximity analysis)
- Transform coordinates between CRS (GPS to Web Mercator)
- Load and manipulate geospatial layers (Shapefile, GeoJSON, GeoPackage)
- Perform geoprocessing operations (intersect, union, difference, clip)
- Export map images for reports or web display
- Query features with spatial filters
- Style layers with categorized or graduated symbology
Architecture
┌─────────────────────────────┐
│ Claude Code / VisionFlow │
│ (MCP Client) │
└──────────────┬──────────────┘
│ MCP Protocol (stdio)
▼
┌─────────────────────────────┐
│ QGIS MCP Server (FastMCP) │
│ Port: stdio │
└──────────────┬──────────────┘
│ TCP Socket
▼
┌─────────────────────────────┐
│ QGIS Desktop (Display :1) │
│ MCP Plugin on Port 9877 │
└─────────────────────────────┘
Tools
| Tool | Description |
|---|---|
load_layer | Load geospatial layer (Shapefile, GeoJSON, GeoPackage, WMS) |
buffer_analysis | Create buffer zones around features |
calculate_distance | Calculate distance between two points |
transform_coordinates | Transform between coordinate systems |
export_map | Export map view as PNG, JPG, or PDF |
query_features | Query layer features with filter expression |
list_layers | List all loaded layers |
set_layer_style | Apply styling (simple, categorized, graduated) |
geoprocessing | Intersect, union, difference, dissolve, clip |
get_layer_extent | Get bounding box of a layer |
health_check | Verify QGIS connection |
Examples
# Load a GeoJSON layer
load_layer({
"path": "/data/cities.geojson",
"name": "Cities"
})
# Create 10km buffer around points
buffer_analysis({
"layer_name": "Cities",
"distance": 10000, # meters
"output_name": "city_buffers"
})
# Transform GPS coordinates to Web Mercator
transform_coordinates({
"coordinates": [-122.4194, 37.7749], # San Francisco
"source_crs": "EPSG:4326",
"target_crs": "EPSG:3857"
})
# Export map image
export_map({
"output_path": "/output/map.png",
"width": 1920,
"height": 1080,
"dpi": 150
})
Environment Variables
| Variable | Default | Description |
|---|---|---|
QGIS_HOST | localhost | QGIS MCP plugin host |
QGIS_PORT | 9877 | QGIS MCP plugin port |
QGIS_TIMEOUT | 60 | Socket timeout in seconds |
Troubleshooting
Connection refused:
# Check QGIS is running on Display :1
supervisorctl status qgis
# Verify MCP plugin is loaded
# In QGIS: Plugins → Manage Plugins → Search "MCP"
VisionFlow Integration
This skill exposes qgis://capabilities and qgis://status resources for discovery by VisionFlow's MCP TCP client.
Score
Total Score
Based on repository quality metrics
SKILL.mdファイルが含まれている
ライセンスが設定されている
100文字以上の説明がある
GitHub Stars 100以上
1ヶ月以内に更新
10回以上フォークされている
オープンIssueが50未満
プログラミング言語が設定されている
1つ以上のタグが設定されている
Reviews
Reviews coming soon

