Skip to main content

GLPI client

Project description

TLDR

Just execute the following line to use from Claude Code:

claude mcp add --transport http glpi http://your_server:8000/mcp

About

This repo contains code for a MCP interacting with GLPI API to allow consuming it from any LLM. Additionally a lightweight client is available

Available tools
create_reservation
delete_reservation
info_computer
info_reservation
get_user
list_computers
list_reservations
list_users
update_computer
update_reservation

Requirements

  • Available glpi instance
  • Valid user and API token

Installation

You can either run as a container or install dependencies locally

pip3 install glpic

Using MCP

STDIO

Include the following configuration snippet In VSCode or Claude Desktop:

"mcpServers": {
    "glpi": {
        "command": "python3",
        "args": ["/path/to/glpic/src/glpic/mcp_server.py", "--stdio"],
        "env": {
            "GLPI_URL": "https://server/apirest.php",
            "GLPI_USER": "myuser",
            "GLPI_TOKEN": "mytoken"
            }
        }
    }

Streamable HTTP

For Streamable HTTP, first start the server in a terminal:

glpimcp

or via a container (with additional env variables to avoid defining headers on client side)

podman run -p 8000:8000 -d --name glpi --entrypoint=/usr/local/bin/glpimcp quay.io/karmab/glpic

You can also set env variables prior to launching or in the container to avoid defining headers on client side). For instance

podman run -p 8000:8000 -d --name glpi -e GLPI_URL=https://glpiserver/apirest.php -e GLPI_USER=myser -e GLPI_TOKEN=mytoken --entrypoint=/usr/local/bin/glpimcp quay.io/karmab/glpic

You can then point to the server from your client with a modified snippet and specifying credentials via headers if needed

"mcpServers": {
         "glpi": {
             "command": "/usr/local/bin/npx",
             "args": ["mcp-remote", "http://your_server:8000/mcp", "--allow-http",
             "--header", "GLPI_URL: https://glpiserver/apirest.php",
             "--header", "GLPI_USER: myuser",
             "--header", "GLPI_TOKEN: mytoken"]
        }
    }

For Claude Code, you can add the mcp directly from command line:

claude mcp add --transport http glpi http://your_server:8000/mcp -H "GLPI_URL: https://myserver/apirest.php" -H "GLPI_USER: myuser" -H "GLPI_TOKEN: mytoken"

Using client

Store your creds in any env file such as glpic.env.sample and set data accordingly. You can then use glpic and access similar functions

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

glpic-99.0.202511050914.tar.gz (9.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

glpic-99.0.202511050914-py3-none-any.whl (9.2 kB view details)

Uploaded Python 3

File details

Details for the file glpic-99.0.202511050914.tar.gz.

File metadata

  • Download URL: glpic-99.0.202511050914.tar.gz
  • Upload date:
  • Size: 9.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for glpic-99.0.202511050914.tar.gz
Algorithm Hash digest
SHA256 1cbc08149d13d993ffdb2d6a1f8d6d89b7686a17b3671f4edf273372bb7aaa5e
MD5 ada93e120784bda1ea0469c075f2c362
BLAKE2b-256 0f9f10a00e199799df4612468c6129f8f4f078b667e0b19de6e2b97c605bd5a5

See more details on using hashes here.

File details

Details for the file glpic-99.0.202511050914-py3-none-any.whl.

File metadata

File hashes

Hashes for glpic-99.0.202511050914-py3-none-any.whl
Algorithm Hash digest
SHA256 a908a89e0393d18f3b59906a0dc2c91a975ed1b471dd0f88d843fe932d8b28b1
MD5 7198d2c0b1ea2e58c65595e83955d39d
BLAKE2b-256 e0f136e5c8edb4ef61edcb2dda8119fa46828e2b16621af7193999c8db4d48b0

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page