Skip to main content
Glama
michaelbuckner

ServiceNow MCP Server

ServiceNow MCP 服务器

许可证:MIT

一个与 ServiceNow 交互的模型上下文协议 (MCP) 服务器,允许 AI 代理通过安全的 API 访问和操作 ServiceNow 数据。该服务器支持与 ServiceNow 进行自然语言交互,从而更轻松地搜索、更新记录和管理脚本。

特征

资源

  • servicenow://incidents :列出最近发生的事件

  • servicenow://incidents/{number} :通过编号获取特定事件

  • servicenow://users :列出用户

  • servicenow://knowledge :列出知识文章

  • servicenow://tables :列出可用表

  • servicenow://tables/{table} :从特定表中获取记录

  • servicenow://schema/{table} :获取表的架构

工具

基本工具

  • create_incident :创建新事件

  • update_incident :更新现有事件

  • search_records :使用文本查询搜索记录

  • get_record :通过 sys_id 获取特定记录

  • perform_query :针对 ServiceNow 执行查询

  • add_comment :向事件添加评论(客户可见)

  • add_work_notes :向事件添加工作注释(内部)

自然语言工具

  • natural_language_search :使用自然语言搜索记录(例如,“查找有关 SAP 的所有事件”)

  • natural_language_update :使用自然语言更新记录(例如,“更新事件 INC0010001,并说明我正在处理此事”)

  • update_script :更新 ServiceNow 脚本文件(脚本包含、业务规则等)

Related MCP server: SupaUI MCP Server

安装

来自 PyPI

pip install mcp-server-servicenow

来自源

git clone https://github.com/michaelbuckner/servicenow-mcp.git
cd servicenow-mcp
pip install -e .

用法

命令行

使用 Python 模块运行服务器:

python -m mcp_server_servicenow.cli --url "https://your-instance.service-now.com/" --username "your-username" --password "your-password"

或者使用环境变量:

export SERVICENOW_INSTANCE_URL="https://your-instance.service-now.com/"
export SERVICENOW_USERNAME="your-username"
export SERVICENOW_PASSWORD="your-password"
python -m mcp_server_servicenow.cli

Cline 中的配置

要将此 MCP 服务器与 Cline 一起使用,请将以下内容添加到您的 MCP 设置文件中:

{
  "mcpServers": {
    "servicenow": {
      "command": "/path/to/your/python/executable",
      "args": [
        "-m",
        "mcp_server_servicenow.cli",
        "--url", "https://your-instance.service-now.com/",
        "--username", "your-username",
        "--password", "your-password"
      ],
      "disabled": false,
      "autoApprove": []
    }
  }
}

**注意:**确保使用安装了mcp-server-servicenow包的 Python 可执行文件的完整路径。

自然语言示例

搜索记录

您可以使用自然语言查询来搜索记录:

find all incidents about email
search for incidents related to network issues
show me all incidents with high priority

更新记录

您可以使用自然语言命令更新记录:

Update incident INC0010001 saying I'm working on it
Set incident INC0010002 to in progress
Close incident INC0010003 with resolution: fixed the issue

管理脚本

您可以从本地文件更新 ServiceNow 脚本:

Update the ServiceNow script include "HelloWorld" with the contents of hello_world.js
Upload utils.js to ServiceNow as a script include named "UtilityFunctions"
Update @form_validation.js, it's a client script called "FormValidation"

身份验证方法

服务器支持多种认证方式:

  1. 基本身份验证:用户名和密码

  2. 令牌认证:OAuth 令牌

  3. OAuth 身份验证:客户端 ID、客户端密钥、用户名和密码

发展

先决条件

  • Python 3.8+

  • 具有 API 访问权限的 ServiceNow 实例

设置开发环境

# Clone the repository
git clone https://github.com/michaelbuckner/servicenow-mcp.git
cd servicenow-mcp

# Create a virtual environment
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate

# Install development dependencies
pip install -e ".[dev]"

运行测试

pytest

贡献

欢迎贡献代码!欢迎提交 Pull 请求。

  1. 分叉存储库

  2. 创建你的功能分支( git checkout -b feature/amazing-feature

  3. 提交您的更改( git commit -m 'Add some amazing feature'

  4. 推送到分支( git push origin feature/amazing-feature

  5. 打开拉取请求

执照

该项目根据 MIT 许可证获得许可 - 有关详细信息,请参阅LICENSE文件。

-
security - not tested
A
license - permissive license
-
quality - not tested

Resources

Looking for Admin?

Admins can modify the Dockerfile, update the server description, and track usage metrics. If you are the server author, to authenticate as an admin.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/michaelbuckner/servicenow-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server