The natural-language tools save you from remembering table names and sys_ids, while the query and record tools stay available for when you know exactly what you want. update_script is the one to think about before granting: it writes server-side code, not just records.
An MCP server for ServiceNow. It creates and updates incidents, searches and queries records, posts comments and work notes, and updates ServiceNow script files, with a natural-language path over the same operations.
- Incidents created and updated (create_incident, update_incident)
- Records searched by text, queried, or fetched one at a time by sys_id (search_records, perform_query, get_record)
- Search and update expressed in plain language, such as finding all incidents about a system or updating one by number (natural_language_search, natural_language_update)
- Comments split the way ServiceNow splits them: customer-visible comments and internal work notes (add_comment, add_work_notes)
- Script includes, business rules and other script files updated (update_script)
- Resources addressable as servicenow://incidents, servicenow://users, servicenow://knowledge and servicenow://schema/{table}
Your ServiceNow instance URL, and a username and password for it, given as environment variables or as command-line flags.
One command plus a key — pip install mcp-server-servicenow, then supply credentials
