ServiceNow MCP Server
An MCP server for interfacing with ServiceNow, enabling AI agents to access and manipulate data via a secure API.
ServiceNow MCP Server
A Model Context Protocol (MCP) server that interfaces with ServiceNow, allowing AI agents to access and manipulate ServiceNow data through a secure API. This server enables natural language interactions with ServiceNow, making it easier to search for records, update them, and manage scripts.
Features
Resources
servicenow://incidents: List recent incidentsservicenow://incidents/{number}: Get a specific incident by numberservicenow://users: List usersservicenow://knowledge: List knowledge articlesservicenow://tables: List available tablesservicenow://tables/{table}: Get records from a specific tableservicenow://schema/{table}: Get the schema for a table
Tools
Basic Tools
create_incident: Create a new incidentupdate_incident: Update an existing incidentsearch_records: Search for records using text queryget_record: Get a specific record by sys_idperform_query: Perform a query against ServiceNowadd_comment: Add a comment to an incident (customer visible)add_work_notes: Add work notes to an incident (internal)
Natural Language Tools
natural_language_search: Search for records using natural language (e.g., "find all incidents about SAP")natural_language_update: Update records using natural language (e.g., "Update incident INC0010001 saying I'm working on it")update_script: Update ServiceNow script files (script includes, business rules, etc.)
Installation
From PyPI
pip install mcp-server-servicenow
From Source
git clone https://github.com/michaelbuckner/servicenow-mcp.git
cd servicenow-mcp
pip install -e .
Usage
Command Line
Run the server using the Python module:
python -m mcp_server_servicenow.cli --url "https://your-instance.service-now.com/" --username "your-username" --password "your-password"
Or use environment variables:
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
Configuration in Cline
To use this MCP server with Cline, add the following to your MCP settings file:
{
"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": []
}
}
}
Note: Make sure to use the full path to the Python executable that has the mcp-server-servicenow package installed.
Natural Language Examples
Searching Records
You can search for records using natural language queries:
find all incidents about email
search for incidents related to network issues
show me all incidents with high priority
Updating Records
You can update records using natural language commands:
Update incident INC0010001 saying I'm working on it
Set incident INC0010002 to in progress
Close incident INC0010003 with resolution: fixed the issue
Managing Scripts
You can update ServiceNow scripts from local files:
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"
Authentication Methods
The server supports multiple authentication methods:
- Basic Authentication: Username and password
- Token Authentication: OAuth token
- OAuth Authentication: Client ID, Client Secret, Username, and Password
Development
Prerequisites
- Python 3.8+
- ServiceNow instance with API access
Setting Up Development Environment
# 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]"
Running Tests
pytest
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
License
This project is licensed under the MIT License - see the LICENSE file for details.
Related Servers
Remote MCP Server Authless Rickroll
A remote MCP server on Cloudflare Workers that generates podcast URLs and rickrolls without authentication, using Cloudflare AI and D1.
Alibaba Cloud OPS
A server for managing Alibaba Cloud services, requiring an Access Key ID and Secret for authentication.
Cloudflare Remote MCP Server (Authless)
An example for deploying a remote, authentication-free MCP server on Cloudflare Workers.
ServiceNow MCP Server
An MCP server implementation for interacting with ServiceNow instances.
Akamai MCP Server
Automate Akamai resource actions using a conversational AI client. Requires Akamai API credentials.
Valhalla MCP Server
A server for the Valhalla routing engine, offering routing, isochrone, health, and tile services.
CORTEX MCP Extensions
Provides direct access to CORTEX infrastructure for orchestration, monitoring, AI flow management, model routing, and Docker administration.
Subfeed
The Cloud for Agents
MultiversX MCP Server
Interact with the MultiversX blockchain for wallet creation, balance fetching, and token management.
Singapore LTA MCP Server
Access real-time transportation data from Singapore's LTA DataMall API, including bus arrivals and traffic conditions.