mcpField
🚀
🚀 ServiceNow MCP Server

🚀 ServiceNow MCP Server

本地服务
github.com/divyashah0510商业与营销367 周前更新

关于 🚀 ServiceNow MCP Server

ServiceNow MCP Server 通过 MCP 将 ServiceNow 实例连接到 AI 模型,提供事件、知识文章、脚本、规则、SLA 和目录记录相关工具,并使用环境变量管理凭据。

主要功能

  1. 01创建和管理事件
  2. 02创建知识文章
  3. 03创建客户端脚本和业务规则
  4. 04创建 SLA 定义
  5. 05创建记录生成器和变量集
  6. 06通过环境变量管理凭据

适用场景

  1. 01在 AI 工作流中创建事件
  2. 02撰写并发布知识文章
  3. 03配置 ServiceNow 脚本、规则和 SLA
  4. 04使用可复用变量集构建目录表单

MCP 相关

该 MCP 服务提供创建 ServiceNow 事件、知识文章、客户端脚本、业务规则、SLA 定义、记录生成器和变量集的工具。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

🚀 ServiceNow MCP 服务

MCP 架构

用于模型上下文协议的 ServiceNow 集成

📋 概述

此代码仓库包含一个用于模型上下文协议(MCP)的 ServiceNow 集成服务。它通过标准化协议实现 ServiceNow 实例与 AI 模型之间的无缝交互,可用于自动化事件管理、创建知识库文章以及执行其他 ServiceNow 操作。

✨ 功能

  • 🔌 ServiceNow 集成:直接集成 ServiceNow 实例
  • 🛠️ 支持多种操作:
    • 创建和管理事件
    • 创建知识库文章
    • 创建客户端脚本
    • 创建业务规则
    • 创建 SLA 定义
    • 创建记录生成器
  • 🔒 安全身份验证:基于环境变量管理凭据
  • 🚀 基于 FastAPI 的服务:高性能异步操作

🛠️ 先决条件

  • Python 3.12 或更高版本
  • 拥有适当 API 访问权限的 ServiceNow 实例
  • 有效的 ServiceNow 凭据
  • 可选:用于 AI 功能的 Gemini API 密钥
  • 用于运行服务的 UV icorn
  • 用于构建服务的 FastAPI

⚙️ 配置

  1. 克隆代码仓库:

    git clone https://github.com/your-org/mcp-server-now.git
    cd mcp-server-now
    
  2. 创建包含凭据的 .env 文件:

    SERVICENOW_INSTANCE=https://your-instance.service-now.com
    SERVICENOW_USERNAME=your_username
    SERVICENOW_PASSWORD=your_password
    GEMINI_API_KEY=your_api_key  # Optional
    
  3. 安装依赖项:

    pip install -e .
    

🚀 开始使用

运行服务
mcp install <file_name>.py
使用示例

此服务提供了多个用于执行 ServiceNow 操作的工具。以下是一些示例:

  1. 创建事件:

    create_incident(
        short_description="Network outage in building B",
        description="Users reporting connectivity issues",
        urgency="2",
        impact="2"
    )
    
  2. 创建知识库文章:

    create_kb_article(
        short_description="How to Reset Your Password",
        article_body="<h1>Password Reset Instructions</h1><p>1. Navigate to the login page</p>",
        workflow_state="published"
    )
    

更多示例请参阅 servicenow-test-examples.md。

🧩 可用工具

此服务提供以下工具:

  • create_incident:创建事件
  • create_kb_article:创建知识库文章
  • create_client_script:创建客户端脚本
  • create_business_rule:创建业务规则
  • create_sla_definition:创建 SLA 定义
  • create_record_producer:创建可自定义变量的记录生成器
  • create_variable_set:为目录项创建可重复使用的变量集
记录生成器详情

create_record_producer 工具可用于创建 ServiceNow 记录生成器,支持以下功能:

create_record_producer(
    name="Report Network Issue",
    table_name="incident",
    short_description="Use this form to report network connectivity issues",
    category_sys_id="optional_category_sys_id",
    script="optional_server_side_script",
    variables=[
        {
            "name": "issue_type",
            "label": "Type of Issue",
            "type": "choice",
            "choices": ["Connectivity", "Performance", "Access"],
            "mandatory": True
        },
        {
            "name": "affected_users",
            "label": "Number of Affected Users",
            "type": "integer",
            "mandatory": True
        }
    ]
)

主要功能:

  • 可自定义多种类型的表单字段(字符串、整数、布尔值、引用等)
  • 支持服务端脚本
  • 类别分配
  • 必填字段配置
  • 默认值和帮助文本
变量集

create_variable_set 工具可用于创建可重复使用的变量集,并将其附加到多个目录项:

create_variable_set(
    name="Hardware Request Variables",
    description="Common variables for hardware requests",
    variables=[
        {
            "name": "device_type",
            "label": "Device Type",
            "type": "choice",
            "choices": ["Laptop", "Desktop", "Tablet", "Phone"],
            "mandatory": True
        },
        {
            "name": "justification",
            "label": "Justification",
            "type": "text",
            "mandatory": True,
            "help_text": "Please explain why you need this hardware"
        }
    ]
)

变量集支持:

  • 多种变量类型(字符串、整数、布尔值、引用、选项等)
  • 自定义验证规则
  • 帮助文本和说明
  • 必填字段配置
  • 默认值
  • 对其他 ServiceNow 表的引用字段

🔧 开发

项目结构
mcp-server-now/
├── servicenow.py          # Main server implementation
├── servicenow-test-examples.md  # Example usage
├── pyproject.toml         # Project configuration
├── .env                   # Environment variables
└── README.md             # This file
添加新工具

添加新的 ServiceNow 操作:

  1. 在 servicenow.py 中创建一个新的异步函数
  2. 使用 @mcp.tool() 装饰该函数
  3. 添加适当的文档说明和错误处理
  4. 测试新功能

📚 资源

📄 许可证

本项目采用 MIT 许可证授权,详情请参阅 LICENSE 文件。

📞 支持

如需支持,请:

👤 Author

Divya Shah

Divya Shah

AI Engineer | ServiceNow Developer | Open Source Contributor

GitHub • LinkedIn • Twitter


🎥 Watch Live Demo

🔗 Youtube Link

Live Demo

Made with ❤️ by Divya Shah

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。