🚀 技能MCP GLPI v2.0
14种生产级工具,令牌效率70-85%,企业级安全
      
将Claude Code、Gemini CLI、ChatGPT、VS Code Copilot和Cursor连接到您的GLPI实例
为什么选择v2.0 • 14工具 • 快速开始 • 资源 • 支持
______________________________________________________________________
📖 关于项目
技能MCP GLPI v2.0 是用于GLPI(IT服务管理)的生产就绪模型上下文协议(MCP)服务器,具有革命性的令牌优化架构。建造于 IT技能,此MCP将68个专用工具整合为14个企业级工具,其中包含Markdown响应、工具注释和MCP资源。
🌟 为什么选择v2.0?
v1.0方法(68个工具,原始JSON响应)导致 代币爆炸 --典型的GLPI查询消耗50-100K令牌,可重用性有限。v2.0通过整合的Markdown优先设计解决了这个问题:
| 特性 | v1.0 | v2.0 |
|---|---|---|
| 工具 | 68个碎片 | 14合并 ✨ |
| 响应格式 | 原始JSON(详细) | Markdown(紧凑型) ✨ |
| 代币效率 | 每次操作约100K | 每次操作15-30K ✨ |
| 工具注释 | 没有 | 只读和破坏性提示 ✨ |
| MCP资源 | 0 | 4静态资源 ✨ |
| MCP提示 | 15个模板 | 15个专业提示 ✨ |
| 响应限制 | 默认值=50,最大值=1000 | 默认值=10,最大值=50 ✨ |
| 预计节省 | — | 代币减少70-85% ✨ |
______________________________________________________________________
🎯 关键改进
1. 综合工具包
- 14生产工具 按域组织(票证、资产、管理员、Webhooks、网桥)
- **搜索\_* +管理\_*\*\*模式:明确区分只读操作和变异操作
- 每个工具处理4-8个相关操作,减少上下文开销
2. 代币效率(降低70-85%)
Markdown格式的响应而不是JSON大大减少了令牌消耗:
- 之前:
{"user":{"id":1,"name":"John","email":"john@example.com","created":"2025-01-22T10:30:00Z"}} - 之后:
👤 **John** (john@example.com) — Created Jan 22, 2025
3. 企业安全
- LLM安全工具注释(readOnlyHint、destructiveHint)
- 激进的速率限制(默认值=10,每个请求的最大值=50)
- 从GLPI TinyMCE字段中删除HTML
- 自动内部字段过滤
4. MCP资源和提示
- 4 MCP资源: 实体列表、票证状态、类别、优先级
- 15 MCP提示: IT经理7人,支持分析师8人
- 无需繁重的工具定义即可实现高级工作流
5. 服务器端LLM指令
LLM在初始化时自动接收使用指南,确保最佳的工具使用模式。
______________________________________________________________________
🏗️ 建筑
┌─────────────────────────────────────────────────────────────────┐
│ Claude / ChatGPT / Gemini / Copilot / Cursor │
└─────────────────────────────────────────────────────────────────┘
│
│ MCP Protocol (HTTP JSON-RPC)
▼
┌─────────────────────────────────────────────────────────────────┐
│ Skills MCP GLPI v2.0 Server │
│ localhost:8824 │
│ ┌────────────────────────────────────────────────────────────┐ │
│ │ FastAPI + Formatters │ │
│ │ ┌──────────────┐ ┌──────────────┐ ┌──────────────────┐ │ │
│ │ │ 14 Tools │ │ 4 Resources │ │ 15 Prompts │ │ │
│ │ │ (Markdown) │ │ (Static URIs)│ │ (Parameterized) │ │ │
│ │ └──────────────┘ └──────────────┘ └──────────────────┘ │ │
│ │ ┌───────────────┬──────────────┬──────────────────────┐ │ │
│ │ │ HTML Stripper │ Field Filter │ Rate Limiter (10/50)│ │ │
│ │ └───────────────┴──────────────┴──────────────────────┘ │ │
│ └────────────────────────────────────────────────────────────┘ │
└─────────────────────────────────────────────────────────────────┘
│
│ GLPI REST API v1
▼
┌─────────────────────────────────────────────────────────────────┐
│ GLPI Server │
│ https://your-glpi-server.com │
└─────────────────────────────────────────────────────────────────┘______________________________________________________________________
🚀 快速开始
先决条件
- Python 3.11或更高版本
- 启用REST API的GLPI 10.x
- GLPI应用令牌和用户令牌
安装
# Clone the repository
git clone https://github.com/DevSkillsIT/mcp-glpi.git
cd mcp-glpi
# Create virtual environment
python3 -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# Install dependencies
pip install -r requirements.txtGLPI配置
- 启用REST API: 设置>常规>API-选中“启用REST API”
- 创建应用令牌: 设置>常规>API>API客户端-添加和复制令牌
- 获取用户令牌: 管理>用户>您的用户>远程访问密钥--生成令牌
环境设置
cp .env.example .env
nano .env# .env
GLPI_BASE_URL=https://your-glpi-server.com
GLPI_APP_TOKEN=your_app_token_here
MCP_PORT=8824
MCP_HOST=0.0.0.0
MCP_SAFETY_GUARD=true
MCP_SAFETY_TOKEN=secure_token_min_8_chars
RATE_LIMIT_REQUESTS_PER_MINUTE=500
LOG_LEVEL=INFO启动服务器
# Development
python -m uvicorn src.main:app --host 0.0.0.0 --port 8824 --reload
# Production (with PM2)
pm2 start ecosystem.config.cjs连接到克劳德代码
编辑 ~/.claude/settings.json:
{
"mcpServers": {
"glpi": {
"type": "streamable-http",
"url": "http://localhost:8824/mcp",
"headers": {
"X-GLPI-User-Token": "your_user_token_here"
}
}
}
}测试连接
curl http://localhost:8824/health______________________________________________________________________
🧰 14工具(v2.0)
🎫 门票(3个工具)
| 工具 | 说明 |
|---|---|
glpi_search_ticket_requests | 按状态、优先级、实体、类别搜索票证/事件/请求 |
glpi_manage_ticket_operations | CRUD:获取/创建/更新/删除/分配/关闭/解析/添加跟踪/获取跟踪/获取历史/获取状态 |
glpi_manage_ticket_ai_analysis | AI分析:触发器/获取结果/发布 |
💻 资产(2个工具)
| 工具 | 说明 |
|---|---|
glpi_search_asset_inventory | 按类型、实体、状态搜索计算机/显示器/软件/设备/预订 |
glpi_manage_asset_operations | CRUD+保留:获取/获取细节/创建/更新/删除/获取保留/创建保留 |
👥 管理员(2个工具)
| 工具 | 说明 |
|---|---|
glpi_search_admin_resources | 按名称、类型、状态搜索用户/组/实体/位置 |
glpi_manage_admin_resources | CRUD:获取/创建/更新/删除用户、组、实体、位置 |
🔗 Webhooks(2个工具)
| 工具 | 说明 |
|---|---|
glpi_search_webhook_integrations | 列出/过滤webhooks、交付历史、统计数据 |
glpi_manage_webhook_integrations | CRUD+控制:获取/创建/更新/删除/测试/触发/启用/禁用/重试 |
🌉 桥架(5个工具)
| 工具 | 说明 |
|---|---|
glpi_list_available_resources | 列出4个具有URI的MCP资源 |
glpi_read_resource_by_uri | 读取资源内容(实体、状态、类别、优先级) |
glpi_list_available_prompts | 列出15个专业MCP提示 |
glpi_get_prompt_template | 使用参数执行特定提示 |
glpi_search_knowledge_articles | 搜索知识库 |
______________________________________________________________________
📦 MCP资源(4个静态URI)
通过MCP资源协议访问参考数据:
| 资源 | URI | 内容 |
|---|---|---|
| 实体 | glpi://entities | 带ID的客户/公司列表 |
| 票务状态 | glpi://ticket-status | 状态码映射(新、已分配、等待、已解决、已关闭) |
| 类别 | glpi://ticket-categories | 类别树(硬件、软件、网络等) |
| 优先事项 | glpi://priorities | 优先级(非常低到非常高) |
用途: 使用 glpi://entities 资源以查找正确的ID。
______________________________________________________________________
📋 MCP提示(15个模板)
IT经理提示(7)
glpi_sla_performance--每月SLA仪表板,显示响应时间和合规性glpi_ticket_trends--随着时间的推移,按类别分析票务模式glpi_asset_roi--每个客户的资产投资回报率分析glpi_technician_productivity--团队生产力指标和排名glpi_cost_per_ticket--成本分析和可出租性报告glpi_recurring_problems--识别重复出现的问题以采取预防措施glpi_client_satisfaction--NPS、CSAT和SLA合规记分卡
支持分析师提示(8)
glpi_ticket_summary--WhatsApp/Teams的快速工单摘要glpi_user_ticket_history--用户的完整票务历史和模式glpi_asset_lookup--按名称、序列号或用户快速搜索资产glpi_onboarding_checklist--新员工IT入职检查表glpi_incident_investigation--RCA(根本原因分析)模板glpi_change_management--变更请求(RFC)工作流程检查表glpi_hardware_request--硬件请求和审批工作流glpi_knowledge_base_search--智能知识库查找
______________________________________________________________________
💡 使用示例
# Search for tickets
GLPI, list all open tickets with high priority
# Quick asset lookup
GLPI, search equipment for user John Smith
# Get resource data
Use the glpi://entities resource to find entity IDs
# Execute prompt
GLPI, use glpi_sla_performance for last 30 days analysis______________________________________________________________________
🛡️ 企业功能
工具注释
所有工具都包括LLM推理的安全提示:
{
"name": "glpi_manage_ticket_operations",
"readOnlyHint": "Use search_* tools for read-only lookups",
"destructiveHint": "delete operation requires confirmationToken"
}激进的利率限制
- 违约: 每个请求10个结果
- 最大值: 每个请求50个结果
- 防止上下文溢出和令牌浪费
HTML条带
GLPI TinyMCE字段自动转换为纯文本:
Before: "
Issue started yesterday morning
"
After: "Issue started yesterday morning"字段过滤
内部GLPI字段已自动删除:
Removed: _links, links, completename, etc.
Kept: user-facing fields only______________________________________________________________________
🔄 从v1.0迁移
v2.0将68个工具合并为14个。如果从v1.0升级:
之前(v1.0):
68 tools: glpi_list_tickets, glpi_get_ticket, glpi_get_ticket_by_id,
glpi_get_ticket_by_number, glpi_create_ticket, glpi_update_ticket,
glpi_delete_ticket, glpi_assign_ticket, glpi_close_ticket, ...在(v2.0)之后:
14 tools: glpi_search_ticket_requests, glpi_manage_ticket_operations,
glpi_manage_ticket_ai_analysis, glpi_search_asset_inventory,
glpi_manage_asset_operations, glpi_search_admin_resources, ...主要变化:
- 使用
glpi_search_*用于只读操作(搜索、列表、查找) - 使用
glpi_manage_*用于突变(创建、更新、删除、分配) - 响应格式为Markdown而不是JSON
- 限制非常严格(默认值=10,最大值=50),以防止代币浪费
- 工具注释指导LLM实现最佳使用
______________________________________________________________________
💼 需要GLPI或AI方面的帮助? 技能IT-技术解决方案 专门从事IT基础设施,在以下方面拥有深厚的专业知识 GLPI IT服务管理我们的团队在以下方面拥有专业知识 人工智能 和 模型上下文协议(MCP),为自动化和系统集成提供完整的解决方案。 我们的服务: - ✅ GLPI咨询和实施 - ✅ 为您的基础设施定制MCP开发 - ✅ 人工智能与企业系统的集成 - ✅ 票务和资产管理自动化 - ✅ 专业培训和支持 📞 WhatsApp/电话: +55 63 3224-4925-巴西🇧🇷 🌐 网站: skillsit.com.br 📧 电子邮件: contato@skillsit.com.br *“将基础设施转变为智能”*
______________________________________________________________________
⚙️ 配置
每用户身份验证
每个用户都配置自己的 X-GLPI-User-Token:
- 使用您的凭据访问GLPI
- 首选 偏好 (右上角)
- 在 个人访问令牌,单击 再生
- 复制生成的令牌
环境变量
| 变量 | 必填 | 描述 |
|---|---|---|
GLPI_BASE_URL | 是 | GLPI服务器URL |
GLPI_APP_TOKEN | 是 | GLPI应用令牌 |
MCP_PORT | 否 | 服务器端口(默认值:8824) |
MCP_HOST | 否 | 服务器主机(默认值:0.0.0.0) |
MCP_SAFETY_GUARD | 否 | 启用删除保护(默认值:true) |
MCP_SAFETY_TOKEN | 条件 | 如果启用了安全防护,则确认令牌 |
RATE_LIMIT_REQUESTS_PER_MINUTE | 否 | 速率限制(默认值:500) |
LOG_LEVEL | 否 | 日志记录级别(默认值:INFO) |
______________________________________________________________________
🧪 测试
# Run all tests
pytest tests/ -v
# With coverage
pytest tests/ --cov=src --cov-report=html
# Specific test file
pytest tests/test_models.py -v测试覆盖范围: 323个自动化测试,涵盖单元、集成、合同和E2E场景。
______________________________________________________________________
🔧 维护
PM2命令
pm2 status mcp-glpi # Status
pm2 logs mcp-glpi # Real-time logs
pm2 restart mcp-glpi # Restart
pm2 monit # Monitoring更新
git pull origin main
source venv/bin/activate
pip install -r requirements.txt
pm2 restart mcp-glpi______________________________________________________________________
📚 实用链接
- GLPI项目 --GLPI官方网站
- GLPI API文件 -REST API文档
- MCP规范 --MCP协议规范
- 技能IT网站 --我们公司网站
______________________________________________________________________
📋 需求
| 组件 | 版本 |
|---|---|
| Python | 3.11+ |
| GLPI | 10.x |
| FastAPI | 0.104+ |
| Pydantic | 2.x |
| MCP协议 | 2024-11-05 |
______________________________________________________________________
🤝 贡献
欢迎投稿!分叉存储库,创建一个功能分支,并使用常规提交消息打开Pull Request。
______________________________________________________________________
📞 支持
错误报告
打开一个问题 具有再现步骤和环境细节。
电子邮件
技术支持:contato@skillsit.com.br
______________________________________________________________________
📄 许可证
MIT许可证——见 许可证 了解详情。
______________________________________________________________________
制造于❤️ by Skills IT - IT解决方案 - 中国
*我们是一家MSP,为其他MSP提供智能自动化。*
版本: 2.0.0 | 最后更新时间: 2026年3月
🇧🇷 自豪地在巴西制造
