ServiceNow_Developer_Panel
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_instancesA | List the configured ServiceNow instances and whether each has a usable MCP authentication method. The other tools take the instance name returned here. |
| describe_tableA | 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. |
| request_tableA | 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. |
| request_tablesA | 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}]} |
| add_tablesA | 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. |
| query_cacheA | 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. |
| export_cacheA | 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. |
| verify_aclA | 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. |
| list_cached_responsesA | 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. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 9 tools
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.
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.
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.
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.