Skip to main content
Glama
ronitjadhav

GeoServer MCP Server

by ronitjadhav

GeoServer MCP Server

A Model Context Protocol (MCP) server that exposes GeoServer REST API functionality for natural language interaction through AI assistants like Claude, VS Code Copilot, and other MCP-compatible clients.

About

This MCP server wraps the python-geoservercloud library, exposing 80+ GeoServer operations as MCP tools. This enables AI assistants to manage GeoServer workspaces, datastores, layers, styles, and more through natural language commands.

Example Interactions

Once connected, you can ask your AI assistant things like:

  • "List all workspaces in GeoServer"

  • "Create a new workspace called 'test_data'"

  • "What layers are available in the 'topp' workspace?"

  • "Create a PostGIS datastore connection"


Installation

From PyPI

pip install geoservercloud-mcp

Or use uvx to run without installing (requires uv):

# Install uv first (if not already installed)
curl -LsSf https://astral.sh/uv/install.sh | sh

# Run the MCP server
uvx geoservercloud-mcp

From MCP Registry

This server is published to the MCP Registry as:

io.github.ronitjadhav/geoservercloud-mcp

Connecting to AI Clients

VS Code / Cursor

Add to your MCP configuration (.vscode/mcp.json):

{
  "servers": {
    "geoserver": {
      "command": "uvx",
      "args": ["geoservercloud-mcp"],
      "env": {
        "GEOSERVER_URL": "http://localhost:8080/geoserver",
        "GEOSERVER_USER": "admin",
        "GEOSERVER_PASSWORD": "geoserver"
      }
    }
  }
}

Claude Desktop

Add to your Claude Desktop config:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Linux: ~/.config/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "geoserver": {
      "command": "uvx",
      "args": ["geoservercloud-mcp"],
      "env": {
        "GEOSERVER_URL": "http://localhost:8080/geoserver",
        "GEOSERVER_USER": "admin",
        "GEOSERVER_PASSWORD": "geoserver"
      }
    }
  }
}

Restart Claude Desktop after saving the configuration.


Environment Variables

Variable

Default

Description

GEOSERVER_URL

http://localhost:8080/geoserver

GeoServer base URL

GEOSERVER_USER

admin

GeoServer username

GEOSERVER_PASSWORD

geoserver

GeoServer password


Python Library

This MCP server is built on the python-geoservercloud library. For programmatic access without MCP, see the library documentation.

from geoservercloud import GeoServerCloud

geoserver = GeoServerCloud(
    url="http://localhost:8080/geoserver",
    user="admin",
    password="geoserver",
)
geoserver.create_workspace("my_workspace")

Full documentation: https://camptocamp.github.io/python-geoservercloud/


Development

For local development, testing, and publishing, see the Developer Guide.

A
license - permissive license
-
quality - not tested
C
maintenance

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

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

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/ronitjadhav/geoservercloud-mcp'

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