A Python Model Context Protocol (MCP) server for GLPI IT Service Management, using SSE transport so it can be hosted as a persistent HTTP service and connected to by any MCP client (Claude Desktop, Claude Code, etc.).
Full ITIL coverage across 80+ tools:
| Category | Tools |
|---|---|
| Tickets | list, get, create, update, delete, add followup/task/solution, assign |
| Problems | list, get, create, update |
| Changes | list, get, create, update |
| Computers | list, get, create, update, delete |
| Software | list, get, create |
| Network Equipment | list, get |
| Printers / Monitors / Phones | list, get |
| Knowledge Base | list, get, search, create |
| Contracts | list, get, create |
| Suppliers | list, get, create |
| Locations | list, get, create |
| Projects | list, get, create, update |
| Users | list, get, search, create |
| Groups | list, get, create, add user |
| Categories / Entities / Documents | list, get |
| Statistics | ticket stats by status, asset inventory counts |
| Session | get full session info |
| Search | advanced search by criteria |
| Variable | Required | Description |
|---|---|---|
GLPI_URL |
Yes | Base URL of your GLPI instance, e.g. https://glpi.example.com |
GLPI_APP_TOKEN |
Recommended | Application token (configured in GLPI Setup → API) |
GLPI_USER_TOKEN |
One of these | Personal API token for the user |
GLPI_USERNAME |
One of these | Username (used with GLPI_PASSWORD) |
GLPI_PASSWORD |
One of these | Password |
HOST |
No | Bind host (default 0.0.0.0) |
PORT |
No | Bind port (default 8000) |
docker run -d \
-p 8000:8000 \
-e GLPI_URL=https://glpi.example.com \
-e GLPI_APP_TOKEN=your_app_token \
-e GLPI_USER_TOKEN=your_user_token \
manikumar1/glpi-mcp:latestpip install -r requirements.txt
export GLPI_URL=https://glpi.example.com
export GLPI_APP_TOKEN=your_app_token
export GLPI_USER_TOKEN=your_user_token
python server.pyThe server starts at http://localhost:8000/sse.
services:
glpi-mcp:
image: manikumar1/glpi-mcp:latest
ports:
- "8000:8000"
environment:
GLPI_URL: https://glpi.example.com
GLPI_APP_TOKEN: your_app_token
GLPI_USER_TOKEN: your_user_token
restart: unless-stopped{
"mcpServers": {
"glpi": {
"url": "http://localhost:8000/sse"
}
}
}claude mcp add glpi --transport sse http://localhost:8000/sse- In GLPI, go to Setup → General → API
- Enable the REST API
- Create an Application Token for this server
- Either use a User Token (from user preferences) or provide
GLPI_USERNAME+GLPI_PASSWORD
docker build -t glpi-mcp .Pre-built images are published to Docker Hub on every push to main and on version tags:
manikumar1/glpi-mcp:latest
manikumar1/glpi-mcp:main
manikumar1/glpi-mcp:v1.0.0
MIT