{
  "version": "2",
  "generatedAt": "2026-11-03T22:49:39.280Z",
  "listing": {
    "slug": "glpi-project--glpi",
    "name": "GLPI",
    "tagline": "ITIL service desk and asset manager with a Builder-documented REST API over every item type.",
    "shortTagline": "ITIL service desk and asset manager",
    "description": "GLPI is a GPL IT service management suite: tickets, incidents, problems, changes, assets, contracts, licenses, knowledge base, projects, and a plugin marketplace. Teclib ships GLPI Network Cloud as the hosted edition. The repo carries apirest.md, a REST API that exposes session, search, and CRUD over every GLPI item type, which is what the community MCP wrappers proxy.",
    "capabilities": [
      "adaptable",
      "operable"
    ],
    "vertical": "support-bookkeeping",
    "alternativeTo": [
      "ServiceNow",
      "Jira Service Management"
    ],
    "shape": "business-app",
    "formFactor": "web-app",
    "executionModel": "deterministic",
    "provenance": "human-written",
    "codeStack": {
      "languages": [
        "PHP",
        "JavaScript",
        "Twig"
      ],
      "frameworks": [
        "Symfony components",
        "Vue"
      ],
      "packageManager": "composer, npm",
      "database": [
        "MariaDB",
        "MySQL"
      ],
      "hostingTarget": [
        "self-host (Apache/nginx/IIS)",
        "docker-compose.yaml in repo"
      ]
    },
    "modelStack": null,
    "repos": [
      {
        "url": "https://github.com/glpi-project/glpi",
        "owner": "glpi-project",
        "name": "glpi",
        "license": "GPL-3.0",
        "stars": 6300,
        "lastCommit": "2026-09-02"
      }
    ],
    "interface": {
      "kind": "api",
      "url": "https://github.com/glpi-project/glpi/blob/main/apirest.md",
      "official": true,
      "hosted": "local"
    },
    "operability": "official",
    "recommendedWrapper": {
      "url": "https://github.com/svtica/glpi-mcp",
      "reason": "If an MCP is wanted over the official REST API: pushed 2026-09-02 (recency first); Unlicense; 4 stars. Breadth of tools not verified.",
      "runnerUp": "https://github.com/GMS64260/mcp-glpi (24 stars, MIT, pushed 2026-08-05)"
    },
    "reach": [
      {
        "job": "Create, read, update, and search tickets",
        "reachable": true,
        "evidence": "apirest.md: Get an item, Get all items, Search items, Add item(s), Update item(s), Delete item(s) for any itemtype including Ticket"
      },
      {
        "job": "Manage incidents, problems, and changes",
        "reachable": true,
        "evidence": "same generic item endpoints; Problem and Change are itemtypes"
      },
      {
        "job": "Track assets and configuration items",
        "reachable": true,
        "evidence": "Computer, Printer, NetworkEquipment and other asset itemtypes through generic CRUD; Get sub items for components"
      },
      {
        "job": "Attach and download documents",
        "reachable": true,
        "evidence": "apirest.md special cases: Upload a document file, Download a document file"
      },
      {
        "job": "Bulk actions on many items",
        "reachable": true,
        "evidence": "apirest.md: Get available massive actions, Apply massive action"
      },
      {
        "job": "Knowledge base and FAQ",
        "reachable": true,
        "evidence": "KnowbaseItem is an itemtype under the generic endpoints"
      },
      {
        "job": "Contracts, licenses, and financial fields",
        "reachable": true,
        "evidence": "Contract, SoftwareLicense itemtypes through generic CRUD"
      },
      {
        "job": "Run inventory from endpoints",
        "reachable": false,
        "evidence": "inventory is pushed by GLPI Agent installed on machines, not driven through the REST API"
      },
      {
        "job": "Build dashboards and reports",
        "reachable": false,
        "evidence": "no dashboard endpoints in apirest.md headings"
      },
      {
        "job": "Install plugins and configure entities",
        "reachable": false,
        "evidence": "marketplace and admin configuration are UI and CLI (bin/console), not REST"
      }
    ],
    "editions": [
      {
        "name": "Free (self-hosted)",
        "price": null,
        "open": true,
        "distributions": [
          {
            "kind": "source",
            "url": "https://github.com/glpi-project/glpi"
          },
          {
            "kind": "binary",
            "url": "https://github.com/glpi-project/glpi/releases"
          },
          {
            "kind": "container",
            "url": "https://github.com/glpi-project/glpi/blob/main/docker-compose.yaml"
          }
        ]
      },
      {
        "name": "GLPI Network Cloud",
        "price": null,
        "open": false,
        "distributions": [
          {
            "kind": "hosted",
            "url": "https://www.glpi-network.cloud"
          }
        ]
      }
    ],
    "skills": {
      "kind": "none",
      "paths": [],
      "install": null,
      "note": "No SKILL.md, Claude Code plugin, or skills install target in the repo."
    },
    "customization": {
      "summary": "Install writes config/config_db.php (database) and most behavior is set in the admin UI: entities, ticket templates, business rules, SLAs, notifications. Overrides for constants live in config/local_define.php per the install docs. An SMB edits config_db.php once, then adapts through the UI and marketplace plugins rather than code. The REST API needs an app token (Setup > General > API) and a user token per agent.",
      "envVars": [],
      "configFiles": [
        "config/config_db.php",
        "config/local_define.php"
      ],
      "promptFiles": [],
      "effort": "config-only",
      "editCount": 2
    },
    "useWhen": [
      "we are an MSP or internal IT team and want tickets, assets, and contracts in one place that our agent can query and update through a stable API",
      "we need ITIL-style incident, problem, and change records rather than a chat-first support inbox"
    ],
    "accounts": [
      "none for self-host; Teclib account for GLPI Network Cloud"
    ],
    "active": true,
    "lastActivity": "2026-09-02",
    "gotchas": [
      "REST API is disabled by default and needs an app token plus IP allowlist under Setup > General > API",
      "IT-helpdesk flavour: customer-facing support (chat, social channels) is not native",
      "GPL-3.0 copyleft; PHP 8.2+ and MariaDB 10.6+ required",
      "Official REST API v1 is being superseded by a High-Level API in GLPI 11; endpoint paths may change"
    ],
    "fit": {
      "adaptable": 2,
      "operable": 3
    },
    "evidence": {
      "formFactor": "README prerequisites: web server, PHP, MariaDB",
      "executionModel": "no model SDKs in the feature list or composer.json topics seen",
      "operability": "apirest.md in glpi-project/glpi: POST apirest.php/initSession with 'Authorization: Basic base64(login:password)' or 'Authorization: user_token <token>' (Remote access key in User Preferences) plus an App-Token header from Setup > General > API; returns a Session-Token header used on every other call. Documents session, search, generic CRUD per itemtype, massive actions, document upload/download. No dashboard headings.",
      "effort": "config/ directory in repo holds only .gitkeep; config_db.php is generated by the installer; local_define.php named in glpi-install docs (not fetched, confidence 0.6)",
      "editions": "README: distributed under GPL v3; glpi-network.cloud demo link in README",
      "active": "gh api: pushed 2026-09-02, 6300 stars"
    },
    "confidence": {
      "formFactor": 0.95,
      "executionModel": 0.85,
      "operability": 0.95,
      "effort": 0.6,
      "reach": 0.8,
      "editions": 0.7
    },
    "openQuestions": [
      "GLPI Network Cloud pricing",
      "Confirm config/local_define.php is still the documented override file in GLPI 11",
      "Tool breadth of svtica/glpi-mcp versus GMS64260/mcp-glpi; the recency rule picked the smaller one"
    ],
    "sources": [
      {
        "url": "https://github.com/glpi-project/glpi",
        "foundBy": "sourcing:support-bookkeeping:curated"
      },
      {
        "url": "https://github.com/glpi-project/glpi/blob/main/apirest.md",
        "foundBy": "sourcing:support-bookkeeping:curated"
      },
      {
        "url": "https://github.com/GMS64260/mcp-glpi",
        "foundBy": "sourcing:support-bookkeeping:registries"
      },
      {
        "url": "https://github.com/svtica/glpi-mcp",
        "foundBy": "sourcing:support-bookkeeping:registries"
      }
    ],
    "research": {
      "stage": "verified",
      "verdict": "approve",
      "reason": "The Builder's own apirest.md documents a REST API with non-interactive auth: a user token or Basic credentials plus an app token at initSession yield a session token for all other calls. Reach stands at seven of ten; inventory, dashboards, and plugin setup stay outside the API.",
      "disputed": []
    },
    "url": "apps/glpi-project--glpi.html",
    "coverage": "partial",
    "paid": false,
    "source": "research/verified/glpi-project--glpi.json"
  }
}
