Skip to main content
Glama
ServiceNow_Developer_Panel

ServiceNow_Developer_Panel

Download for Windows Download for Linux

What is this project

This project is meant as a helper tool for service now developer. It provides a simple, desktop native UI to make Rest API call to a ServiceNow instance and to browse and query the result.

Making a new request

From standard Table API operations, such as selecting filtered records in a table, you will be able to perform advanced operations, like join operations between tables and grouping.

Query on local cache

The same APIs used for the user interface also powers a local MCP server, so your AI model of choice can browse and study your ServiceNow instance.

Example of mcp query

This tool provides read-only methods, although PUT calls may be added in the future.

Warning notice

This project is an independent, community tool: it is not affiliated with or endorsed by ServiceNow. ServiceNow is a trademark of ServiceNow, Inc.

This tool pulls data from a selected ServiceNow instance, using user provided authentication, to process it locally. Always make sure not to violate your organization's policies. I do not in any way condone misuse of this tool. To report a vulnerability, or to see what the tool stores and how, read the security policy.

How to use it

To get started with this tool first configure your instance and authentication methods in the Configuration tab. Note: Your credentials are only saved locally and sent to ServiceNow to authenticate your requests.

  • Configuration: settings, instances and authentication methods.

  • User interface: tabs and sidebar.

  • Database: what is stored locally and where, how responses are reused and when they expire.

  • MCP: the MCP server and its tools.

Each release includes two setup executables, for Windows and for Linux .

Simply download the setup for your system and run it to install the application (portable ~180MB, but you can build the project yourself to save storage). Running a newer setup on an existing installation updates it and keeps your data.

The installers are not code-signed, so Windows SmartScreen may warn you the first time you run the setup. See Building and installing for what to expect, how to verify the download and how to build it yourself.

Code stuff

This project is written entirely in Python. I used Pyside6 for the UI and the mcp package for the MCP server. The list of packages needed to build this application is in the requirement.txt file.

You can build the app or run it from its source yourself. See Building and installing for details.

Available Tools

9 tools
add_tablesA
Read-only

Add tables to a response cached by request_tables, so query_cache can join them with the tables it already holds. Only the new tables are fetched. If the cached response has expired, every table is requested again into a new cached response and the returned cache_name changes. Returns the same summary as request_tables, for every table of the response.

Inputs: tables (required), cache_name (required). Returns: source, sections, warnings, row_count, +3 more

describe_tableA
Read-onlyIdempotent

List the fields of a table from the instance dictionary, including the fields it inherits from the tables it extends, for example task for incident. Each field has its name, label and type, the table that defines it, the table it points to for reference and list fields, and whether it is mandatory or read only. The dictionary overrides of the table and of its parents are applied and listed under overrides. default_value, dependent and choices appear only when the field has them; choices are the active values and labels to use in queries, with the dependent_value of the dependent field when they depend on one. Use it before querying a table whose fields you do not know for sure, custom application tables included. Inactive fields are left out. The returned cache_name holds the tables sys_db_object, sys_dictionary, sys_dictionary_override and sys_choice, where name is the table and element the field.

Inputs: table (required), instance (required), fields, refresh. Returns: label, table, fields, source, +5 more

export_cacheA
Idempotent

Write a cached response to disk, as csv with one file per table or as an xlsx workbook with one sheet per table. Returns the absolute paths written.

Inputs: cache_name (required), format, destination. Returns: paths, format, tables, cache_name

list_cached_responsesA
Read-only

List the responses in the local cache, most recent first, with the tables and row counts each holds. current is false once a response is older than the cache lifetime: it can still be queried and exported, but request tools will fetch fresh data.

Inputs: limit. Returns: result

list_instancesA
Read-only

List the configured ServiceNow instances and whether each has a usable MCP authentication method. The other tools take the instance name returned here.

Inputs: no named parameters. Returns: result

query_cacheA
Read-only

Run read-only SQLite against a cached response. Each ServiceNow table is a SQLite table with TEXT columns. Returns at most 2000 rows; truncated is true when more matched.

Inputs: sql (required), cache_name (required). Returns: rows, columns, row_count, truncated, +1 more

request_tableA
Read-onlyIdempotent

Fetch records from one ServiceNow table. Returns a sample of the records, any warnings and a cache_name; the full result is cached locally for query_cache and export_cache. To join several tables, fetch them with request_tables instead.

Inputs: table (required), instance (required), limit, query, +4 more. Returns: limit, table, source, columns, +8 more

request_tablesA
Read-onlyIdempotent

Fetch several tables in one request, each with its own query, fields and limit. All of them are stored in one cached response, so query_cache can join them. Returns the row count and columns of each table, any warnings and the cache_name. Example arguments: {"instance": "dev", "tables": [{"table": "sys_user_group", "fields": ["sys_id", "name"], "limit": 1000}, {"table": "sys_group_has_role", "query": "role.name=itil", "fields": ["group", "role", "group.name"], "limit": 5000}]}

Inputs: tables (required), instance (required), refresh. Returns: source, sections, warnings, row_count, +3 more

verify_aclA
Read-onlyIdempotent

Check whether users holding the given sets of roles can run an operation on a table, or on one of its fields, according to the ACLs of the instance. Each profile gets a decision (allowed, conditional, denied or missing), a summary, the reasons and the controls involved. Scripts and conditions are not run: conditional means the scripts and conditions listed in the controls decide. The controls also show which roles each ACL requires. Parent table inheritance is not evaluated: missing means no ACL matched.

Inputs: table (required), instance (required), profiles (required), operation (required), +2 more. Returns: field, table, source, target, +4 more

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A4.2/5.0

    Scored across 9 tools

    Disambiguation5/5

    Each tool targets a distinct operation: instance discovery, schema inspection, single vs. multi-table fetching, cache querying/exporting, ACL verification, and cache listing. The single/plural fetch pair and add_tables are clearly differentiated by their descriptions and explicit guidance.

    Naming Consistency5/5

    All tool names follow a consistent snake_case verb_noun convention (list_instances, describe_table, request_table, query_cache, export_cache, verify_acl, list_cached_responses). No mixed casing or vague verb-only names.

    Tool Count5/5

    Nine tools is well-scoped for a ServiceNow data exploration and ACL verification server. Each tool has a clear role in the workflow, with no redundant or filler tools.

    Completeness4/5

    The surface covers instance discovery, schema inspection, record fetching, SQL querying, export, ACL checks, and cache management. It appears intentionally read-only, so record mutation and explicit cache invalidation are minor gaps rather than dead ends.

    Maintenance

    ActivityNo data
    ResponsivenessOutdated data

    Related MCP Connectors

    Related MCP Servers

    • F
      license
      Not graded
      quality
      D
      maintenance
      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.
      -
    • A
      license
      A
      quality
      D
      maintenance
      A read-only MCP server that enables AI assistants to query ServiceNow instances—incidents, changes, users, CMDB—with malformed query linting and injection protection.
      7
      MIT