i-net HelpDesk MCP Server
Servidor MCP de i-net HelpDesk
Un servidor MCP que proporciona la API web de tickets de i-net HelpDesk como herramientas para cualquier agente de IA: buscar y leer tickets, ver pasos de procesamiento, crear nuevos tickets y ejecutar acciones en tickets (responder, cerrar, escalar…) incluyendo archivos adjuntos.
El servidor se puede operar de dos maneras:
Modo | Para qué | Autenticación |
stdio | proceso local por agente (Claude Desktop/Code, Cursor, VS Code…) | Token o usuario/contraseña desde variables de entorno |
HTTP (streamable) | alojado centralmente, varios usuarios comparten un proceso de servidor | cada cliente envía su propio encabezado |
Requisitos previos
Python 3.10 o superior
Un i-net HelpDesk con la API web activada
Un usuario con el permiso "Web API" — sin este permiso el servidor responde con HTTP 403. Los tickets visibles y las acciones permitidas dependen de los roles de ese usuario.
Related MCP server: tickiti-mcp
Instalación
# direkt aus dem Repository ausführen (empfohlen für den Einstieg)
uvx --from git+https://github.com/roddyst/i-net_mcp_server inet-helpdesk-mcp --help
# oder klassisch installieren
pip install git+https://github.com/roddyst/i-net_mcp_serverPara el desarrollo:
git clone https://github.com/roddyst/i-net_mcp_server
cd i-net_mcp_server
python -m venv .venv && . .venv/bin/activate
pip install -e ".[dev]"
pytestInicio rápido: stdio (agente local)
export INET_BASE_URL="https://helpdesk.example.com:9000"
export INET_TOKEN="VGhpcyBpcyBqdXN0IGEgZGVtbyBhY2Nlc3MgdG9rZW4u"
inet-helpdesk-mcpConfiguración para Claude Desktop / Claude Code (claude_desktop_config.json o .mcp.json) — más ejemplos en examples/:
{
"mcpServers": {
"i-net-helpdesk": {
"command": "uvx",
"args": ["--from", "git+https://github.com/roddyst/i-net_mcp_server", "inet-helpdesk-mcp"],
"env": {
"INET_BASE_URL": "https://helpdesk.example.com:9000",
"INET_TOKEN": "dein-access-token"
}
}
}
}En lugar de un token, también funcionan INET_USERNAME e INET_PASSWORD (Basic Auth). El token se envía como Authorization: Bearer <token>, exactamente como se describe en la documentación de i-net.
Inicio rápido: HTTP (alojado centralmente)
inet-helpdesk-mcp --transport http --host 0.0.0.0 --port 8000 \
--base-url https://helpdesk.example.com:9000El endpoint está en http://<host>:8000/mcp. El agente ingresa esta URL y envía su token de HelpDesk en el encabezado Authorization — ese es exactamente el flujo "URL + Bearer Token", el servidor reenvía el encabezado al HelpDesk. Ejemplo para un cliente MCP que admite servidores remotos:
{
"mcpServers": {
"i-net-helpdesk": {
"type": "http",
"url": "https://mcp.example.com/mcp",
"headers": { "Authorization": "Bearer dein-access-token" }
}
}
}Sin --base-url, el cliente determina además el sistema de destino a través del encabezado X-Inet-Base-Url. Esto es práctico para inquilinos con varias instancias de HelpDesk, pero abre el servidor como proxy para direcciones arbitrarias — por lo tanto, en una red abierta es mejor establecer un --base-url fijo (entonces el encabezado está desactivado, a menos que se permita con --allow-url-header).
Nota sobre la operación: El servidor no termina TLS por sí mismo ni autentica clientes de forma independiente — el inicio de sesión se realiza en el HelpDesk con el token reenviado. Si debe ser accesible más allá de la red local, se necesita un proxy inverso con HTTPS delante.
Herramientas
Herramienta | API web | Descripción |
| – | Muestra la configuración y verifica la conexión y credenciales. Primer punto de contacto para errores. |
|
| Encontrar tickets mediante una frase de búsqueda ( |
|
| Campos y atributos de un ticket; |
|
| Acciones de ticket actualmente permitidas como mapa "Id → Nombre visible". |
|
| Pasos de procesamiento de un ticket, opcionalmente desde una marca de tiempo |
|
| Un paso de procesamiento incluyendo texto. |
|
| Crear nuevo ticket, devuelve el ID del ticket. |
|
| Ejecutar acción en ticket, devuelve el ID del nuevo paso de procesamiento. |
create_ticket y apply_ticket_action no se registran en absoluto con --read-only — útil si un agente solo debe poder leer.
Los IDs de ticket se aceptan tanto como número como en la forma codificada que aparece en las líneas de asunto de los correos de HelpDesk.
Flujo típico
search_ticketscon una frase comoImpresoraoResource:"First Level Support"get_ticket/list_ticket_steps/get_ticket_steppara leerlist_ticket_actionspara determinar laaction_idválidaapply_ticket_actioncon esa ID — las IDs difieren según ticket, usuario y estado del ticket, por lo que no se deben adivinar.
Campos de ticket y argumentos de acción
ticket_fields, step_fields y action_arguments son opcionales y normalmente no se necesitan. Si se usan, se aplican las reglas de la API web: las claves deben corresponder a claves de campo reales (o su nombre visible localizado), los valores son cadenas; los valores JSON deben codificarse como cadena. Ejemplos de la documentación de i-net:
{
"ticketextension.dispatchNow": "ALWAYS", // Ticket sofort disponieren
"ticketextension.automail": "NO_MAILS_TO_ENDUSER", // keine Auto-Mails an Endanwender
"processingtimeextension.appointment": "1733875200000", // Wiedervorlage/Termin
"ticketactionextension.escalate": "{'targetResID':'<GUID>','changeTicketStatus':true}"
}Los campos de ticket desconocidos generan un error, los argumentos de acción desconocidos son descartados silenciosamente por HelpDesk y solo se escriben en el registro de depuración.
Archivos adjuntos
Los archivos adjuntos se pasan como una lista, cada uno con contenido ya sea en línea como Base64 o como ruta en el sistema de archivos del servidor:
{
"text": "Anfrage mit Anhang",
"attachments": [
{ "name": "screenshot.png", "content_base64": "iVBORw0KGgo…" },
{ "path": "/tmp/protokoll.pdf", "attachment_type": "Attachment" }
]
}path funciona solo en modo stdio, donde el agente y el servidor comparten la misma máquina; en los modos HTTP está automáticamente desactivado (y se puede deshabilitar también para stdio con --no-local-files). Valores permitidos para attachment_type: Attachment, EmbeddedImage, Signature, Unknown. Límite superior por archivo: 25 MB.
Configuración
Cada opción existe como variable de entorno y como conmutador de línea de comandos; la línea de comandos gana.
Variable de entorno | Conmutador | Por defecto | Significado |
|
| – | URLbase del HelpDesk, ej. |
|
| – | Token de acceso para |
|
| – | Basic Auth como alternativa al token |
|
|
|
|
|
|
| Dirección de enlace de los transportes HTTP |
|
|
| Puerto de los transportes HTTP |
|
|
| Ruta del endpoint HTTP transmisible |
|
|
| Tiempo de espera HTTP en segundos |
|
|
| Verificar certificado TLS del HelpDesk |
|
|
| Ocultar herramientas de escritura |
|
| solo sin | Permitir encabezado |
|
|
| Permitir archivos adjuntos por ruta de archivo |
|
|
| Idiom predeterminado de la frase de búsqueda |
Solución de problemas
Llamar primero a
server_info— muestra la URL base, el método de autenticación y si una consulta de prueba contra el HelpDesk funciona.HTTP 401/403: Token expirado o al usuario le falta el permiso "Web API".
HTTP 404 en un ticket: El ticket no existe o no es visible para este usuario; los tickets aún no autorizados necesitan el rol de despachador.
Errores de conexión: Verificar la URL base incluyendo el puerto (el valor predeterminado de HelpDesk es
9000). Con sistemas de prueba autofirmados ayuda--no-verify-tls.Más detalles con
--log-level DEBUG(los registros van a stderr).
Avisos de seguridad
Las credenciales están en variables de entorno o en el encabezado
Authorizationy nunca se registran.El servidor hace exactamente lo que el usuario conectado puede hacer: la verificación de permisos permanece en el HelpDesk.
apply_ticket_actionycreate_ticketmodifican datos y pueden, según la configuración, enviar correos electrónicos a los usuarios finales. Para pruebas se recomienda el argumento de acción"ticketextension.automail": "NEVER"o un sistema de prueba.get_ticketdevuelve de forma predeterminada todos los campos de un ticket, incluidos los datos personales: limitar específicamente confields.
Resumen en inglés
MCP server exposing the i-net HelpDesk Ticket Web-API: search, read, create and act on tickets, with attachment support. Run it over stdio (credentials from INET_BASE_URL + INET_TOKEN) or over streamable HTTP, where each client authenticates by sending its own Authorization: Bearer <token> header — and, when no base URL is configured, selects the HelpDesk instance with an X-Inet-Base-Url header. Tools: server_info, search_tickets, get_ticket, list_ticket_actions, list_ticket_steps, get_ticket_step, create_ticket, apply_ticket_action. Start with --read-only to expose the reading tools only.
Licencia
MIT. No es un producto oficial de i-net software GmbH. Documentación de la API web: https://docs.inetsoftware.de/helpdesk/help/webapi.ticket/p/ticket-web-api
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
AlicenseAqualityDmaintenanceAn MCP server that lets AI assistants search and read support tickets from Jitbit Helpdesk. Works with both SaaS and on-premise installations.3502MIT
tickiti-mcpofficial
AlicenseBqualityBmaintenanceAn MCP server that exposes the Tickiti helpdesk API to AI assistants, enabling ticket management and helpdesk operations via natural language.11MIT- AlicenseAqualityDmaintenanceMCP server for Otobo ITSM enabling AI assistants to search, create, update, and manage tickets via the Generic Interface REST API.10111MIT
- AlicenseAqualityBmaintenanceMCP server to manage GestSup tickets via an LLM, with tools for creating, reading, commenting, and searching tickets.13MIT
Related MCP Connectors
MCP server exposing the Backtest360 engine API as tools for AI agents.
Self-hosted MCP gateway: turn any API, database or MCP server into AI connectors — no code.
MCP server for AI access to SmartBear tools, including BugSnag, Reflect, Swagger, PactFlow, QTM4J.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/roddyst/i-net_mcp_server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server