Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

GeoServer MCP

An MCP server that wraps the python-geoservercloud library, exposing 80+ GeoServer operations as natural-language tools for AI assistants like Claude, VS Code Copilot, and other MCP-compatible clients.

Once connected, you can just ask:

  • "List all workspaces in GeoServer"
  • "Create a new workspace called test_data"
  • "Publish the roads table from my PostGIS database"

Quick start (Claude Code)

One command — no manual install, uvx fetches and runs the server for you.

Simplest — no credentials up front:

claude mcp add geoserver -- uvx geoservercloud-mcp

The AI will ask you for the GeoServer URL, username, and password when it first needs them. Great for trying it out or switching between servers.

Or set the connection up front:

claude mcp add geoserver \
  --env GEOSERVER_URL=http://localhost:8080/geoserver \
  --env GEOSERVER_USER=admin \
  --env GEOSERVER_PASSWORD=geoserver \
  -- uvx geoservercloud-mcp

That's it — start Claude Code and ask it to list your workspaces to confirm it's connected.

Manage it later with claude mcp list, claude mcp get geoserver, or claude mcp remove geoserver. Add --scope user to the add command to make it available in every project instead of just this one.


Other clients

Claude Desktop

Add this to your config file, then restart Claude Desktop:

  • 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"
      }
    }
  }
}
VS Code / Cursor

Add this to .vscode/mcp.json:

{
  "servers": {
    "geoserver": {
      "command": "uvx",
      "args": ["geoservercloud-mcp"],
      "env": {
        "GEOSERVER_URL": "http://localhost:8080/geoserver",
        "GEOSERVER_USER": "admin",
        "GEOSERVER_PASSWORD": "geoserver"
      }
    }
  }
}
Install manually (pip / uvx)
# with pip
pip install geoservercloud-mcp
geoservercloud-mcp

# or run without installing (requires uv: https://docs.astral.sh/uv/)
uvx geoservercloud-mcp

Published to the MCP Registry as io.github.ronitjadhav/geoservercloud-mcp.


Environment variables

Variable Default Description
GEOSERVER_URL http://localhost:8080/geoserver GeoServer base URL
GEOSERVER_USER admin GeoServer username
GEOSERVER_PASSWORD geoserver GeoServer password

All three are optional — if you skip them, you can configure the connection at runtime by asking the AI.


Development

Want to run it from source or contribute?

git clone https://github.com/ronitjadhav/geoservercloud-mcp.git
cd geoservercloud-mcp

poetry install                    # set up the environment
poetry run pytest                 # run the tests
poetry run geoservercloud-mcp     # run the server (stdio)

Need a GeoServer to test against? cd docker && docker compose up -d spins up GeoServer + PostGIS + the MCP server.

For the full workflow — adding new tools, linting, releasing, and how publishing works — see the Developer Guide.


Python library

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

from geoservercloud import GeoServerCloud

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

Full library docs: https://camptocamp.github.io/python-geoservercloud/

Release files for geoservercloud-mcp 1.0.1.dev29565507996

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for geoservercloud-mcp 1.0.1.dev29565507996
File Size Uploaded
geoservercloud_mcp-1.0.1.dev29565507996.tar.gz 11.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for geoservercloud-mcp 1.0.1.dev29565507996
File Interpreter ABI Platform
geoservercloud_mcp-1.0.1.dev29565507996-py3-none-any.whl Python 3 none any Details

Total release size: 22.7 kB

Release files / geoservercloud_mcp-1.0.1.dev29565507996.tar.gz

Download URL geoservercloud_mcp-1.0.1.dev29565507996.tar.gz
Size 11.4 kB
Tags Source
SHA-256 checksum
How to use checksums
75b3830b2562f81288b00ee6448268cc13f328ff92781fe8dba0e1a0640f9fb6
BLAKE2b-256 checksum
How to use checksums
224de59dc4f760f155be7eff04e30905c9c99e905926d7f18fb060d062410799
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 17, 2026.

Transparency log

Release files / geoservercloud_mcp-1.0.1.dev29565507996-py3-none-any.whl

Download URL geoservercloud_mcp-1.0.1.dev29565507996-py3-none-any.whl
Size 11.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
f295fe0487e06c664c8c44ee2881311224edf1f2026bea2d530e28ee9d724f11
BLAKE2b-256 checksum
How to use checksums
fba5daeb586f9f9f8a7862d7798f9f309efef81b91699ff7a287911fefd22a3c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 17, 2026.

Transparency log
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page