ServiceNow MCP Server
Un servidor MCP para interactuar con ServiceNow, que permite a los agentes de IA acceder y manipular datos a través de una API segura.
Documentación
Servidor MCP de ServiceNow
Un servidor de Model Context Protocol (MCP) que se integra con ServiceNow, permitiendo a los agentes de IA acceder y manipular datos de ServiceNow a través de una API segura. Este servidor permite interacciones en lenguaje natural con ServiceNow, facilitando la búsqueda de registros, su actualización y la gestión de scripts.
Características
Recursos
servicenow://incidents: Listar incidentes recientesservicenow://incidents/{number}: Obtener un incidente específico por númeroservicenow://users: Listar usuariosservicenow://knowledge: Listar artículos de conocimientoservicenow://tables: Listar tablas disponiblesservicenow://tables/{table}: Obtener registros de una tabla específicaservicenow://schema/{table}: Obtener el esquema de una tabla
Herramientas
Herramientas Básicas
create_incident: Crear un nuevo incidenteupdate_incident: Actualizar un incidente existentesearch_records: Buscar registros usando consultas de textoget_record: Obtener un registro específico por sys_idperform_query: Realizar una consulta contra ServiceNowadd_comment: Añadir un comentario a un incidente (visible para el cliente)add_work_notes: Añadir notas de trabajo a un incidente (interno)
Herramientas de Lenguaje Natural
natural_language_search: Buscar registros usando lenguaje natural (ej., "encuentra todos los incidentes sobre SAP")natural_language_update: Actualizar registros usando lenguaje natural (ej., "Actualiza el incidente INC0010001 diciendo que estoy trabajando en ello")update_script: Actualizar archivos de scripts de ServiceNow (script includes, reglas de negocio, etc.)
Instalación
Desde PyPI
pip install mcp-server-servicenow
Desde el Código Fuente
git clone https://github.com/michaelbuckner/servicenow-mcp.git
cd servicenow-mcp
pip install -e .
Uso
Línea de Comandos
Ejecuta el servidor usando el módulo de Python:
python -m mcp_server_servicenow.cli --url "https://your-instance.service-now.com/" --username "your-username" --password "your-password"
O usa variables de entorno:
export SERVICENOW_INSTANCE_URL="https://your-instance.service-now.com/"
export SERVICENOW_USERNAME="your-username"
export SERVICENOW_PASSWORD="your-password"
python -m mcp_server_servicenow.cli
Configuración en Cline
Para usar este servidor MCP con Cline, añade lo siguiente a tu archivo de configuración de MCP:
{
"mcpServers": {
"servicenow": {
"command": "/path/to/your/python/executable",
"args": [
"-m",
"mcp_server_servicenow.cli",
"--url", "https://your-instance.service-now.com/",
"--username", "your-username",
"--password", "your-password"
],
"disabled": false,
"autoApprove": []
}
}
}
Nota: Asegúrate de usar la ruta completa al ejecutable de Python que tenga instalado el paquete mcp-server-servicenow.
Ejemplos de Lenguaje Natural
Búsqueda de Registros
Puedes buscar registros usando consultas en lenguaje natural:
find all incidents about email
search for incidents related to network issues
show me all incidents with high priority
Actualización de Registros
Puedes actualizar registros usando comandos en lenguaje natural:
Update incident INC0010001 saying I'm working on it
Set incident INC0010002 to in progress
Close incident INC0010003 with resolution: fixed the issue
Gestión de Scripts
Puedes actualizar scripts de ServiceNow desde archivos locales:
Update the ServiceNow script include "HelloWorld" with the contents of hello_world.js
Upload utils.js to ServiceNow as a script include named "UtilityFunctions"
Update @form_validation.js, it's a client script called "FormValidation"
Métodos de Autenticación
El servidor soporta múltiples métodos de autenticación:
- Autenticación Básica: Nombre de usuario y contraseña
- Autenticación por Token: Token OAuth
- Autenticación OAuth: ID de Cliente, Secreto de Cliente, Nombre de Usuario y Contraseña
Desarrollo
Requisitos Previos
- Python 3.8+
- Instancia de ServiceNow con acceso a la API
Configuración del Entorno de Desarrollo
# Clone the repository
git clone https://github.com/michaelbuckner/servicenow-mcp.git
cd servicenow-mcp
# Create a virtual environment
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# Install development dependencies
pip install -e ".[dev]"
Ejecución de Pruebas
pytest
Contribuciones
¡Las contribuciones son bienvenidas! No dudes en enviar un Pull Request.
- Haz un fork del repositorio
- Crea tu rama de características (
git checkout -b feature/amazing-feature) - Haz commit de tus cambios (
git commit -m 'Add some amazing feature') - Haz push a la rama (
git push origin feature/amazing-feature) - Abre un Pull Request
Licencia
Este proyecto está licenciado bajo la Licencia MIT - consulta el archivo LICENSE para más detalles.