servicenow-devtools-mcp

A developer & debug-focused MCP server for ServiceNow — with tools for platform introspection, change intelligence, debugging, investigations, and documentation generation.

servicenow-devtools-mcp

A developer & debug-focused Model Context Protocol (MCP) server for ServiceNow. Give your AI agent direct access to your ServiceNow instance for schema exploration, debugging, change intelligence, ITIL process management, and documentation generation.

Features

  • :mag: Table & Schema Access -- describe tables with enriched metadata (sys_db_object + sys_documentation), query records, compute aggregates, build structured queries
  • :link: Record Access -- fetch individual records, find incoming and outgoing references for any record
  • :paperclip: Attachment Access -- list metadata, inspect details, download content as content_base64, upload via content_base64, and delete attachments
  • :package: Change Intelligence -- inspect update sets, diff artifact versions, audit trails, generate release notes
  • :bug: Debug & Trace -- trace record timelines, flow executions, email chains, integration errors, import set runs, field mutations
  • :test_tube: Record Write -- create, update, delete records with direct or preview-then-apply patterns
  • :mag_right: Investigations -- 7 built-in analysis modules (stale automations, deprecated APIs, table health, ACL conflicts, error analysis, slow transactions, performance bottlenecks)
  • :page_facing_up: Documentation -- generate logic maps, artifact summaries, test scenarios, code review notes
  • :gear: Workflow Analysis -- list workflow versions, inspect contexts, map activity structures, trace execution status
  • :fire_engine: Incident Management -- list, create, update, resolve incidents and add comments
  • :arrows_counterclockwise: Change Management -- manage change requests, change tasks, and approvals
  • :warning: Problem Management -- track problems through root cause analysis to resolution
  • :globe_with_meridians: CMDB -- browse configuration items, relationships, classes, and health checks
  • :inbox_tray: Request Management -- manage service requests and request items (RITMs)
  • :books: Knowledge Management -- search, create, update articles and submit feedback
  • :shopping_cart: Service Catalog -- browse catalogs, categories, items, manage cart, and place orders
  • :shield: Safety -- table deny lists, sensitive field masking, row limit caps, write gating in production

Quick Start

# No install needed -- run directly with uvx
uvx servicenow-devtools-mcp

Set three required environment variables (or use a .env file):

export SERVICENOW_INSTANCE_URL=https://your-instance.service-now.com
export SERVICENOW_USERNAME=admin
export SERVICENOW_PASSWORD=your-password

Configuration

OpenCode

Add to ~/.config/opencode/opencode.json:

{
  "mcp": {
    "servicenow": {
      "type": "local",
      "command": ["uvx", "servicenow-devtools-mcp"],
      "environment": {
        "SERVICENOW_INSTANCE_URL": "https://your-instance.service-now.com",
        "SERVICENOW_USERNAME": "admin",
        "SERVICENOW_PASSWORD": "your-password",
        "MCP_TOOL_PACKAGE": "full",
        "SERVICENOW_ENV": "dev"
      }
    }
  }
}

Claude Desktop

Add to your Claude Desktop config (claude_desktop_config.json):

{
  "mcpServers": {
    "servicenow": {
      "command": "uvx",
      "args": ["servicenow-devtools-mcp"],
      "env": {
        "SERVICENOW_INSTANCE_URL": "https://your-instance.service-now.com",
        "SERVICENOW_USERNAME": "admin",
        "SERVICENOW_PASSWORD": "your-password",
        "MCP_TOOL_PACKAGE": "full",
        "SERVICENOW_ENV": "dev"
      }
    }
  }
}

VS Code / Cursor (Copilot MCP)

Add to .vscode/mcp.json in your workspace:

{
  "servers": {
    "servicenow": {
      "command": "uvx",
      "args": ["servicenow-devtools-mcp"],
      "env": {
        "SERVICENOW_INSTANCE_URL": "https://your-instance.service-now.com",
        "SERVICENOW_USERNAME": "admin",
        "SERVICENOW_PASSWORD": "your-password",
        "MCP_TOOL_PACKAGE": "full",
        "SERVICENOW_ENV": "dev"
      }
    }
  }
}

Generic stdio

SERVICENOW_INSTANCE_URL=https://your-instance.service-now.com \
SERVICENOW_USERNAME=admin \
SERVICENOW_PASSWORD=your-password \
uvx servicenow-devtools-mcp

:robot: Install Instructions for AIs

Copy the block below and paste it into a conversation with any AI agent that supports MCP tool use. The AI will know how to configure and use this server.

## ServiceNow MCP Server Setup

You have access to a ServiceNow MCP server (`servicenow-devtools-mcp`) that provides
98 tools for interacting with a ServiceNow instance.

### Installation

Run via uvx (no install required):
```
uvx servicenow-devtools-mcp
```

### Required Environment Variables

- SERVICENOW_INSTANCE_URL -- Full URL of the ServiceNow instance (e.g. https://dev12345.service-now.com)
- SERVICENOW_USERNAME -- ServiceNow user with admin or appropriate roles
- SERVICENOW_PASSWORD -- Password for the user above

### Optional Environment Variables

- MCP_TOOL_PACKAGE -- Which tools to load (default: "full"). See Tool Packages section for all 14 options.
- SERVICENOW_ENV -- Environment label: "dev" (default), "test", "staging", "prod". Write operations are blocked when set to "prod" or "production".
- MAX_ROW_LIMIT -- Max records per query (default: 100, max: 10000)
- LARGE_TABLE_NAMES_CSV -- Tables requiring date-bounded queries (default: syslog,sys_audit,sys_log_transaction,sys_email_log)

### MCP Client Configuration (stdio transport)

```json
{
  "command": "uvx",
  "args": ["servicenow-devtools-mcp"],
  "env": {
    "SERVICENOW_INSTANCE_URL": "<instance_url>",
    "SERVICENOW_USERNAME": "<username>",
    "SERVICENOW_PASSWORD": "<password>",
    "MCP_TOOL_PACKAGE": "full",
    "SERVICENOW_ENV": "dev"
  }
}
```

### Available Tools (98 total)

**Table (4):** table_describe, table_query, table_aggregate, build_query
  - Describe table schema with enriched metadata (sys_db_object + sys_documentation), query with encoded queries, compute stats, build structured queries

**Record (3):** record_get, rel_references_to, rel_references_from
  - Fetch records by sys_id, find what references a record, find what a record references

**Attachment (4):** attachment_list, attachment_get, attachment_download, attachment_download_by_name
  - List attachment metadata, fetch a single attachment record, and download content as `content_base64`

**Attachment Write (2):** attachment_upload, attachment_delete
  - Upload attachments with `content_base64` and delete attachments by sys_id

**Metadata (4):** meta_list_artifacts, meta_get_artifact, meta_find_references, meta_what_writes
  - List/inspect platform artifacts (business rules, script includes, etc.), find cross-references, find writers to a table

**Change Intelligence (4):** changes_updateset_inspect, changes_diff_artifact, changes_last_touched, changes_release_notes
  - Inspect update sets, diff artifact versions, view audit trail, generate release notes

**Debug & Trace (6):** debug_trace, debug_flow_execution, debug_email_trace, debug_integration_health, debug_importset_run, debug_field_mutation_story
  - Build event timelines, inspect flow executions, trace emails, check integration errors, inspect import sets, trace field mutations

**Record Write (7):** record_create, record_preview_create, record_update, record_preview_update, record_delete, record_preview_delete, record_apply
  - Create, update, delete records directly or via preview-then-apply confirmation pattern

**Investigations (2 dispatchers, 7 modules):** investigate_run, investigate_explain
  - Modules: stale_automations, deprecated_apis, table_health, acl_conflicts, error_analysis, slow_transactions, performance_bottlenecks

**Documentation (4):** docs_logic_map, docs_artifact_summary, docs_test_scenarios, docs_review_notes
  - Generate automation maps, artifact summaries with dependencies, test scenario suggestions, code review findings

**Workflow Analysis (5):** workflow_contexts, workflow_map, workflow_status, workflow_activity_detail, workflow_version_list
  - List workflow contexts for a record, map workflow structure, inspect execution status, view activity details

**Flow Designer (8):** flow_list, flow_get, flow_map, flow_action_detail, flow_execution_list, flow_execution_detail, flow_snapshot_list, workflow_migration_analysis
  - List, inspect, and map Flow Designer flows. View action details, execution history, published snapshots, and analyze legacy workflows for migration readiness

**Incident Management (6):** incident_list, incident_get, incident_create, incident_update, incident_resolve, incident_add_comment
  - Full incident lifecycle: list, fetch, create, update, resolve, and add comments/work notes

**Change Management (6):** change_list, change_get, change_create, change_update, change_tasks, change_add_comment
  - Manage change requests: list, fetch, create, update, view tasks, and add comments/work notes

**Problem Management (5):** problem_list, problem_get, problem_create, problem_update, problem_root_cause
  - Problem lifecycle: list, fetch, create, update, and document root cause analysis

**CMDB (5):** cmdb_list, cmdb_get, cmdb_relationships, cmdb_classes, cmdb_health
  - Browse CIs, inspect relationships, list CI classes, check CMDB health by operational status

**Request Management (5):** request_list, request_get, request_items, request_item_get, request_item_update
  - Manage service requests and RITMs: list, fetch, view items, update request items

**Knowledge Management (5):** knowledge_search, knowledge_get, knowledge_create, knowledge_update, knowledge_feedback
  - Search, read, create, update knowledge articles and submit feedback/ratings

**Service Catalog (12):** sc_catalogs_list, sc_catalog_get, sc_categories_list, sc_category_get, sc_items_list, sc_item_get, sc_item_variables, sc_order_now, sc_add_to_cart, sc_cart_get, sc_cart_submit, sc_cart_checkout
  - Browse catalogs, categories, and items. View item variables, order directly, manage cart, and checkout

**Core (1):** list_tool_packages
  - List available tool packages and their contents

### Safety Guardrails

- Table deny list: sys_user_has_role, sys_user_grmember, and other sensitive tables are blocked
- Sensitive fields: password, token, secret fields are masked in responses
- Row limits: User-supplied limit parameters capped at MAX_ROW_LIMIT (default 100)
- Large tables: syslog, sys_audit, etc. require date-bounded filters
- Write gating: All write operations blocked when SERVICENOW_ENV contains "prod" or "production"
- Attachments: uploads accept `content_base64`; download tools return `content_base64`
- Mandatory field validation: record creation validates all required fields are present before submission
- Standardized responses: Tools return TOON-serialized envelopes with correlation_id, status, data, and optionally pagination and warnings

Environment Variables

VariableDescriptionDefaultRequired
SERVICENOW_INSTANCE_URLFull URL of your ServiceNow instance (must start with https://)--Yes
SERVICENOW_USERNAMEServiceNow username (Basic Auth)--Yes
SERVICENOW_PASSWORDServiceNow password--Yes
MCP_TOOL_PACKAGETool package to load (see Tool Packages)fullNo
SERVICENOW_ENVEnvironment label (dev, test, staging, prod)devNo
MAX_ROW_LIMITMaximum rows returned per query (range: 1-10000)100No
LARGE_TABLE_NAMES_CSVComma-separated tables requiring date filterssyslog,sys_audit,sys_log_transaction,sys_email_logNo

The server reads from .env and .env.local files automatically (.env.local takes precedence).


Tool Reference

Core

ToolDescriptionKey Parameters
list_tool_packagesList all available tool packages and their tool groups--

:mag: Table

ToolDescriptionKey Parameters
table_describeReturn enriched field metadata for a table (types, references, choices, sys_db_object, sys_documentation)table
table_queryQuery a table with encoded query string or query tokentable, query_token?, fields?, limit?, offset?, order_by?, display_values?
table_aggregateCompute aggregate stats (count, avg, min, max, sum)table, query_token?, group_by?, avg_fields?, sum_fields?
build_queryBuild a ServiceNow encoded query from structured JSON conditionsconditions (JSON array)

The build_query tool returns a reusable query_token that can be passed to table_query, table_aggregate, meta_list_artifacts, and other query-accepting tools. Supports comparison, string, null, time, date, range, field comparison, reference, change detection, logical, related list, and ordering operators.

:link: Record

ToolDescriptionKey Parameters
record_getFetch a single record by sys_idtable, sys_id, fields?, display_values?
rel_references_toFind records in other tables that reference a given recordtable, sys_id
rel_references_fromFind what a record references via its reference fieldstable, sys_id

:paperclip: Attachment

ToolDescriptionKey Parameters
attachment_listList attachment metadata with optional table, record, and file filterstable_name?, table_sys_id?, file_name?, limit?, offset?, order_by?
attachment_getFetch attachment metadata by attachment sys_idsys_id
attachment_downloadDownload attachment content by attachment sys_idsys_id
attachment_download_by_nameDownload attachment content by source record and file nametable_name, table_sys_id, file_name

Download tools return attachment metadata plus content_base64.

:paperclip: Attachment Write

ToolDescriptionKey Parameters
attachment_uploadUpload a new attachment using base64-encoded contenttable_name, table_sys_id, file_name, content_base64, content_type?, encryption_context?, creation_time?
attachment_deleteDelete an attachment by attachment sys_idsys_id

Uploads accept content_base64 and follow the same write gating rules as other mutation tools.

:package: Metadata

ToolDescriptionKey Parameters
meta_list_artifactsList platform artifacts by type (business rules, script includes, etc.)artifact_type, query_token?, limit?
meta_get_artifactGet full artifact details including script bodyartifact_type, sys_id
meta_find_referencesSearch all script tables for references to a target stringtarget, limit?
meta_what_writesFind business rules that write to a table/fieldtable, field?

:package: Change Intelligence

ToolDescriptionKey Parameters
changes_updateset_inspectInspect update set members grouped by type with risk flagsupdate_set_id
changes_diff_artifactShow unified diff between two most recent artifact versionstable, sys_id
changes_last_touchedShow who last touched a record and what changed (sys_audit)table, sys_id, limit?
changes_release_notesGenerate Markdown release notes from an update setupdate_set_id, format?

:bug: Debug & Trace

ToolDescriptionKey Parameters
debug_traceBuild merged timeline from sys_audit, syslog, and journalrecord_sys_id, table, minutes?
debug_flow_executionInspect a Flow Designer execution step by stepcontext_id
debug_email_traceReconstruct email chain for a recordrecord_sys_id
debug_integration_healthSummarize recent integration errors (ECC queue or REST)kind?, hours?
debug_importset_runInspect import set run with row-level resultsimport_set_sys_id
debug_field_mutation_storyChronological mutation history of a single fieldtable, sys_id, field, limit?

:test_tube: Record Write

ToolDescriptionKey Parameters
record_createCreate a new record in a tabletable, data (JSON string)
record_preview_createPreview a record creation and get a confirmation tokentable, data (JSON string)
record_updateUpdate an existing recordtable, sys_id, changes (JSON string)
record_preview_updatePreview a record update with field-level difftable, sys_id, changes (JSON string)
record_deleteDelete a recordtable, sys_id
record_preview_deletePreview a deletion showing the record to be removedtable, sys_id
record_applyApply a previously previewed action (create, update, or delete)preview_token

:mag_right: Investigations

ToolDescriptionKey Parameters
investigate_runRun a named investigation moduleinvestigation, params? (JSON string)
investigate_explainGet detailed explanation for a specific findinginvestigation, element_id

Available investigation modules:

ModuleWhat it does
stale_automationsFind disabled or unused business rules, flows, and scheduled jobs
deprecated_apisScan scripts for deprecated ServiceNow API usage
table_healthAnalyze table size, index coverage, and schema issues
acl_conflictsDetect conflicting or redundant ACL rules
error_analysisAggregate and categorize recent errors from syslog
slow_transactionsFind slow-running transactions from sys_log_transaction
performance_bottlenecksIdentify performance issues across flows, queries, and scripts

:page_facing_up: Documentation

ToolDescriptionKey Parameters
docs_logic_mapGenerate lifecycle logic map of all automations on a tabletable
docs_artifact_summaryGenerate artifact summary with dependency analysisartifact_type, sys_id
docs_test_scenariosAnalyze script and suggest test scenariosartifact_type, sys_id
docs_review_notesScan script for anti-patterns and generate review notesartifact_type, sys_id

:gear: Workflow Analysis

ToolDescriptionKey Parameters
workflow_contextsList legacy and Flow Designer contexts running on a recordrecord_sys_id, table?, state?, limit?
workflow_mapShow structure of a workflow version (activities, transitions, variables)workflow_version_sys_id
workflow_statusShow execution status of a workflow contextcontext_sys_id
workflow_activity_detailFetch detailed info about a workflow activityactivity_sys_id
workflow_version_listList workflow versions defined for a tabletable, active_only?, limit?

:ocean: Flow Designer

ToolDescriptionKey Parameters
flow_listList Flow Designer flows and subflows with optional filterstable?, flow_type?, status?, active_only?, limit?
flow_getFetch a Flow Designer flow definition with inputs/outputsflow_sys_id
flow_mapMap the structure of a flow (action instances and logic blocks)flow_sys_id
flow_action_detailFetch detailed info about a flow action instanceaction_instance_sys_id
flow_execution_listList Flow Designer execution contexts with optional filtersflow_sys_id?, source_record?, state?, limit?
flow_execution_detailFetch detailed execution info including ordered log entriescontext_id
flow_snapshot_listList published snapshots (versions) for a flowflow_sys_id, limit?
workflow_migration_analysisAnalyze a legacy workflow for Flow Designer migration readinessworkflow_version_sys_id

:fire_engine: Incident Management

ToolDescriptionKey Parameters
incident_listList incidents with optional filtersstate?, priority?, assigned_to?, assignment_group?, limit?
incident_getFetch incident by INC numbernumber
incident_createCreate a new incidentshort_description, urgency?, impact?, priority?, description?, assignment_group?
incident_updateUpdate an existing incident by INC numbernumber, state?, priority?, assigned_to?, ...
incident_resolveResolve an incident with close code and notesnumber, close_code, close_notes
incident_add_commentAdd comment or work note to an incidentnumber, comment?, work_note?

:arrows_counterclockwise: Change Management

ToolDescriptionKey Parameters
change_listList change requests with optional filtersstate?, type?, risk?, assignment_group?, limit?
change_getFetch change request by CHG numbernumber
change_createCreate a new change requestshort_description, type?, risk?, assignment_group?, start_date?, end_date?
change_updateUpdate an existing change request by CHG numbernumber, state?, type?, risk?, ...
change_tasksGet change tasks for a change requestnumber, limit?
change_add_commentAdd comment or work note to a change requestnumber, comment?, work_note?

:warning: Problem Management

ToolDescriptionKey Parameters
problem_listList problems with optional filtersstate?, priority?, assigned_to?, assignment_group?, limit?
problem_getFetch problem by PRB numbernumber
problem_createCreate a new problemshort_description, urgency?, impact?, priority?, description?
problem_updateUpdate an existing problem by PRB numbernumber, state?, priority?, assigned_to?, ...
problem_root_causeDocument root cause analysis for a problemnumber, cause_notes, fix_notes?

:globe_with_meridians: CMDB

ToolDescriptionKey Parameters
cmdb_listList Configuration Items from CMDBci_class?, operational_status?, limit?
cmdb_getFetch a Configuration Item by name or sys_idname_or_sys_id, ci_class?
cmdb_relationshipsFetch CMDB relationships for a CIname_or_sys_id, direction?, ci_class?
cmdb_classesList unique CI classes in CMDBlimit?
cmdb_healthCheck CMDB health by aggregating operational statusci_class?

:inbox_tray: Request Management

ToolDescriptionKey Parameters
request_listList requests with optional filtersstate?, requested_for?, assignment_group?, limit?
request_getFetch request by REQ numbernumber
request_itemsFetch request items (RITMs) for a requestnumber, limit?
request_item_getFetch request item by RITM numbernumber
request_item_updateUpdate a request item by RITM numbernumber, state?, assignment_group?, assigned_to?

:books: Knowledge Management

ToolDescriptionKey Parameters
knowledge_searchSearch knowledge articles with fuzzy text matchingquery, workflow_state?, limit?
knowledge_getFetch a knowledge article by KB number or sys_idnumber_or_sys_id
knowledge_createCreate a new knowledge articleshort_description, text, kb_knowledge_base?, workflow_state?
knowledge_updateUpdate a knowledge article by KB number or sys_idnumber_or_sys_id, short_description?, text?, workflow_state?
knowledge_feedbackSubmit feedback (rating or comment) for a knowledge articlenumber_or_sys_id, rating?, comment?

:shopping_cart: Service Catalog

ToolDescriptionKey Parameters
sc_catalogs_listList service catalogslimit?, text?
sc_catalog_getFetch details of a specific catalogsys_id
sc_categories_listList categories for a catalogcatalog_sys_id, top_level_only?, limit?
sc_category_getFetch details of a catalog categorysys_id
sc_items_listList catalog items with optional filterstext?, catalog?, category?, limit?
sc_item_getFetch details of a catalog itemsys_id
sc_item_variablesFetch variables (form fields) for a catalog itemsys_id
sc_order_nowOrder a catalog item immediately (bypass cart)item_sys_id, variables?
sc_add_to_cartAdd a catalog item to the shopping cartitem_sys_id, variables?
sc_cart_getRetrieve current shopping cart contents--
sc_cart_submitSubmit the current shopping cart as an order--
sc_cart_checkoutCheckout the current shopping cart--

Tool Packages

Control which tools are loaded using the MCP_TOOL_PACKAGE environment variable. There are 14 preset packages plus support for custom combinations.

Preset Packages

PackageGroupsDescription
full (default)19All tool groups -- 98 tools total
itil15ITIL process tools (incidents, changes, problems, requests + platform tools)
developer12Development-focused (table, record, attachments, debug, investigations, workflows)
readonly10Read-only operations, including attachment read tools
analyst8Analysis and reporting (table, record, attachments, investigations, docs, workflows)
incident_management9Incident lifecycle with supporting tools and attachment writes
problem_management9Problem lifecycle with supporting tools and attachment writes
change_management8Change request management with change intelligence and attachment writes
request_management8Request and RITM management with attachment writes
cmdb6CMDB management with relationships and attachment writes
knowledge_management6Knowledge base tools with attachment writes
service_catalog6Service catalog tools with attachment writes
core_readonly4Read-only core tools (table, record, attachment, metadata)
none0Only list_tool_packages -- minimal/testing

Custom Packages

You can also specify a comma-separated list of tool group names to create a custom package:

MCP_TOOL_PACKAGE="table,record,debug,domain_incident"

Readonly-style packages include only attachment. Write-capable packages include both attachment and attachment_write.

Available tool groups: table, record, attachment, record_write, attachment_write, metadata, changes, debug, investigations, documentation, workflow, flow_designer, testing, domain_incident, domain_change, domain_problem, domain_cmdb, domain_request, domain_knowledge, domain_service_catalog.


Safety & Policy

The server includes built-in guardrails that are always active:

  • Table deny list -- Sensitive tables like sys_user_has_role, sys_user_grmember, and 6 others are blocked from queries
  • Sensitive field masking -- Fields whose names match patterns like password, token, secret, credential, api_key, or private_key are masked with the literal value ***MASKED*** in responses
  • Row limit caps -- User-supplied limit parameters are capped at MAX_ROW_LIMIT (default 100, max 10000). If a larger value is requested, the limit is reduced and a warning is included in the response
  • Large table protection -- Tables listed in LARGE_TABLE_NAMES_CSV require date-bounded filters in queries to prevent full-table scans
  • Write gating -- All write operations (record_write tools and domain create/update tools) are blocked when SERVICENOW_ENV contains "prod" or "production". There is no override - use a sub-production instance for write operations
  • Query safety -- Structured query validation with identifier checks and internal query limits
  • Standardized responses -- Every tool returns a TOON-serialized envelope with correlation_id, status, and data, and may include pagination and warnings when applicable

Example Prompts

Here are some real-world prompts you can use with an AI agent that has this MCP server connected:

Describe the incident table and show me all the business rules that fire on it.

List all P1 incidents from the last week and show me who resolved them.

Trace the full lifecycle of INC0010042 -- show me every field change, comment, and log entry.

Inspect update set "Q1 Release" and generate release notes. Flag any risky changes.

Run the stale_automations investigation and explain the top findings.

Find all scripts that reference the "cmdb_ci_server" table and check them for anti-patterns.

Create a new incident with priority 1 and short description "Server outage". Show me a preview first.

Show me the performance bottlenecks investigation and explain any slow transactions found.

List all open change requests and show me the tasks for CHG0010023.

Search the knowledge base for "VPN setup" and update the article with the new server address.

Browse the service catalog for laptop requests and show me the available options.

Check CMDB health and show me the relationships for our production database server.


Development

# Clone the repository
git clone https://github.com/xerrion/servicenow-devtools-mcp.git
cd servicenow-devtools-mcp

# Install dependencies (including dev tools)
uv sync --group dev

# Run unit tests (~940 tests)
uv run pytest

# Run integration tests (requires .env.local with real credentials)
uv run pytest -m integration

# Lint and format
uv run ruff check .
uv run ruff format .

# Type check
uv run mypy src/

# Run the server locally
uv run servicenow-devtools-mcp

License

MIT

Related Servers