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
📋 Índice de contenidos
- Características
- Prerrequisitos
- Instalación
- Herramientas disponibles
- Desarrollo de clientes
- Funciones planificadas
- Contribuyendo
- Licencia
- Proyectos relacionados
- Apoyo
- Insignias
🚀 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 |
---|---|
list_workspaces | Obtener espacios de trabajo disponibles |
create_workspace | Crear un nuevo espacio de trabajo |
get_layer_info | Obtener metadatos de capa detallados |
list_layers | Enumerar capas en un espacio de trabajo |
create_layer | Crear una nueva capa |
delete_resource | Eliminar recursos |
Operaciones de datos
Herramienta | Descripción |
---|---|
query_features | Ejecutar consultas CQL en datos vectoriales |
update_features | Modificar atributos de características |
delete_features | Eliminar funciones según criterios |
🛠️ Visualización
Herramienta | Descripción |
---|---|
generate_map | Crear imágenes de mapas con estilo |
create_style | Definir nuevos estilos SLD |
apply_style | 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.
🏆 Insignias
You must be authenticated.
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Tools
Un servidor de protocolo de contexto de modelo que conecta modelos de lenguaje grandes a la API REST de GeoServer, lo que permite a los asistentes de IA consultar y manipular datos geoespaciales a través del lenguaje natural.
- 🎥 Demostración
- 📋 Índice de contenidos
- 🚀 Características
- 📋 Requisitos previos
- 🛠️ Instalación
- 🛠️ Herramientas disponibles
- 🛠️ Desarrollo de clientes
- 🔮 Funciones planificadas
- 🤝 Contribuyendo
- 📄 Licencia
- 🔗 Proyectos relacionados
- 📞 Soporte
- 🏆 Insignias
Related Resources
Related MCP Servers
- AsecurityAlicenseAqualityA production-ready Model Context Protocol server that enables language models to leverage AI-powered web scraping capabilities, offering tools for transforming webpages to markdown, extracting structured data, and executing AI-powered web searches.Last updated -316PythonMIT License
- -securityAlicense-qualityA Model Context Protocol server enabling AI agents to access and manipulate ServiceNow data through natural language interactions, allowing users to search for records, update them, and manage scripts.Last updated -9PythonMIT License
- -securityAlicense-qualityA server that enables Large Language Models to discover and interact with REST APIs defined by OpenAPI specifications through the Model Context Protocol.Last updated -37896TypeScriptMIT License
- -securityAlicense-qualityA Model Context Protocol server that enables AI agents to query Erick Wendel's talks, blog posts, and videos across different platforms using natural language.Last updated -55TypeScriptMIT License