Prototype · Preview: every server in the official registry, synced every 30 minutes. Reviews and accounts come in a later step.
PopNx MCPMCP servers for people who use AI · explained in plain words

SN MCP Server

by ImJaineelversion 2.2.22i★ –iRuns on your computer
Registry nameio.github.ImJaineel/SN-MCP-Server

Install

Overview

Description from the maker (original English)

Multi-instance read-only MCP server for ServiceNow

PopNx MCP’s three pillars

These three are never merged into one score: opinions, measurements and popularity are different things.

What you can do with it

We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.

  • Connection: Runs on your computer
  • Transport: stdio
  • Category: Other
  • You need to fill in: SN_INSTANCE_CONFIG, GITHUB_TOKEN

Install

Pick the AI app you use, then copy the settings.

Before you install

  • Basic checks: 1 of 1 passed
  • Runs on your computer with your user’s permissions (files, network, apps).
  • You fill in yourself: SN_INSTANCE_CONFIG, SN_MCP_SERVER_VERBOSE, SN_LOG_DIR, GITHUB_TOKEN

Values marked secret are keys to your account. Never share them or paste them into a chat.

You need

  • npmNode.js installed (for the npx command)

Which app do you use?

Pick your app above. We remember it, so next time the button says “Install in …”.

Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json

{
  "mcpServers": {
    "sn": {
      "command": "npx",
      "args": [
        "-y",
        "@imjaineel-dev/sn-mcp-server"
      ],
      "env": {
        "SN_INSTANCE_CONFIG": "your-value",
        "SN_MCP_SERVER_VERBOSE": "your-value",
        "SN_LOG_DIR": "your-value",
        "GITHUB_TOKEN": "your-value"
      }
    }
  }
}

Run this in your terminal

claude mcp add sn --env SN_INSTANCE_CONFIG=your-value --env SN_MCP_SERVER_VERBOSE=your-value --env SN_LOG_DIR=your-value --env GITHUB_TOKEN=your-value -- npx -y @imjaineel-dev/sn-mcp-server

Fill in the empty values before running it.

Open in Cursor

Or copy the settings yourself

Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json

{
  "mcpServers": {
    "sn": {
      "command": "npx",
      "args": [
        "-y",
        "@imjaineel-dev/sn-mcp-server"
      ],
      "env": {
        "SN_INSTANCE_CONFIG": "your-value",
        "SN_MCP_SERVER_VERBOSE": "your-value",
        "SN_LOG_DIR": "your-value",
        "GITHUB_TOKEN": "your-value"
      }
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

Open in VS Code

Or copy the settings yourself

Paste into .vscode/mcp.json in your project

{
  "servers": {
    "sn": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@imjaineel-dev/sn-mcp-server"
      ],
      "env": {
        "SN_INSTANCE_CONFIG": "your-value",
        "SN_MCP_SERVER_VERBOSE": "your-value",
        "SN_LOG_DIR": "your-value",
        "GITHUB_TOKEN": "your-value"
      }
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.

Your choice stays on this device in a cookie; no account needed.

Values you fill in

  • SN_INSTANCE_CONFIG required env
    Path to `sn-instance.json` file that contains ServiceNow instance credentials
  • SN_MCP_SERVER_VERBOSE env
    Optional: Enable verbose logging for debugging
  • SN_LOG_DIR env
    Optional: Preferred log directory (defaults to current working directory)
  • GITHUB_TOKEN secret env
    Optional: GitHub Personal Access Token for `sn_read_docs` (branch lookup and GitHub search)

These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.

What it can do

Runs on your computer; the tool list appears in your AI app after you install it.

Basic checksi

We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 9, 2026

  • ✓ Pass

    Maker matches the repo

    The registry name was verified with the GitHub account ImJaineel, which owns the repo

  • … Not checked yet

    Still maintained

    We have not read this repo from GitHub yet

  • … Not checked yet

    Has a licence

    We have not read this repo from GitHub yet

  • – Not applicable

    Endpoint responds

    This one runs on your computer; there is no internet endpoint

  • – Not applicable

    Sign-in with OAuth

    Runs on your computer and uses local settings instead

  • … Not checked yet

    No hidden instructions in tool descriptions

    Runs on your computer; we can only read tool lists from internet endpoints

Compared with others in Otheri

  • More stars than 0% of the other 18630 servers in this category
  • Published to the registry more recently than 19% of the other 18630 servers in this category
  • Basic checks equal to or better than 100% of the other 18630 servers in this category

Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.

Common questions

Is SN MCP Server safe?

It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.

What keys or codes does it need?

You need to fill in: SN_INSTANCE_CONFIG, GITHUB_TOKEN

Does it run on my computer or in the cloud?

It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).

Is it still maintained?

The GitHub repo last changed –, and the latest version (2.2.22) reached the registry 3 months ago.

Which apps can use it?

Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Node.js on your computer.

What can I use instead?

In the same category: Spec Driven Development, Remote Desktop Commander, CloudGPU MCP

Alternatives

Servers in the same category from other makers, sorted by stars.

Reading a card:↓ Downloads per weeki★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi

Spec Driven Development

MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.

by formulahendryEarly↓ 66/wk★ 440Updated 14 months ago

Runs on your computer

Remote Desktop Commander

Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.

by desktop-commanderGrowing★ 211Updated 3 days ago

Runs in the cloud✓ desktopcommander.app

CloudGPU MCP

Rent a per-minute GPU from your MCP client, run a job, download results, shut it down.

by mrhy7176Early↓ 922/wkUpdated today

Runs on your computer

README from the maker

Open the README

Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.

📘 SN-MCP-Server

A read-only Model Context Protocol (MCP) server for ServiceNow — built for developers, AI workflows, and tools that need deep visibility into ServiceNow across multiple instances (Prod, Dev, Test, PDI).


✨ Features

  • 🔗 Multi-instance — Prod, Dev, Test, PDI in one server
  • 🔍 Powerful querying — Table, Aggregate, Code Search APIs
  • 🧠 Intelligent record resolution — INC, CHG, RITM, sys_id
  • 🔄 Flow Designer + Legacy Workflows
  • 🧩 Schema inspection & discovery
  • 👥 Identity & access data
  • 🔑 Multiple Auth Methods — Basic Auth and OAuth 2.0 (Client Credentials, Password, Auth Code, JWT)
  • 🧰 ServiceNow SDK support — optional sn_sdk_explain tool is registered when now-sdk is installed globally (npm install -g now-sdk)
  • Read-only by design — safe on production instances
  • 📄 Per-run log files — one file per server start, stored in OS temp folder
  • 🔬 Verbose tool logging — per-call called/received debug lines (instance, args, result summary) when SN_MCP_VERBOSE=true
  • 📚 ServiceNow Docs search — sn_read_docs searches the ServiceNowDocs repo, returns file_path/raw_url for direct reads, and can resolve the selected branch when a non-default version is requested

🚀 Quick Start

Option A — npx (no install needed)
npx @imjaineel-dev/sn-mcp-server --config ./sn-instance.json
Option B — Local clone
git clone https://github.com/ImJaineel/SN-MCP-Server.git

cd SN-MCP-Server npm install npm start # auto-detects sn-instance.json in repo root


⚙️ Configuration

1. Create sn-instance.json
{

"default": "dev", "instances": [ { "alias": "prod", "label": "Production", "instance": "mycompany-prod", "auth": "oauth2", "grant_type": "client_credentials", "client_id": "your-client-id", "client_secret": "your-client-secret" }, { "alias": "dev", "label": "Development", "instance": "mycompany-dev", "auth": "basic", "username": "svc_mcp_readonly", "password": "your-password-here" } ] }

📄 Full example: sn-instance.example.json

Common fields
FieldRequiredDescription
alias✅Short name used in tool calls ("prod", "dev-2")
instance✅Subdomain ("mycompany-dev") or full URL ("https://...")
authoptional"basic" (default) or "oauth2"
labeloptionalHuman-friendly display name
defaultoptionalUse either a top-level "default" alias or per-entry "default": true to select the default instance
Basic Auth (auth: "basic")
FieldRequiredDescription
username✅Service account username
password✅Password or API token
OAuth 2.0 (auth: "oauth2")
FieldRequiredDescription
grant_type✅"client_credentials", "password", "authorization_code", or "jwt_bearer"
client_id / client_secret✅OAuth application credentials
username / passwordconditionalRequired for password grant
refresh_tokenconditionalRequired for authorization_code grant
jwt_private_key / jwt_subjectconditionalRequired for jwt_bearer grant (PEM key string & subject user)
jwt_issueroptionalOptional issuer value for jwt_bearer
token_urloptionalOverride the default token endpoint (default: /oauth_token.do)

Default selection is resolved in this order:

  1. explicit top-level "default" alias in the config object
  2. an entry with "default": true
  3. the first entry in the list

2. Environment variables (optional)

All optional — set them in your shell, in the MCP client "env" block, or in a .env file at the project root. Values from the shell take precedence over .env.

Note: If you are running the server from a local clone, a root-level .env file is loaded automatically at startup.

VariableDescriptionDefault
SN_INSTANCE_CONFIGPath to sn-instance.jsonAuto-resolved
SN_MCP_VERBOSESet to "true" to enable debug logsfalse
LOGS_TIMEZONEIANA timezone for log timestamps (CURRENT, GLOBAL, or a named zone)CURRENT
SN_LOG_DIROverride log file directoryOS temp folder
GITHUB_TOKENGitHub Personal Access Token for sn_read_docs (branch lookup and GitHub search)none

CLI flags are also supported as an alternative to environment variables:

  • --config → sets SN_INSTANCE_CONFIG
  • --verbose → sets SN_MCP_VERBOSE=true
  • --github-token → sets GITHUB_TOKEN

🔌 MCP Client Setup

For Anyone, Everyone

VS Code: Press Ctrl+Shift+P, select Add MCP

Claude Desktop: Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows)

Gemini Code Assist: Create or edit ~/.gemini/mcp.json

Amazon Q: Create or edit ~/.aws/amazonq/mcp.json

Using npx (recommended):

{

"mcpServers": { "servicenow": { "command": "npx", "args": ["sn-mcp-server", "--config", "/absolute/path/to/sn-instance.json"], } } }

Using local clone:

{

"mcpServers": { "servicenow": { "command": "node", "args": ["/absolute/path/to/SN-MCP-Server/src/index.js"] } } }

⚠️ Always use absolute paths in MCP client configs.


▶️ Running locally

# Standard start (auto-detects ./sn-instance.json)

npm start

With explicit config path

node src/index.js --config /path/to/sn-instance.json

With verbose logging

npm run dev node src/index.js --config ./sn-instance.json --verbose

Auto-restart on file changes (development)

npm run watch

Open MCP Inspector UI in browser (test tools interactively)

npm run inspect

The inspector launcher accepts localhost and 127.0.0.1 origins so the browser can connect reliably.

Show help

npx sn-mcp-server --help


🪵 Logs

Each server run creates a new timestamped log file:

2026-04-09T14-32-01.123Z.log

Stored in the OS temp directory:

OSDefault log location
Windows%TEMP%\ImJaineel_SN-MCP-Instance_logs\
macOS$TMPDIR/ImJaineel_SN-MCP-Instance_logs/
Linux/tmp/ImJaineel_SN-MCP-Instance_logs/

Override with SN_LOG_DIR env var. Log files are cleaned up automatically by the OS on reboot.

The startup banner always prints the exact log file path:

Log file : /tmp/ImJaineel_SN-MCP-Instance_logs/2026-04-09T14-32-01.123Z.log

🧰 Available Tools

The server exposes 16 tools at runtime when the current environment supports them:

  • 14 instance tools — require a configured sn-instance.json
  • 2 knowledge tools — instance-independent tools for docs and SDK guidance
14 instance tools
ToolDescriptionVisibility
sn_list_instancesList all configured instances and their aliases, labels, and URLs.Visible when sn-instance.json is configured and loaded.
sn_pingTest connectivity to a specific instance or the default instance.Visible when sn-instance.json is configured and loaded.
sn_get_identityQuery users, groups, and group membership from identity tables.Visible when sn-instance.json is configured and loaded.
sn_inspect_tableInspect table schema or search for matching tables by name/label.Visible when sn-instance.json is configured and loaded.
sn_aggregate_tableRun aggregate queries such as count, sum, avg, min, and max.Visible when sn-instance.json is configured and loaded.
sn_query_tableGeneric read from any ServiceNow table with encoded queries, fields, paging, and display values.Visible when sn-instance.json is configured and loaded.
sn_get_recordResolve and fetch a record by sys_id, record number, task table, or CMDB CI class.Visible when sn-instance.json is configured and loaded.
sn_get_attachmentFetch attachment metadata or file content from the Attachment API.Visible when sn-instance.json is configured and loaded.
sn_get_update_setsList update sets or drill into the files inside a specific update set.Visible when sn-instance.json is configured and loaded.
sn_code_searchSearch scripting artifacts using the native ServiceNow Code Search API.Visible when sn-instance.json is configured and loaded.
sn_get_scripted_artifactsFetch Script Includes, Business Rules, Client Scripts, UI Actions, Scheduled Jobs, Fix Scripts, and Scripted REST artifacts.Visible when sn-instance.json is configured and loaded.
sn_legacy_workflow_searchSearch classic workflow activity variable values and resolve the owning workflow versions.Visible when sn-instance.json is configured and loaded.
sn_get_legacy_workflow_artifactsFetch legacy workflow artifacts from wf_* tables.Visible when sn-instance.json is configured and loaded.
sn_get_workflow_studio_artifactsFetch Workflow Studio and Flow Designer artifacts from sys_hub_* and related tables.Visible when sn-instance.json is configured and loaded.
2 knowledge tools
ToolDescriptionVisibility
sn_read_docsSearch, browse, and read ServiceNowDocs markdown by release branch. Search mode returns file_path and raw_url values for direct reads, and get_file accepts either a raw GitHub URL or a repo-relative path.Always visible.
sn_sdk_explainQuery the ServiceNow SDK for explanations of SDK skills, APIs, and concepts via now-sdk.Visible only when now-sdk is installed and can be executed successfully.
Runtime visibility rules
  • Instance tools (14) are hidden when the server starts in config-less mode (no sn-instance.json provided). In that mode, only the 2 knowledge tools remain visible.
  • `sn_read_docs` is always registered, because it does not depend on ServiceNow instance credentials.
  • `sn_sdk_explain` is added only after a successful probe of now-sdk; if the package is not installed or cannot be executed, the tool is omitted entirely. Install it globally with: npm install -g now-sdk
  • Every instance tool accepts an optional instance parameter. If omitted, the server uses the configured default instance.

💡 Usage Examples

Target a specific instance
sn_get_scripted_artifacts  table="sys_script_include"  query="nameLIKEMorpheus"  instance="prod"

sn_query_table table="incident" query="state=1" instance="dev" sn_get_update_sets instance="pdi"

Query incidents
{ "tool": "sn_query_table", "table": "incident", "query": "active=true", "limit": 5 }
Search ServiceNow Docs
{ "tool": "sn_read_docs", "mode": "search", "search": "Install the ServiceNow SDK in an application", "version": "australia" }

Use mode": "get_file" with the returned file_path or raw_url to read the matching doc.

Get record by number
{ "tool": "sn_get_record", "number": "INC0012345" }
Search legacy workflows
{ "tool": "sn_legacy_workflow_search", "query": "morpheus", "instance": "prod" }
Aggregate

`json

Only the beginning is shown; read the rest in the repo

Ask PopNx