ServiceNow MCP Server — MCP-сервер для Claude Code: таблицы, CMDB
Подключает ассистента к ServiceNow: запросы к любой таблице, чтение схемы и CMDB, разбор update set. Работает на бесплатном developer instance.
claude mcp add --env SERVICENOW_INSTANCE_URL=<SERVICENOW_INSTANCE_URL> --env SERVICENOW_AUTH_TYPE=<SERVICENOW_AUTH_TYPE> --env SERVICENOW_USERNAME=<SERVICENOW_USERNAME> --env SERVICENOW_PASSWORD=<SERVICENOW_PASSWORD> --env SERVICENOW_CLIENT_ID=<SERVICENOW_CLIENT_ID> --transport stdio servicenow-mcp-server -- uvx mcp-server-servicenowЧто делает ServiceNow MCP Server
Сервер даёт ассистенту доступ к прикладному слою разработчика ServiceNow: Table API, data dictionary, агрегаты через Stats API, CMDB и update sets. Запускается одной командой uvx mcp-server-servicenow, ставится без предварительной установки пакета. Поддерживает транспорт stdio и streamable-http, аутентификацию basic, OAuth и api_key. Заявлена совместимость с релизами ServiceNow начиная с Tokyo.
Для подключения нужны учётные данные отдельного интеграционного пользователя, а не admin: новые инстансы отказывают admin в REST basic auth. В README описан порядок — создать пользователя с Identity type Machine и ролью Internal Integration User, выдать роли itil и snc_read_only. Такой набор даёт чтение инцидентов, изменений, проблем, CMDB и агрегатов, но изменить данные не позволит. Для схемы, update sets и записи ролей понадобится больше.
Ещё нужен uv в системе, потому что uvx берёт сервер оттуда. В Claude есть вариант с плагином: он добавляет четыре скилла как слэш-команды и читает те же переменные SERVICENOW_* из окружения, из которого стартовал Claude. Без корректного SERVICENOW_INSTANCE_URL и пароля сервер до инстанса не достучится.
Какие задачи решает
- посмотреть, какие поля есть у таблицы
cmdb_ci_server, включая унаследованные - найти пользователей с правами admin и роли, выданные напрямую, а не через группу
- проверить update set перед переводом в следующий статус
- найти серверные CI без IP-адреса или без владельца
- посчитать открытые инциденты по каждой assignment group
Примеры запросов агенту
- Покажи поля таблицы
cmdb_ci_server, включая унаследованные. - Проверь update set «Q3 fixes» перед продвижением.
- Сколько открытых инцидентов у каждой assignment group?
Как установить ServiceNow MCP Server
Командой платформы
claude mcp add --env SERVICENOW_INSTANCE_URL=<SERVICENOW_INSTANCE_URL> --env SERVICENOW_AUTH_TYPE=<SERVICENOW_AUTH_TYPE> --env SERVICENOW_USERNAME=<SERVICENOW_USERNAME> --env SERVICENOW_PASSWORD=<SERVICENOW_PASSWORD> --env SERVICENOW_CLIENT_ID=<SERVICENOW_CLIENT_ID> --transport stdio servicenow-mcp-server -- uvx mcp-server-servicenowВместо <…> подставьте свои значения. Ещё 9 переменных окружения — в README сервера. uvx запускает команду с именем пакета; если в README она другая — uvx --from mcp-server-servicenow <команда>
Командой платформы
codex mcp add servicenow-mcp-server --env SERVICENOW_INSTANCE_URL=<SERVICENOW_INSTANCE_URL> --env SERVICENOW_AUTH_TYPE=<SERVICENOW_AUTH_TYPE> --env SERVICENOW_USERNAME=<SERVICENOW_USERNAME> --env SERVICENOW_PASSWORD=<SERVICENOW_PASSWORD> --env SERVICENOW_CLIENT_ID=<SERVICENOW_CLIENT_ID> -- uvx mcp-server-servicenowВместо <…> подставьте свои значения. Ещё 9 переменных окружения — в README сервера. uvx запускает команду с именем пакета; если в README она другая — uvx --from mcp-server-servicenow <команда>
Файл настроек
{
"mcpServers": {
"servicenow-mcp-server": {
"command": "uvx",
"args": [
"mcp-server-servicenow"
],
"env": {
"SERVICENOW_INSTANCE_URL": "<SERVICENOW_INSTANCE_URL>",
"SERVICENOW_AUTH_TYPE": "<SERVICENOW_AUTH_TYPE>",
"SERVICENOW_USERNAME": "<SERVICENOW_USERNAME>",
"SERVICENOW_PASSWORD": "<SERVICENOW_PASSWORD>",
"SERVICENOW_CLIENT_ID": "<SERVICENOW_CLIENT_ID>"
}
}
}
}Вместо <…> подставьте свои значения. Ещё 9 переменных окружения — в README сервера. uvx запускает команду с именем пакета; если в README она другая — uvx --from mcp-server-servicenow <команда>
Файл настроек
{
"servers": {
"servicenow-mcp-server": {
"type": "stdio",
"command": "uvx",
"args": [
"mcp-server-servicenow"
],
"env": {
"SERVICENOW_INSTANCE_URL": "<SERVICENOW_INSTANCE_URL>",
"SERVICENOW_AUTH_TYPE": "<SERVICENOW_AUTH_TYPE>",
"SERVICENOW_USERNAME": "<SERVICENOW_USERNAME>",
"SERVICENOW_PASSWORD": "<SERVICENOW_PASSWORD>",
"SERVICENOW_CLIENT_ID": "<SERVICENOW_CLIENT_ID>"
}
}
}
}Вместо <…> подставьте свои значения. Ещё 9 переменных окружения — в README сервера. uvx запускает команду с именем пакета; если в README она другая — uvx --from mcp-server-servicenow <команда>
Командой платформы
gemini mcp add -e SERVICENOW_INSTANCE_URL=<SERVICENOW_INSTANCE_URL> -e SERVICENOW_AUTH_TYPE=<SERVICENOW_AUTH_TYPE> -e SERVICENOW_USERNAME=<SERVICENOW_USERNAME> -e SERVICENOW_PASSWORD=<SERVICENOW_PASSWORD> -e SERVICENOW_CLIENT_ID=<SERVICENOW_CLIENT_ID> servicenow-mcp-server uvx mcp-server-servicenowВместо <…> подставьте свои значения. Ещё 9 переменных окружения — в README сервера. uvx запускает команду с именем пакета; если в README она другая — uvx --from mcp-server-servicenow <команда>
По шагам, с командами для каждой платформы: Как подключить MCP-сервер: Claude Code, Codex, Cursor, VS Code, Gemini CLI и другие
Вопросы о ServiceNow MCP Server
Как установить ServiceNow MCP Server в Claude Code?
Установите uv, затем выполните `claude mcp add mcp-server-servicenow -e SERVICENOW_INSTANCE_URL=<SERVICENOW_INSTANCE_URL> -e SERVICENOW_PASSWORD=<SERVICENOW_PASSWORD> -e SERVICENOW_CLIENT_SECRET=<SERVICENOW_CLIENT_SECRET> -e SERVICENOW_API_KEY=<SERVICENOW_API_KEY> -- uvx mcp-server-servicenow`.
Зачем нужен ServiceNow MCP Server?
Он даёт ассистенту читать данные ServiceNow: любые таблицы, схему, CMDB, агрегаты и update sets. Без него ассистент этих сведений не видит.
Под каким пользователем подключаться?
Не под admin: новые инстансы отклоняют для него REST basic auth. Создайте отдельного интеграционного пользователя с ролями itil и snc_read_only — этого хватит для чтения.