itsm
ServiceNow MCP Integration for CrewAI
Connect ServiceNow to CrewAI through the local KosmoKrator MCP gateway with scoped tools, credentials, and write policy.
Connect ServiceNow to CrewAI
Expose KosmoKrator integrations to CrewAI workers as scoped local tools.
Wrap kosmo integrations:call for specific tasks or connect workers to a local MCP gateway. The gateway is local, scoped to this integration, and starts with
--write=deny so CrewAI can inspect read-capable tools without receiving write access by default.
ServiceNow MCP Config for CrewAI
Use per-worker integration scopes to avoid giving every worker every tool.
{
"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 CrewAI
CrewAI 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. |