Skip to content

Suizer98/docker-arcgis-enterprise-ai

 
 

Repository files navigation

Docker ArcGIS Enterprise with AI Agent

AI-Powered ArcGIS Enterprise - Natural language interaction with ArcGIS Enterprise using LangChain and MCP.

Tech Stack

Overview

Extends docker-arcgis-enterprise with AI capabilities, enabling natural language queries to ArcGIS services through LangChain and MCP powered by FastAPI.

Architecture

graph TB
    A[LangChain Agent] --> B[Groq LLM]
    A --> C[MCP Server]
    C --> D[ArcGIS REST API]
    C --> E[ArcGIS Portal Token]
    D --> F[ArcGIS Enterprise Server]
Loading

Features

  • Natural Language Queries: Ask about ArcGIS services like a chatbot
  • Service Discovery: Automatically list and find hosted services
  • Service Details: Get published service information like layers and extents
  • Query Layer: Query layer with parameters such as record counts

Quick Start

Setup

For docker ArcGIS Enterprise setup please refer to the References section below.

cd docker-arcgis-enterprise
cp sample.env .env
cp configurebasedeployment.properties.SAMPLE configurebasedeployment.properties
docker-compose up -d

Usage Examples

List Services

curl -X POST http://localhost:8000/chat \
  -H "Content-Type: application/json" \
  -d '{"message": "What services are available in ArcGIS Server?"}'

List Services Example

Get Service Details

curl -X POST http://localhost:8000/chat \
  -H "Content-Type: application/json" \
  -d '{"message": "Is there a service called TouristAttractions?"}'

Service Details Example

Cursor Integration

To enable tool discovery in Cursor, copy the contents of mcp/mcp.json.example to ~/.cursor/mcp.json.

Cursor Integration Example

Endpoints

Tech Stack

  • LLM Agent: LangChain + Groq Llama 3.1 8B
  • MCP: FastAPI with Model Context Protocol
  • ArcGIS: Enterprise 11.4 (Server, Portal, DataStore)
  • Database: PostgreSQL with PostGIS extension

References

  • Docker Issues: Refer to docs/README.md for detailed Docker setup, configuration and troubleshooting
  • General Troubleshooting: See docs/README-original.md for Wildsong's comprehensive explainations

Ready to explore ArcGIS Enterprise with AI? 🚀

About

A POC to integrate AI agent with dockerised ESRI Arcgis Enterprise

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 40.4%
  • TypeScript 36.8%
  • Svelte 10.8%
  • Shell 5.4%
  • Dockerfile 4.5%
  • CSS 1.8%
  • Other 0.3%