使用说明
IncidentIQ MCP服务器
IncidentIQ的模型上下文协议服务器-排名第一的K-12服务管理平台
概述
IncidentIQ MCP服务器使像Claude这样的人工智能助手能够与K-12学区的IncidentIQ实例进行交互,简化IT运营、资产管理和教育机构的支持工作流程。
IncidentIQ是排名第一的K-12服务管理平台,被美国2000多个学区使用。此MCP服务器提供与IncidentIQ全面的API的无缝集成,使人工智能助手能够:
- 🎫 管理IT帮助台工单 -搜索、查看、更新状态、设置紧急/敏感度、管理任务
- 💻 跟踪技术资产 -搜索和管理Chromebook、iPad和其他设备
- 👥 查找用户 -在学区系统中查找学生、教职员工和家长
- 🏫 导航位置 -访问建筑物和房间信息
- 👪 协调团队 -查看IT支持团队、成员和工作负载
- 🔧 管理维修 -跟踪零件库存、采购订单和设备维修工作流程
特征
📊 API全面覆盖
12个注册域模块中的158个MCP工具,所有这些都连接到服务器,并针对生产K-12地区实例进行验证。
| 模块 | 状态 | 工具 |
|---|---|---|
| 门票 | ✅ 已注册 | 15 |
| 资产 | ✅ 已注册 | 15 |
| 用户 | ✅ 已注册 | 15 |
| 地点 | ✅ 已注册 | 17 |
| 团队 | ✅ 已注册 | 9 |
| 零件 | ✅ 已注册 | 20 |
| 采购订单 | ✅ 已注册 | 14 |
| 问题 | ✅ 已注册 | 20 |
| 自定义字段 | ✅ 已注册 | 18 |
| SLA | ✅ 已注册 | 4 |
| 视图 | ✅ 已注册 | 5 |
| 通知 | ✅ 已注册 | 6 |
| 分析 | 🚧 已实施,尚未注册 | 11 |
可用的MCP工具
🎫 票务管理(15个工具)
搜索和列表操作
ticket_search-使用文本、分页和方面过滤器搜索票证:statusIds,agentIds,agentEmails(任何域),teamIds,locationIds一个方面内的多个值匹配ANY(OR);不同的方面与AND相结合。状态筛选扫描有限数量的页面(设置IIQ_TICKET_FILTER_MAX_PAGES,默认值5,范围1-50;超过上限的结果被标记为截断)。ticket_get-通过ID获取详细的门票信息ticket_get_statuses-获取所有可用的票证状态ticket_get_priorities-获取所有可用的票优先级
票务详情
ticket_get_assets-获取与票证关联的资产ticket_get_sla-获取票证的SLA信息
状态管理
ticket_update_status-更新工单状态(等待/已响应)ticket_set_urgency-将票标记为紧急/不紧急ticket_set_sensitivity-将票标记为敏感/不敏感ticket_confirm_issue-确认或取消确认问题
票务操作
ticket_cancel-取消机票ticket_unassign-从用户/团队/SLA取消分配ticket_mark_duplicate-标记为另一张票的副本
向导操作
ticket_get_wizards-获取可用的票证创建向导ticket_get_wizards_by_site-获取特定站点的向导
💻 资产管理(15种工具)
asset_search_advanced-使用过滤器和分页搜索IT资产asset_find_by_tag/asset_search_by_tag-按标签号查找资产asset_find_by_serial/asset_search_by_serial-按序列号查找资产asset_get_history-获取资产的活动历史记录asset_get_user_devices-列出分配给用户的设备asset_get_inventory_counts-获取库存汇总计数asset_get_status_types/asset_get_funding_types-参考数据- …以及更多(备件、收藏夹、按房间、按存储)
👥 用户管理(15个工具)
user_search_advanced/user_quick_search-搜索用户(学生/教职员工/家长)user_get_details-按ID获取用户详细信息user_get_students/user_get_staff/user_get_parents-筛选目录查找user_get_all_agents/user_search_agents-列出IT支持代理user_get_by_location-某个位置的用户user_statistics_grades/user_statistics_locations-人口统计- …以及更多(组、权限、当前用户)
🏫 位置管理(17个工具)
location_get_all-列出所有地区位置location_search_advanced-搜索特定位置location_get_details-按ID获取位置详细信息location_get_buildings/location_get_campuses-建筑层次结构location_get_building_rooms/location_find_special_rooms-房间查询location_get_assets/location_get_users/location_get_tickets-交叉引用- …以及更多(层次结构、儿童、可用房间)
👪 团队管理(9个工具)
team_get_all/team_search-列出或搜索IT支持团队team_get/team_get_members/team_get_agents-团队详细信息和名单team_get_tickets/team_get_locations/team_get_categories/team_get_stats-团队背景
🔧 零件和维修(20个工具)
parts_get_all/parts_search/parts_find_by_number-库存查询parts_check_stock/parts_get_low_stock/parts_get_by_location-库存跟踪parts_get_chromebook_parts/parts_get_ipad_parts/parts_get_compatible-设备部件parts_get_suppliers/parts_get_supplier_details-供应商parts_record_usage/parts_transfer/parts_get_repair_costs-维修工作流程- …以及更多(订单、常见维修、票务零件)
🧾 采购订单(14个工具)
purchaseorder_get_all/purchaseorder_search/purchaseorder_get-PO查询purchaseorder_get_pending/purchaseorder_get_approved/purchaseorder_get_completed-按状态purchaseorder_get_items/purchaseorder_get_parts/purchaseorder_get_attachments-PO内容purchaseorder_get_history/purchaseorder_get_summary/purchaseorder_get_supplier-PO上下文
🐞 问题类型(20个工具)
issues_get_types/issues_search_types/issues_get_type_details-问题类型目录issues_get_categories/issues_get_category_hierarchy-类别结构issues_get_chromebook_issues/issues_get_network_issues/issues_get_classroom_tech-常见的K-12问题issues_get_priorities/issues_get_priority_sla-优先级和SLA映射- …以及更多(模板、定期、季节性、父门户)
🏷️ 自定义字段(18个工具)
customfield_get_all/customfield_search/customfield_find_by_name-现场目录customfield_get_by_entity/customfield_get_types/customfield_get_type_details-字段定义customfield_get_asset_values/customfield_get_ticket_values/customfield_get_user_values/customfield_get_location_values-字段值customfield_validate_value/customfield_get_required/customfield_get_options-验证
📈 SLA管理(4个工具)
sla_list-获取所有已配置的SLAsla_get_metrics-获取SLA性能指标sla_get_metric_types-获取度量类型(响应/分辨率/自定义)sla_get_ticket_status-检查票证的SLA合规性
👁️ 视图管理(5个工具)
view_list_all-获取所有可用视图view_list_user-获取用户特定的视图view_list_tickets-获取门票视图view_list_assets-获取资产视图view_list_users-获取用户目录视图
🔔 通知和电子邮件(6个工具)
notification_get_ticket_emails-获取门票电子邮件notification_query-使用过滤器搜索通知notification_get_unread-获取未读通知notification_get_unarchived-获取未存档的通知notification_mark_all_read-将所有内容标记为已读notification_mark_read-将特定通知标记为已读
安装
先决条件
- Node.js >=22(升)
- 您所在地区的IncidentIQ API证书
注: 此服务器运行在Node.js上,由MCP客户端通过以下方式启动
node(或npx), 符合标准MCP服务器惯例。开发工具链使用npm+Vitest。
安装(已发布的软件包)
发布的版本发布到 GitHub 包 作为 @iiq-community/mcp-incidentiq 每个包装上都附有皮球 GitHub 发布两条安装路径:
A——GitHub Packages注册表(需要一个令牌)。 GitHub软件包甚至需要身份验证 公共 包,所以创建一个 .npmrc GitHub令牌具有 read:packages 范围:
可见性注释: GitHub Packages仅在包的可见性为 公共.直到维护者将其设置为公共(组织→ 包裹→
mcp-incidentiq→ 软件包设置→ 更改可见性→ 公共),只有IIQ社区成员可以通过注册表安装——其他人都应该使用 路径B 下面,它是公开的,不需要令牌。
# .npmrc
@iiq-community:registry=https://npm.pkg.github.com
//npm.pkg.github.com/:_authToken=${GITHUB_TOKEN}
npm install @iiq-community/mcp-incidentiq
B——GitHub发布tarball(无令牌)。 下载 iiq-community-mcp-incidentiq-<version>.tgz 从 最新版本,然后直接安装它——不需要注册表身份验证:
npm install ./iiq-community-mcp-incidentiq-<version>.tgz
两者都暴露了 mcp-incidentiq 二元的;将您的MCP客户端指向它(例如。 npx @iiq-community/mcp-incidentiq 一旦 .npmrc 已设置,或 node .../dist/index.js).请参阅下面的集成示例。要在服务器本身上工作,请使用源代码设置:
快速入门(来源)
- 克隆存储库:
git clone https://github.com/IIQ-Community/mcp-incidentiq.git
cd mcp-incidentiq
- 安装依赖项:
npm install
- 配置您的环境:
cp .env.example .env
编辑 .env 持有您所在地区的IncidentIQ证书:
# Your district's IncidentIQ URL (e.g., https://mydistrict.incidentiq.com/api/v1.0)
IIQ_API_BASE_URL=https://your-district.incidentiq.com/api/v1.0
# API key from IncidentIQ Administration > Developer Tools
IIQ_API_KEY=your-api-key-here
# Optional: Request timeout in milliseconds (default: 30000)
IIQ_API_TIMEOUT=30000
配置
获取API证书
- 以管理员身份登录您所在地区的IncidentIQ实例
- 导航至 行政 > 开发工具
- 生成或复制API密钥(JWT令牌)
- 记下您所在地区的基本URL(格式:
https://[district].incidentiq.com)
与AI助手集成
Claude代码集成
首先构建服务器(npm run build),然后在Claude Code CLI中注册它:
claude mcp add incidentiq \
-e IIQ_API_BASE_URL=https://your-district.incidentiq.com/api/v1.0 \
-e IIQ_API_KEY=your-api-key-here \
-- node /path/to/mcp-incidentiq/dist/index.js
替换 /path/to/mcp-incidentiq 与这个项目的实际路径。验证它是否已添加 claude mcp list.
Claude桌面集成
要将此MCP服务器与Claude Desktop一起使用,请参阅我们的综合 Claude桌面设置指南.
快速配置示例:
- 打开克劳德桌面设置
- 导航到“开发人员”>“MCP设置”
- 添加以下配置:
{
"mcpServers": {
"incidentiq": {
"command": "node",
"args": ["/path/to/mcp-incidentiq/dist/index.js"],
"env": {
"IIQ_API_BASE_URL": "https://your-district.incidentiq.com/api/v1.0",
"IIQ_API_KEY": "your-api-key-here"
}
}
}
}
替换 /path/to/mcp-incidentiq 与这个项目的实际路径。
用法
开发模式
npm run dev
这将启动服务器,并启用热重新加载以进行开发。
生产模式
npm run build
npm run start
测试连接
连接到Claude后,您可以测试您的连接:
Claude: "Test the IncidentIQ connection"
这将验证:
- API密钥有效性
- 与您所在地区实例的网络连接
- 正确配置
交互示例
# Search and view tickets
Claude: "Search for all urgent tickets"
Claude: "Show me details for ticket 00000000-0000-0000-0000-000000000000"
Claude: "Get all ticket priorities and statuses"
# Update ticket status
Claude: "Mark ticket [id] as waiting on requestor"
Claude: "Set ticket [id] as urgent and sensitive"
Claude: "Confirm the issue in ticket [id]"
# Manage ticket assignments
Claude: "Cancel ticket [id]"
Claude: "Unassign ticket [id] from the current team"
Claude: "Mark ticket [id] as duplicate of [other-id]"
# Look up assets
Claude: "Find Chromebook with tag CHR-12345"
Claude: "Show assets linked to ticket [id]"
# Get user information
Claude: "Look up user Jane User"
# Check SLA status
Claude: "Show SLA information for ticket [id]"
K-12教育重点
此MCP服务器是专门为K-12教育环境设计的:
关键用例
- 1:1设备程序:高效管理学生Chromebook和iPad
- 课堂支持:针对课堂技术问题快速创建工单
- 资产跟踪:为学生和教职员工分配跟踪设备
- 楼宇管理:组织学校和教室的支持
- 夏日焕新:支持设备收集和部署工作流
- 家长沟通:访问家长可见的门票信息
FERPA和隐私合规
此工具的设计考虑到了学生的隐私:
- MCP服务器不存储学生数据
- 所有API调用都直接转到您所在地区的IncidentIQ实例
- 遵循您所在地区的数据治理政策
- API访问由您的IncidentIQ权限控制
发展
项目结构
mcp-incidentiq/
├── src/
│ ├── index.ts # Main MCP server entry point (registers all tool modules)
│ ├── api/
│ │ └── client.ts # IncidentIQ API client
│ ├── tools/ # MCP tool implementations (one module per domain)
│ │ ├── tickets.ts # Ticket management tools
│ │ ├── assets.ts # Asset management tools
│ │ ├── users.ts # User management tools
│ │ ├── locations.ts # Location management tools
│ │ ├── teams.ts # Team management tools
│ │ ├── parts.ts # Parts & repair tools
│ │ ├── purchaseorders.ts# Purchase order tools
│ │ ├── issues.ts # Issue type tools
│ │ ├── customfields.ts # Custom field tools
│ │ ├── slas.ts # SLA tools
│ │ ├── views.ts # View tools
│ │ ├── notifications.ts # Notification & email tools
│ │ └── analytics.ts # Analytics tools (defined, not yet registered)
│ └── types/ # TypeScript type definitions
│ └── common.ts # Shared type definitions
└── dist/ # Compiled JavaScript output
可用脚本
npm run dev-使用热重新加载启动开发服务器npm run build-将TypeScript构建为JavaScriptnpm run start-运行生产服务器npm run type-check-无建筑类型检查npm run clean-清理构建目录npm run test/npm run test:unit-运行单元测试套件npm run test:coverage-使用覆盖率报告运行单元测试
API集成
支持的IncidentIQ模块
此MCP服务器与IncidentIQ的核心模块集成:
- ✅ IT帮助台 -完整的票证生命周期管理
- ✅ 资产管理 -设备跟踪和库存
- ✅ 用户目录 -学生、教职员工和家长查询
- ✅ 位置 -建筑和房间管理
- ✅ 团队 -IT支持团队名册和工作量
- ✅ 零件库存 -维修零件跟踪和供应商管理
- ✅ 采购订单 -按状态、项目和历史记录跟踪采购订单
- ✅ 问题类型 -问题/类别目录和K-12问题模板
- ✅ 自定义字段 -所有实体的地区特定数据
- ✅ SLA/视图/通知 -合规性指标、保存的视图和电子邮件/通知访问
- 🚧 分析 -已实施但尚未在服务器中注册的报告工具
API速率限制
服务器实现负责任的API使用:
- 尊重偶发事件IQ率限制
- 实现请求超时处理
- 提供详细的错误消息
- 记录所有API交互以进行调试
贡献
我们欢迎K-12 IT社区的贡献!请查看我们的 贡献指南 了解详情。
治理: main 受保护——贡献通过拉取请求获得,只需1次批准+代码所有者审查,所有CI检查通过,对话解决,合并提交。看 存储库治理 用于完整的工作流程和安全设置。
如何做出贡献
- 分叉存储库
- 创建要素分支(
git checkout -b feat/amazing-feature) - 使用提交 约定式提交 --例如。
git commit -m 'feat: add amazing feature'.一个共产党员commit-msg钩子(通过预提交框架强制执行)在本地拒绝不符合要求的消息;看见 贡献.md. - 推到分支(
git push origin feat/amazing-feature) - 打开拉取请求
贡献理念
- 其他工具实现
- 与更多IncidentIQ模块集成
- 改进了错误处理
- 文档改进
- Bug修复和优化
故障排除
常见问题
连接失败
- 验证您的API密钥是否正确
- 检查基本URL格式(应以结尾
/api/v1.0) - 确保您的IncidentIQ实例可访问
- 验证您的帐户是否已启用API访问
未找到工具
- 跑
npm run build编译TypeScript代码 - 配置更改后重新启动Claude Desktop
- 检查MCP服务器日志是否有错误
权限错误
- 确保您的API密钥具有适当的权限
- 某些操作可能需要管理员权限
- 请与您的IncidentIQ管理员联系
支持
版本控制和发布
该项目如下 语义版本控制 并使用
语义释放 用于全自动发布。每一次推动
main 分析 常规承诺 历史,计算
下一个版本,将包发布到 GitHub 包
以及GitHub版本( npm pack 附带tarball,可免费安装)和更新
CHANGELOG.md / CITATION.cff / package.json --没有手动版本颠簸。该项目正在进行中 0.x 线,所以a
突破性的改变会产生轻微的冲击(不是 1.0.0).看 贡献.md
详情及 更改日志.md 版本历史。
许可证
此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。
免责声明
这是一个社区项目,与IncidentIQ没有正式联系或认可。IncidentIQ是IncidentIQneneneba公司的注册商标。
致谢
- IIQ社区提供合作和支持
- 为该项目做出贡献的K-12 IT专业人员
- IncidentIQ提供全面的API文档
- 模型上下文协议SDK的拟人化
