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 incidents
`servicenow://incidents/{number}`: Get a specific incident by number
`servicenow://users`: List users
`servicenow://knowledge`: List knowledge articles
`servicenow://tables`: List available tables
`servicenow://tables/{table}`: Get records from a specific table
`servicenow://schema/{table}`: Get the schema for a table
Tools
Basic Tools
`create_incident`: Create a new incident
`update_incident`: Update an existing incident
`search_records`: Search for records using text query
`get_record`: Get a specific record by sys_id
`perform_query`: Perform a query against ServiceNow
`add_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
From Source
Usage
Command Line
Run the server using the Python module:
Or use environment variables:
Configuration in Cline
To use this MCP server with Cline, add the following to your MCP settings file:
**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:
Updating Records
You can update records using natural language commands:
Managing Scripts
You can update ServiceNow scripts from local files:
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
Running Tests
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](LICENSE) file for details.