Servidor MCP de GeoServer
La versión 0.4.0 (Alfa) está en desarrollo activo y se lanzará próximamente. Estamos abiertos a contribuciones y damos la bienvenida a los desarrolladores a unirse a este proyecto.
🎥 Demostración
Related MCP server: MCP Google Map Server
📋 Índice de contenidos
🚀 Características
🔍 Consultar y manipular espacios de trabajo, capas y estilos de GeoServer
🗺️ Ejecutar consultas espaciales en datos vectoriales
🎨 Generar visualizaciones de mapas
🌐 Acceda a servicios web compatibles con OGC (WMS, WFS)
🛠️ Fácil integración con clientes compatibles con MCP
📋 Requisitos previos
Python 3.10 o superior
Ejecución de una instancia de GeoServer con la API REST habilitada
Cliente compatible con MCP (como Claude Desktop o Cursor)
Conexión a Internet para la instalación del paquete
🛠️ Instalación
Elija el método de instalación que mejor se adapte a sus necesidades:
🛠️ Instalación (Docker)
La instalación de Docker es la forma más rápida y aislada de ejecutar el servidor GeoServer MCP. Es ideal para:
Pruebas y evaluaciones rápidas
Despliegues de producción
Entornos en los que desea evitar las dependencias de Python
Implementación consistente en diferentes sistemas
Ejecute geoserver-mcp:
Configurar los clientes:
Si está usando Claude Desktop, edite claude_desktop_config.json Si está usando Cursor, cree .cursor/mcp.json
🛠️ Instalación (pip)
Se recomienda la instalación de pip para la mayoría de los usuarios que desean ejecutar el servidor directamente en su sistema. Este método es ideal para:
Usuarios habituales que quieran ejecutar el servidor localmente
Sistemas donde tenga instalado Python 3.10+
Usuarios que quieran personalizar la configuración del servidor
Fines de desarrollo y prueba
Instalar el administrador de paquetes uv.
Crear el entorno virtual (Python 3.10+):
Linux/Mac:
Windows PowerShell:
Instale el paquete usando pip:
Configurar la conexión GeoServer:
Linux/Mac:
Windows PowerShell:
Iniciar el servidor:
Si va a usar el escritorio Claude, no necesita este paso. Para el cursor o su propio cliente personalizado, debe ejecutar el siguiente código.
Linux:
o
Windows PowerShell:
o
Configurar clientes:
Si está usando Claude Desktop, edite claude_desktop_config.json Si está usando Cursor, cree .cursor/mcp.json
Ventanas:
Linux:
🛠️ Instalación de desarrollo
La instalación de desarrollo está diseñada para colaboradores y desarrolladores que desean modificar el código base. Este método es adecuado para:
Desarrolladores que contribuyen al proyecto
Usuarios que necesitan modificar el código fuente
Probando nuevas funciones
Fines de depuración y desarrollo
Instalar el administrador de paquetes uv.
Crear el entorno virtual (Python 3.10+):
Instale el paquete usando pip:
Configurar la conexión GeoServer:
Linux/Mac:
Windows PowerShell:
Iniciar el servidor:
Si va a usar el escritorio Claude, no necesita este paso. Para el cursor o su propio cliente personalizado, debe ejecutar el siguiente código.
Linux:
o
Windows PowerShell:
o
Configurar clientes:
Si está usando Claude Desktop, edite claude_desktop_config.json Si está usando Cursor, cree .cursor/mcp.json
Ventanas:
Linux:
🛠️ Herramientas disponibles
🛠️ Gestión de espacios de trabajo y capas
Herramienta | Descripción |
| Obtener espacios de trabajo disponibles |
| Crear un nuevo espacio de trabajo |
| Obtener metadatos de capa detallados |
| Enumerar capas en un espacio de trabajo |
| Crear una nueva capa |
| Eliminar recursos |
Operaciones de datos
Herramienta | Descripción |
| Ejecutar consultas CQL en datos vectoriales |
| Modificar atributos de características |
| Eliminar funciones según criterios |
🛠️ Visualización
Herramienta | Descripción |
| Crear imágenes de mapas con estilo |
| Definir nuevos estilos SLD |
| Aplicar estilos existentes a las capas |
🛠️ Desarrollo de clientes
Si planea desarrollar su propio cliente para interactuar con el servidor GeoServer MCP, puede inspirarse en el ejemplo de implementación de cliente en examples/client.py . Este ejemplo demuestra:
Cómo establecer una conexión con el servidor MCP
Cómo enviar solicitudes y gestionar respuestas
Manejo básico de errores y gestión de conexiones
Ejemplo de uso de diversas herramientas y operaciones
El cliente de ejemplo sirve como un buen punto de partida para comprender el protocolo e implementar sus propias aplicaciones cliente.
Además, aquí está el ejemplo de uso:
Lista de espacios de trabajo
Obtener información de la capa
Características de consulta
Generar mapa
🔮 Funciones planificadas
[ ] Gestión de cobertura y datos ráster
[ ] Seguridad y control de acceso
[ ] Capacidades de estilo avanzadas
[ ] Operaciones de procesamiento de WPS
[ ] Integración de GeoWebCache
🤝 Contribuyendo
¡Agradecemos tus contribuciones! Puedes ayudarnos de la siguiente manera:
Bifurcar el repositorio
Crear una rama de características (
git checkout -b feature/AmazingFeature)Confirme sus cambios (
git commit -m 'Add some AmazingFeature')Empujar a la rama (
git push origin feature/AmazingFeature)Abrir una solicitud de extracción
Asegúrese de que la descripción de su solicitud de relaciones públicas describa claramente el problema y la solución. Incluya el número de problema correspondiente, si corresponde.
📄 Licencia
Este proyecto está licenciado bajo la licencia MIT: consulte el archivo de LICENCIA para obtener más detalles.
🔗 Proyectos relacionados
Protocolo de contexto del modelo : la implementación principal del MCP
API REST de GeoServer : documentación oficial de GeoServer REST
Cliente Python REST de GeoServer : cliente Python para la API REST de GeoServer
📞 Soporte
Para obtener ayuda, abra un problema.