ServiceNow MCP Change Management Tools¶
This document provides information about the change management tools available in the ServiceNow MCP server.
Overview¶
The change management tools allow Claude to interact with ServiceNow's change management functionality, enabling users to create, update, and manage change requests through natural language conversations.
Available Tools¶
The ServiceNow MCP server provides the following change management tools:
Core Change Request Management¶
- create_change_request - Create a new change request in ServiceNow
-
Parameters:
short_description(required): Short description of the change requestdescription: Detailed description of the change requesttype(required): Type of change (normal, standard, emergency)risk: Risk level of the changeimpact: Impact of the changecategory: Category of the changerequested_by: User who requested the changeassignment_group: Group assigned to the changestart_date: Planned start date (YYYY-MM-DD HH:MM:SS)end_date: Planned end date (YYYY-MM-DD HH:MM:SS)
-
update_change_request - Update an existing change request
-
Parameters:
change_id(required): Change request ID or sys_idshort_description: Short description of the change requestdescription: Detailed description of the change requeststate: State of the change requestrisk: Risk level of the changeimpact: Impact of the changecategory: Category of the changeassignment_group: Group assigned to the changestart_date: Planned start date (YYYY-MM-DD HH:MM:SS)end_date: Planned end date (YYYY-MM-DD HH:MM:SS)work_notes: Work notes to add to the change request
-
list_change_requests - List change requests with filtering options
-
Parameters:
limit: Maximum number of records to return (default: 10)offset: Offset to start from (default: 0)state: Filter by statetype: Filter by type (normal, standard, emergency)category: Filter by categoryassignment_group: Filter by assignment grouptimeframe: Filter by timeframe (upcoming, in-progress, completed)query: Additional query string
-
get_change_request_details - Get detailed information about a specific change request
-
Parameters:
change_id(required): Change request ID or sys_id
-
add_change_task - Add a task to a change request
- Parameters:
change_id(required): Change request ID or sys_idshort_description(required): Short description of the taskdescription: Detailed description of the taskassigned_to: User assigned to the taskplanned_start_date: Planned start date (YYYY-MM-DD HH:MM:SS)planned_end_date: Planned end date (YYYY-MM-DD HH:MM:SS)
Change Approval Workflow¶
- submit_change_for_approval - Submit a change request for approval
-
Parameters:
change_id(required): Change request ID or sys_idapproval_comments: Comments for the approval request
-
approve_change - Approve a change request
-
Parameters:
change_id(required): Change request ID or sys_idapprover_id: ID of the approverapproval_comments: Comments for the approval
-
reject_change - Reject a change request
- Parameters:
change_id(required): Change request ID or sys_idapprover_id: ID of the approverrejection_reason(required): Reason for rejection
Example Usage with Claude¶
Once the ServiceNow MCP server is configured with Claude Desktop, you can ask Claude to perform actions like:
Creating and Managing Change Requests¶
- "Create a change request for server maintenance to apply security patches tomorrow night"
- "Schedule a database upgrade for next Tuesday from 2 AM to 4 AM"
- "Create an emergency change to fix the critical security vulnerability in our web application"
Adding Tasks and Implementation Details¶
- "Add a task to the server maintenance change for pre-implementation checks"
- "Add a task to verify system backups before starting the database upgrade"
- "Update the implementation plan for the network change to include rollback procedures"
Approval Workflow¶
- "Submit the server maintenance change for approval"
- "Show me all changes waiting for my approval"
- "Approve the database upgrade change with comment: implementation plan looks thorough"
- "Reject the network change due to insufficient testing"
Querying Change Information¶
- "Show me all emergency changes scheduled for this week"
- "What's the status of the database upgrade change?"
- "List all changes assigned to the Network team"
- "Show me the details of change CHG0010001"
Example Code¶
Here's an example of how to use the change management tools programmatically:
from servicenow_mcp.auth.auth_manager import AuthManager
from servicenow_mcp.tools.change_tools import create_change_request
from servicenow_mcp.utils.config import ServerConfig
# Create server configuration
server_config = ServerConfig(
instance_url="https://your-instance.service-now.com",
)
# Create authentication manager
auth_manager = AuthManager(
auth_type="basic",
username="your-username",
password="your-password",
instance_url="https://your-instance.service-now.com",
)
# Create a change request
create_params = {
"short_description": "Server maintenance - Apply security patches",
"description": "Apply the latest security patches to the application servers.",
"type": "normal",
"risk": "moderate",
"impact": "medium",
"category": "Hardware",
"start_date": "2023-12-15 01:00:00",
"end_date": "2023-12-15 03:00:00",
}
result = create_change_request(auth_manager, server_config, create_params)
print(result)
The sample above shows the programmatic request shape and the key imports needed to integrate change management into your own automation.
Integration with Claude Desktop¶
To configure the ServiceNow MCP server with change management tools in Claude Desktop:
- Edit the Claude Desktop configuration file at
~/Library/Application Support/Claude/claude_desktop_config.json(macOS) or the appropriate path for your OS:
{
"mcpServers": {
"ServiceNow": {
"command": "/Users/yourusername/dev/servicenow-mcp/.venv/bin/python",
"args": [
"-m",
"servicenow_mcp.cli"
],
"env": {
"SERVICENOW_INSTANCE_URL": "https://your-instance.service-now.com",
"SERVICENOW_USERNAME": "your-username",
"SERVICENOW_PASSWORD": "your-password",
"SERVICENOW_AUTH_TYPE": "basic"
}
}
}
}
- Restart Claude Desktop to apply the changes
Customization¶
The change management tools can be customized to match your organization's specific ServiceNow configuration:
- State values may need to be adjusted based on your ServiceNow instance configuration
- Additional fields can be added to the parameter models if needed
- Approval workflows may need to be modified to match your organization's approval process
To customize the tools, modify the change_tools.py file in the src/servicenow_mcp/tools directory.