Tool Packages — Advanced Reference
Most users don’t need this page. The default package is
standard— read-only, safe for any environment. Only read on if you need write tools beyond whatstandardprovides.
Choosing a package
Section titled “Choosing a package”Start with the narrowest package that covers your work. Each step up adds write access to more domains:
Read-only — safe for any environment, no write tools:
| Package | Tools | ~Tokens | When to use |
|---|---|---|---|
core |
12 | ~3.0K | Minimal read-only: health, schema, discovery, key artifact lookups only |
standard |
31 | ~7.3K | (Default) Read-only across incidents, changes, portal, logs, and source analysis |
none |
0 | 0 | Intentionally disable all tools (testing, locked-down environments) |
⚠️ Write-capable — advanced options that grant create/update/delete:
| Package | Tools | ~Tokens | When to use |
|---|---|---|---|
service_desk |
33 | ~8.2K | ⚠️ Service desk agents who need to update/close incidents and changes |
portal_developer |
50 | ~10.6K | ⚠️ Portal developers who deploy widgets, changesets, and script includes |
platform_developer |
44 | ~10.8K | ⚠️ Platform engineers who manage workflows, Flow Designer, and scripts |
full |
61 | ~13.8K | ⚠️ Most advanced — all write tools across all domains at once (see warning below) |
~Tokens is the approximate footprint each package’s tool schemas add to the model’s context per request (tiktoken
cl100k_baseover the server’s compacted schemas; actual Claude counts vary slightly). Prefer the narrowest package to keep context and cost down.
All packages except core and none inherit standard read-only tools via _extends. See config/tool_packages.yaml for the full inheritance tree.
Setting the package
Section titled “Setting the package”Via environment variable (recommended):
MCP_TOOL_PACKAGE=standardVia CLI flag:
servicenow-mcp --tool-package standard --instance-url ...In your MCP client config:
{ "env": { "MCP_TOOL_PACKAGE": "standard" }}What happens when a tool isn’t in your package
Section titled “What happens when a tool isn’t in your package”If you call a tool that isn’t active in your current package, the server returns a clear error:
Tool 'manage_widget' is not available in package 'standard'.Enable package 'portal_developer' or higher to use this tool.No silent failures — the LLM knows exactly which package to request.
Full tool list
Section titled “Full tool list”For the complete list of all 75 tools by category and package membership, see Tool Inventory.