itsm
ServiceNow MCP Integration for Codex
Connect ServiceNow to Codex through the local KosmoKrator MCP gateway with scoped tools, credentials, and write policy.
Connect ServiceNow to Codex
Use KosmoKrator as a local MCP proxy for Codex so coding sessions can reach selected integrations with explicit write policy.
Register kosmo mcp:serve as a local stdio server and choose the integration allowlist. The gateway is local, scoped to this integration, and starts with
--write=deny so Codex can inspect read-capable tools without receiving write access by default.
ServiceNow MCP Config for Codex
Keep write access denied or ask-based unless the workspace is trusted.
{
"mcpServers": {
"kosmokrator-servicenow": {
"type": "stdio",
"command": "kosmo",
"args": [
"mcp:serve",
"--integration=servicenow",
"--write=deny"
]
}
}
} Run the Gateway Manually
kosmokrator mcp:serve --integration=servicenow --write=deny Why Use KosmoKrator Here
Expose only ServiceNow instead of a broad multi-service tool list.
Reuse credentials already configured for the KosmoKrator CLI and Lua runtime.
Start read-only, then opt into ask or allow for trusted workspaces.
ServiceNow Tools Visible to Codex
Codex sees stable MCP tool names generated from the ServiceNow integration catalog.
| MCP tool | Source function | Type | Description |
|---|---|---|---|
integration__servicenow__servicenow_list_incidents | servicenow.servicenow_list_incidents | Read | List incidents from the ServiceNow incident table. Supports filtering via an encoded query string (sysparm_query) and a configurable result limit. |
integration__servicenow__servicenow_get_incident | servicenow.servicenow_get_incident | Read | Retrieve a single ServiceNow incident by its sys_id. Returns the full incident record. |
integration__servicenow__servicenow_create_incident | servicenow.servicenow_create_incident | Write | Create a new ServiceNow incident. Provide a short description, an optional full description, and a priority level. |
integration__servicenow__servicenow_update_incident | servicenow.servicenow_update_incident | Write | Update an existing ServiceNow incident. Provide the incident sys_id and the fields to update. |
integration__servicenow__servicenow_list_tasks | servicenow.servicenow_list_tasks | Read | List tasks from the ServiceNow task table. Supports filtering via an encoded query string and a configurable result limit. |
integration__servicenow__servicenow_get_task | servicenow.servicenow_get_task | Read | Retrieve a single ServiceNow task by its sys_id. Returns the full task record. |
integration__servicenow__servicenow_create_task | servicenow.servicenow_create_task | Write | Create a new ServiceNow task. Provide a short description and optional additional fields. |
integration__servicenow__servicenow_list_users | servicenow.servicenow_list_users | Read | List users from the ServiceNow sys_user table. Supports filtering via an encoded query string and a configurable result limit. |
integration__servicenow__servicenow_get_user | servicenow.servicenow_get_user | Read | Retrieve a single ServiceNow user by their sys_id. Returns the full user record. |
integration__servicenow__servicenow_get_current_user | servicenow.servicenow_get_current_user | Read | Get the profile of the currently authenticated ServiceNow user. Useful for verifying credentials and retrieving the logged-in user's details. |