AI代理构建服务器

用于与ServiceNow实例交互的全面模型上下文协议(MCP)服务器,支持AI代理构建、ITSM、变更管理、服务目录等功能。

  • by mwdandr0
  • Python
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 mwdandr0/servicenow-mcp-server

使用说明

带有AI Agent Builder的ServiceNow MCP服务器

一个全面的模型上下文协议(MCP)服务器,用于与ServiceNow实例交互——81多种工具,涵盖AI代理构建、ITSM、变更管理、服务目录、飞行前验证等。支持基本身份验证、API密钥和OAuth。

安装说明

1.配置您的凭据

复制 .env.template 文件到 .env 并填写您的ServiceNow凭据:

cp .env.template .env

然后编辑 .env 使用您的实际凭据: 支持三种身份验证方法——使用您的实例所需的任何方法:

基本身份验证(最常见):

  • SERVICENOW_INSTANCE:您的ServiceNow实例(例如。, dev12345 或 dev12345.service-now.com)
  • SERVICENOW_USERNAME:您的ServiceNow用户名
  • SERVICENOW_PASSWORD:您的ServiceNow密码

API密钥 (如果设置,则优先于基本身份验证):

  • SERVICENOW_API_KEY:您的ServiceNow API密钥

OAuth承载令牌:

  • SERVICENOW_OAUTH_TOKEN:您的OAuth访问令牌

您还可以使用 SNOW_ 前缀(例如。, SNOW_INSTANCE, SNOW_API_KEY)可互换。

2.依赖关系

需要以下Python包:

  • mcp -模型上下文协议SDK
  • requests -API调用的HTTP库
  • python-dotenv -环境变量管理

这些将在安装过程中自动安装。

可用工具

服务器为ServiceNow操作提供了全面的MCP工具:

🤖 人工智能代理构建和管理(新!)

构建、配置和管理ServiceNow AI代理:

  • list_ai_agents -列出所有AI代理
  • get_agent_details -获取完整的代理配置
  • create_ai_agent -使用自定义指令创建新的AI代理
  • update_ai_agent -修改现有代理
  • delete_ai_agent -删除代理
  • clone_ai_agent -使用所有工具克隆代理
  • list_agent_tools -查看代理的可用工具
  • add_tool_to_agent -为代理分配工具
  • remove_tool_from_agent -从代理中删除工具
  • create_tool -创建自定义工具

🔄 代理工作流

编排多代理工作流:

  • list_agentic_workflows -列出所有工作流(用例)
  • create_agentic_workflow -创建新工作流
  • update_agentic_workflow -更新工作流配置

🔍 执行和故障排除

调试和监视AI代理执行:

  • query_execution_plans -跟踪工作流运行
  • query_execution_tasks -监控工具任务
  • query_generative_ai_logs -查看AI/LLM日志
  • query_generative_ai_logs_detailed -完整的AI日志详细信息
  • query_agent_messages -查看对话历史记录
  • get_execution_plan_full_details -完整的执行分析

📊 性能分析(新增!)

全面的对话性能分析工具(模仿Chrome扩展程序):

  • analyze_conversation_performance -加载对话的所有表并识别瓶颈
  • compare_conversation_performance -并排比较2-10个对话
  • analyze_conversation_trends -跟踪性能随时间的变化,检测性能下降

看 表演_分析_ GIDE.md 有关详细的使用示例

🌊 流设计器调试

调试流设计器操作:

  • query_flow_contexts -流程执行摘要
  • query_flow_logs -详细的流量日志
  • get_flow_context_details -完整的流程细节
  • query_flow_reports -流运行时状态

🛠️ 系统调试

通用调试工具:

  • query_syslog -查询ServiceNow系统日志
  • cleanup_agent_configs -清理重复配置

🔍 AI搜索(新增!)

由ServiceNow AI search支持的自然语言搜索:

  • search_servicenow_knowledge -使用自然语言查询进行搜索
  • list_ai_search_profiles -查看可用的搜索配置

注: 需要ServiceNow中的脚本化REST API设置。看 AI_SEARCH_QUICKSTART.md

📊 通用表操作

标准CRUD操作:

  • snow_query -查询任何表中的记录
  • snow_get_record -通过sys_id获取单个记录
  • snow_create_record -创建新记录
  • snow_update_record -更新现有记录
  • snow_delete_record -删除记录
  • snow_aggregate -执行聚合查询

🛒 服务目录订购(新增!)

完整的端到端目录订购工作流程:

发现工具:

  • list_catalog_items -列出所有活动目录项及其定价和类别
  • search_catalog_items -按关键字搜索目录项(多字段搜索)
  • get_catalog_item_details -获取完整的项目元数据,包括变量、定价、UI策略
  • lookup_reference_field -查询下拉/查找选项的参考表
  • get_user_context -获取自动填充订单字段的用户详细信息

订单提交工具:

  • order_catalog_item -提交带有变量的目录订单
  • get_request_status -跟踪订单履行和批准状态
  • list_my_requests -查看用户的目录请求

特征:

  • 包含定价信息的完整目录项发现
  • 可变元数据(类型、问题、选项、必填字段)
  • UI策略支持(条件字段逻辑)
  • 使用过滤进行引用字段查找
  • 多行变量集支持
  • 唱片制作人支持
  • 完成订单提交和跟踪
  • 跨名称、short_description和描述的多字段搜索

🔧 平台实用程序(新增!)

实例管理和调试的基本工具:

  • query_system_properties -查询实例配置设置(超时、功能标志等)
  • health_check -具有角色/权限验证的全面连接健康检查
  • execute_scripted_rest_api - 安全舱口 -执行ANY脚本REST API以获得无限扩展性

看 ERROR_ HANDLING_STANDARD.md 用于标准化错误响应格式

🔄 变更管理

端到端变更请求工作流:

  • create_change_request -创建标准、正常或紧急变更请求
  • update_change_request -更新现有更改的字段
  • list_change_requests -按状态、类型或分配组列出和筛选
  • get_change_request_details -包括任务和审批记录在内的全部详细信息
  • add_task_to_change -将实施任务添加到变更中
  • submit_change_for_approval -将更改移动到评估状态(触发CAB工作流)
  • approve_change_request -批准变更的所有待批准记录
  • reject_change_request -以强制性理由拒绝

🎫 ITSM核心工具

用于事件、附件和审批管理的专用工具:

事件管理:

  • create_incident -使用自动查找(呼叫者、分配组)和验证创建事件
  • update_incident -更新状态转换验证和工作说明
  • resolve_close_incident -使用强制解决代码组合解决/关闭
  • get_incident_details -丰富的检索,包括相关记录和历史
  • list_incidents -预构建过滤器(关键、未分配、my_open、违反SLA)

附件管理:

  • upload_attachment -将文件附加到任何记录(base64编码)
  • download_attachment -检索附件内容
  • list_attachments -按记录或文件名列出/搜索附件
  • delete_attachment -删除附件

审批管理:

  • list_pending_approvals -按州、审批人或源表查询审批
  • approve_record -批准并附上意见
  • reject_record -以强制性理由拒绝
  • get_approval_details -完整的批准细节和源记录

✅ 飞行前验证(新增!)

防止记录创建不完整的动态验证工具:

必填字段发现:

  • get_form_mandatory_fields -发现所有必填字段,包括UI策略强制字段
    • 查询sys_dictionary以获取数据库级别的必填字段
    • 查询sys_ui_policy和sys_ui_policy_action以了解表单级要求
    • 返回包含条件和来源的完整列表
    • 解决了“盲点”,即用户界面策略强制字段,但API表不知道

飞行前验证:

  • validate_record_data -在提交API之前验证记录数据
    • 检查字典中的必填字段(始终为必填项)
    • 检查UI策略必填字段(可能是有条件的)
    • 返回缺少字段和建议的验证结果
    • 防止API失败丢失必需的字段
    • 在创建事件、订单目录项或任何雪创建记录之前使用

为什么这些很重要: ServiceNow有3层验证,可能会导致无声故障:

  1. 必须使用词典 -由数据库强制执行
  2. UI策略是强制性的 -由表单强制(对REST API不可见)
  3. 业务规则 -自定义验证逻辑

表API只验证第1层,这意味着可以通过API创建记录,其中缺少将在UI中捕获的数据。这些工具在您提交之前会显示所有3层。

📚 AI代理构建器指南

看 AI_AGENT_GUIDE.md 获取有关构建ServiceNow AI代理的完整指南,包括:

  • 逐步创建代理
  • 工具配置
  • 工作流编排
  • 调试技术
  • 最佳实践
  • 示例用例

🎭 基于角色的工具包

使用 list_tool_packages 工具,查看哪些工具属于每个角色或集合 SNOW_TOOL_PACKAGE 在env中告诉Claude要关注哪个包:

套餐 最适合
service_desk 事件管理、审批、目录订购
change_coordinator 端到端的变更管理
catalog_manager 目录浏览、订购、审批
ai_admin AI Agent构建、调试、性能分析
platform_developer 通用表操作、脚本REST、系统工具
full_access 所有81+工具(默认)

安全说明

  • 永远不要承诺你的 .env 文件到版本控制
  • 使用具有适当权限的服务帐户
  • 对于生产,建议使用API密钥或OAuth而不是基本auth