sn-mcp
Provides AI assistants with read access to ServiceNow instances to aid in building and debugging applications. It enables users to query tables, retrieve specific records, and inspect table schemas using standard ServiceNow encoded query strings.
README
sn-mcp
MCP server that gives AI coding assistants read access to a ServiceNow instance — useful when building or debugging ServiceNow apps.
Prerequisites
- uv — Python package manager
- A ServiceNow instance with a user that has read access to
sys_dictionaryand any tables you want to query
Setup
git clone <this-repo>
cd sn-mcp
cp .env.example .env
Edit .env with your instance details:
SN_INSTANCE=https://yourinstance.service-now.com
SN_USERNAME=your_username
SN_PASSWORD=your_password
Adding to Claude
Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json (Mac) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"sn-mcp": {
"command": "uv",
"args": ["run", "--directory", "/absolute/path/to/sn-mcp", "sn-mcp"],
"env": {
"SN_INSTANCE": "https://yourinstance.service-now.com",
"SN_USERNAME": "your_username",
"SN_PASSWORD": "your_password"
}
}
}
}
You can use either the
envblock above or a.envfile in the repo directory — whichever you prefer.
Claude Code (CLI)
claude mcp add sn-mcp -- uv run --directory /absolute/path/to/sn-mcp sn-mcp
Then set credentials in .env or pass them via the env block in .mcp.json.
Tools
| Tool | Description |
|---|---|
get_table_schema(table, filter_keyword?) |
Field definitions for any table from sys_dictionary — type, label, mandatory, max_length, reference |
query_table(table, query?, fields?, limit?) |
Query any table with an encoded query string (e.g. state=1^category=network) |
get_record(table, sys_id) |
Fetch a single record by sys_id from any table |
Verify it's working
uv run python server.py
Or test the MCP handshake directly:
python3 -c "
import subprocess, json, select
proc = subprocess.Popen(['uv','run','python','server.py'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
def send(msg):
proc.stdin.write((json.dumps(msg)+'\n').encode()); proc.stdin.flush()
ready,_,_ = select.select([proc.stdout],[],[],5)
return json.loads(proc.stdout.readline()) if ready else None
r = send({'jsonrpc':'2.0','id':1,'method':'initialize','params':{'protocolVersion':'2024-11-05','capabilities':{},'clientInfo':{'name':'test','version':'0'}}})
print('server:', r['result']['serverInfo'])
proc.terminate()
"
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.