ServiceNow MCP Server for VS Code
io.github.jschuller/mcp-server-servicenow
ServiceNow developer data plane: Table API, CMDB, update sets, schema. Read-only, allow/deny, audit.
client:VS Code
transport:stdio
runtime:pypi
Install ServiceNow MCP Server in VS Code
.vscode/mcp.json
{
"inputs": [
{
"type": "promptString",
"id": "servicenow-instance-url",
"description": "SERVICENOW_INSTANCE_URL",
"password": true
},
{
"type": "promptString",
"id": "servicenow-auth-type",
"description": "SERVICENOW_AUTH_TYPE",
"password": true
},
{
"type": "promptString",
"id": "servicenow-username",
"description": "SERVICENOW_USERNAME",
"password": true
},
{
"type": "promptString",
"id": "servicenow-password",
"description": "SERVICENOW_PASSWORD",
"password": true
},
{
"type": "promptString",
"id": "servicenow-client-id",
"description": "SERVICENOW_CLIENT_ID",
"password": true
},
{
"type": "promptString",
"id": "servicenow-client-secret",
"description": "SERVICENOW_CLIENT_SECRET",
"password": true
},
{
"type": "promptString",
"id": "servicenow-api-key",
"description": "SERVICENOW_API_KEY",
"password": true
},
{
"type": "promptString",
"id": "servicenow-api-key-header",
"description": "SERVICENOW_API_KEY_HEADER",
"password": true
},
{
"type": "promptString",
"id": "servicenow-token-url",
"description": "SERVICENOW_TOKEN_URL",
"password": true
},
{
"type": "promptString",
"id": "servicenow-timeout",
"description": "SERVICENOW_TIMEOUT",
"password": true
},
{
"type": "promptString",
"id": "servicenow-read-only",
"description": "SERVICENOW_READ_ONLY",
"password": true
},
{
"type": "promptString",
"id": "servicenow-table-allowlist",
"description": "SERVICENOW_TABLE_ALLOWLIST",
"password": true
},
{
"type": "promptString",
"id": "servicenow-table-denylist",
"description": "SERVICENOW_TABLE_DENYLIST",
"password": true
},
{
"type": "promptString",
"id": "servicenow-allow-js-queries",
"description": "SERVICENOW_ALLOW_JS_QUERIES",
"password": true
},
{
"type": "promptString",
"id": "servicenow-write-confirm",
"description": "SERVICENOW_WRITE_CONFIRM",
"password": true
},
{
"type": "promptString",
"id": "servicenow-audit-log",
"description": "SERVICENOW_AUDIT_LOG",
"password": true
}
],
"servers": {
"mcp-server-servicenow": {
"type": "stdio",
"command": "uvx",
"args": [
"mcp-server-servicenow"
],
"env": {
"SERVICENOW_INSTANCE_URL": "${input:servicenow-instance-url}",
"SERVICENOW_AUTH_TYPE": "${input:servicenow-auth-type}",
"SERVICENOW_USERNAME": "${input:servicenow-username}",
"SERVICENOW_PASSWORD": "${input:servicenow-password}",
"SERVICENOW_CLIENT_ID": "${input:servicenow-client-id}",
"SERVICENOW_CLIENT_SECRET": "${input:servicenow-client-secret}",
"SERVICENOW_API_KEY": "${input:servicenow-api-key}",
"SERVICENOW_API_KEY_HEADER": "${input:servicenow-api-key-header}",
"SERVICENOW_TOKEN_URL": "${input:servicenow-token-url}",
"SERVICENOW_TIMEOUT": "${input:servicenow-timeout}",
"SERVICENOW_READ_ONLY": "${input:servicenow-read-only}",
"SERVICENOW_TABLE_ALLOWLIST": "${input:servicenow-table-allowlist}",
"SERVICENOW_TABLE_DENYLIST": "${input:servicenow-table-denylist}",
"SERVICENOW_ALLOW_JS_QUERIES": "${input:servicenow-allow-js-queries}",
"SERVICENOW_WRITE_CONFIRM": "${input:servicenow-write-confirm}",
"SERVICENOW_AUDIT_LOG": "${input:servicenow-audit-log}"
}
}
}
}
VS Code prompts for each input the first time the server starts, so no secret is written to the file. VS Code docs