AgentStack
Browse Sign in
Browse Why AgentStack Sell Docs
Sign in
MCP verified MIT Self-run

Servicenow Mcp

mcp-r2gers-servicenow-mcp · by R2gers

ServiceNow MCP Server for Claude Code -- query, update, and manipulate any ServiceNow instance with built-in safety guards.

No reviews yet
0 installs
16 views
0.0% view→install

Install

$ agentstack add mcp-r2gers-servicenow-mcp

✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access No
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets Used
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

View the full security report →

Verified badge

Passed review? Show it. Paste this badge into your README, it links to the public security report.

AgentStack Verified badge Links to your public security report.
[![AgentStack Verified](https://agentstack.voostack.com/badges/verified.svg)](https://agentstack.voostack.com/security/report/mcp-r2gers-servicenow-mcp)

Reliability & compatibility

Security review passed
0 installs to date
no reviews yet
2mo ago

Declared compatibility

Claude CodeClaude DesktopCursorWindsurf

Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.

Preview Execution monitoring

We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.

How agent discovery & health will work →
Are you the author of Servicenow Mcp? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

servicenow-mcp

Give Claude direct access to your ServiceNow instance.

Install · Tools · Safety · Skill


A Claude Code MCP server that lets Claude query tables, manage Service Portal widgets, update script includes, create users and roles, and more.

What makes this different:

  • Plug and play -- pip install + one setup command, done
  • Multi-instance -- each project folder has its own .env, one install serves all your instances
  • Built-in safety -- server-side guards that block destructive operations at the code level (not just prompts)
  • Workflow intelligence -- ships a /servicenow skill and mandatory rules so Claude follows SN best practices

Install

Option A: Let Claude do it

Open Claude Code and say:

> Set up the servicenow-mcp for me: https://github.com/R2gers/servicenow-mcp

Claude will install the package, run setup, and help you create the .env file.

Option B: Manual install

macOS / Linux:

pip3 install git+https://github.com/R2gers/servicenow-mcp.git
servicenow-mcp-setup

Windows:

pip install git+https://github.com/R2gers/servicenow-mcp.git
servicenow-mcp-setup

Restart Claude Code after setup.

> Tip: If pip3 is not found, try python3 -m pip install ... instead.

Configure your instance

Create a .env file in your project folder (where you run Claude Code):

SERVICENOW_INSTANCE_URL=https://yourinstance.service-now.com
SERVICENOW_AUTH_TYPE=basic
SERVICENOW_USERNAME=your_username
SERVICENOW_PASSWORD=your_password

> Each project folder can point to a different ServiceNow instance. Just drop a different .env in each.

OAuth authentication

SERVICENOW_AUTH_TYPE=oauth
SERVICENOW_CLIENT_ID=your_client_id
SERVICENOW_CLIENT_SECRET=your_client_secret
SERVICENOW_TOKEN_URL=https://yourinstance.service-now.com/oauth_token.do
SERVICENOW_USERNAME=your_username
SERVICENOW_PASSWORD=your_password

Tools

12 tools covering the core ServiceNow developer workflow:

| Tool | What it does | |------|-------------| | sn_query | Query any table with encoded queries, field selection, and limits | | sn_get_record | Fetch a single record by sysid | | sn_create_record | Create a record in any table | | sn_update_record | Update fields on an existing record | | sn_table_fields | List all columns and types of a table | | sn_get_widget | Read a Service Portal widget (template, client script, server script, CSS) | | sn_update_widget | Update any part of a widget | | sn_list_widgets | Search widgets by scope or name | | sn_list_pages | List portal pages by portal or scope | | sn_get_page_widgets | List all widget instances on a page (walks the full container hierarchy) | | sn_get_script_include | Read a Script Include by name or sysid | | sn_update_script_include | Update a Script Include's script body |


Safety

Three layers of protection -- from guidance to hard enforcement:

1. MCP Instructions (automatic)

Claude receives mandatory rules on every connection:

  • Verify scope and update set before making changes
  • Always read before updating
  • Follow the full Page > Container > Row > Column > Widget Instance hierarchy
  • Suggest update set description recaps at session end

2. Confirmation hooks

All write operations (sn_update_*, sn_create_*) trigger a confirmation prompt. You always see what's about to happen.

3. Server-side guards (cannot be bypassed)

Hardcoded in Python. No prompt injection or LLM instruction can override these:

| Guard | Details | |-------|---------| | No DELETE | No delete tool exists. Period. | | Protected tables | sys_security_acl, sys_properties, sys_db_object, sys_store_app, and others | | Restricted tables | sys_update_set -- only the description field can be updated (for session recaps) | | Protected fields | sys_id, sys_created_by, sys_created_on, sys_mod_count, sys_class_name | | Anti-wipe | Cannot set any text field to an empty string |

What IS allowed

Full read/write access to:

  • sys_user -- create and update users
  • sys_user_role -- create and modify roles
  • sys_user_has_role -- assign roles to users
  • sys_user_group -- create and modify groups
  • sys_user_grmember -- add users to groups
  • All custom and application-scoped tables
  • All Service Portal tables (widgets, pages, containers, etc.)

Skill

After setup, type /servicenow in Claude Code to activate the guided workflow. It enforces:

  1. Session start -- asks you to confirm scope and update set
  2. Widget + page creation -- follows the correct 6-step hierarchy (never skips Container/Row/Column)
  3. Session end -- offers to write a recap to your update set description

How it works

Your project folder/
  .env                    <-- your ServiceNow credentials (never committed)

~/.claude.json            <-- servicenow-mcp registered here (via `claude mcp add`)
~/.claude/
  settings.json           <-- confirmation hooks live here
  skills/servicenow-mcp/  <-- /servicenow skill installed here

Claude Code starts the MCP server automatically. The server reads .env from your current project folder, connects to your instance, and exposes the tools.


Uninstall

claude mcp remove servicenow -s user
pip uninstall servicenow-mcp

Then remove the hook from ~/.claude/settings.json and the skill folder ~/.claude/skills/servicenow-mcp/.


License

MIT

Source & license

This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet, be the first.

Versions

  • v0.1.0 Imported from the upstream source.