IT Glue MCP Server
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@IT Glue MCP Server find all passwords for domain example.com"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
IT Glue MCP Server
A Model Context Protocol (MCP) server that provides Claude with access to IT Glue documentation and asset management.
One-Click Deployment
Unlike the other Wyre MCP servers, this one talks to the IT Glue API directly and
hasno private @wyre-technology/* runtime dependency, so the one-click build
does not need a GitHub Packages token — the cloud builder's npm ci only pulls
public packages. (A read:packages token is only needed to install the published
@wyre-technology/itglue-mcp package itself; see Installation.)
The DigitalOcean target builds the full Docker image and runs the complete MCP
server over HTTP and is the recommended path; this repo does not ship a Workers
entrypoint (src/worker.ts), so prefer DigitalOcean or the prebuilt container
image (ghcr.io/wyre-technology/itglue-mcp).
Related MCP server: mcp-itglue
Installation
This package is published to the GitHub Packages npm registry, which requires a token even for public packages. Authenticate npm once, then install:
# Authenticate npm to GitHub Packages (token needs the read:packages scope)
export NODE_AUTH_TOKEN=$(gh auth token) # or a PAT with read:packages
npm install @wyre-technology/itglue-mcpThe repo's .npmrc already points the @wyre-technology scope at GitHub Packages and
reads the token from NODE_AUTH_TOKEN, so no further config is needed. The same applies
to npx @wyre-technology/itglue-mcp.
Or use the Docker image:
docker pull ghcr.io/wyre-technology/itglue-mcp:latestConfiguration
The server accepts credentials via environment variables:
Variable | Description | Required |
| Your IT Glue API key (format: ITG.xxx) | Yes (env mode) |
| A user-session JWT used as an optional fallback for document-folder operations on tenants whose API key cannot access the Document Folders resource yet. See JWT fallback for document-folder operations. | No |
| API region: | No |
| Override the IT Glue API base URL (advanced) | No |
| Transport: | No |
| Port for HTTP transport (default: | No |
| Bind address for HTTP transport (default: | No |
|
| No |
Alternative: When AUTH_MODE=gateway, the MCP Gateway injects credentials per request via HTTP headers instead of environment variables. See Remote Deployment.
JWT fallback for document-folder operations
A JWT is optional — it is only needed if your tenant's API key can't access Document Folders yet. Every folder-related path tries your API key first:
search_documents— defaults to a folder-inclusive listing (filter[document_folder_id]=nullreturns all documents, foldered ones included; each result carries itsdocumentFolderId). If the tenant's API rejects that filter, the server retries the[ne]filter form and finally degrades to the legacy root-only listing, saying so in the result. No JWT is involved at any layer.list_document_folders— IT Glue's public (API-key) API now documents a Document Folders resource, which is rolling out across tenants through 2026. The server tries the API key first (on the organization-relationship path, then the top-level/document_folderspath) and only falls back to a JWT if the key is rejected.create_document— the name-based folder picker uses the same API-key-first enumeration, then a configured JWT; if neither can list folders, it prompts for a folder URL / sibling-document URL / numeric folder ID as the last resort.
If you do need the JWT fallback, provide it in whichever way matches your deployment:
Mode | How to supply the JWT |
Local / env ( | Set the |
Remote gateway ( | Send the |
Interactive clients (Claude Desktop/Code) | Leave it unset — the server prompts you to paste a JWT on first use and caches it for the session. |
Headless deployments (Docker, cloud): there is no one to answer the interactive prompt, so if your tenant's API key cannot enumerate folders you must set
ITGLUE_JWT(env mode) or sendX-ITGlue-JWT(gateway mode) for folder enumeration to work.
Retrieving a JWT from your browser:
Sign in to IT Glue in your browser.
Open DevTools → Network tab.
Click any request to
itg-api-*.itglue.com.Copy the value of the
Authorization: Bearer <token>request header — the<token>part is your JWT.
Expiry: IT Glue JWTs are short-lived (~2 hours). A JWT placed in
ITGLUE_JWTon a long-running container will go stale and the JWT fallback will start failing until it is refreshed. Interactive clients are simply re-prompted on expiry. API-key operations are unaffected.
Available Tools
Organizations
search_organizations - Search for organizations with optional filtering by name, type, status, or PSA ID
get_organization - Get a specific organization by ID
Configurations (Devices/Assets)
search_configurations - Search for configurations with filtering by organization, name, type, status, serial number, RMM ID, or PSA ID
get_configuration - Get a specific configuration by ID
Locations (Addresses/Sites)
search_locations - Search an organization's locations (built-in address/site records), filtering by organization, name, city, region, or country. Results include the address fields and phone number.
get_location - Get a specific location by ID, including its full address and phone number
create_location - Create a new location for an organization (requires
name, typicallycountry_id)update_location - Update an existing location; only the fields you supply are changed
Passwords
search_passwords - Search for password entries (metadata only, no actual passwords in results)
get_password - Get a specific password entry including the actual password value
Documents
search_documents - Search for documents with filtering by organization, name, or folder. Defaults to a folder-inclusive listing (each result carries its
documentFolderId), degrading gracefully to a root-only listing on tenants whose API rejects the folder filterget_document - Get a specific document by ID, including its sectioned body. Renders as an interactive card in MCP Apps hosts — see Interactive Document Card
list_document_folders - List an organization's document folders (names and IDs). Works with an API key on tenants where IT Glue exposes the Document Folders resource; falls back to a JWT otherwise — see JWT fallback for document-folder operations
Flexible Assets
search_flexible_assets - Search for flexible assets (requires flexible_asset_type_id)
Utility
itglue_health_check - Verify connectivity to IT Glue API
Interactive Document Card (MCP Apps)
get_document renders as an interactive card in MCP Apps hosts (Claude
Desktop/web) showing the document's name, organization, folder, key dates, and a
plain-text preview of its sections; plain-JSON behavior is unchanged in other
hosts. The card is read-only — neutral by default, brandable via
window.__BRAND__ injection or MCP_BRAND_* env vars (MCP_BRAND_NAME,
MCP_BRAND_LOGO_URL, MCP_BRAND_PRIMARY_COLOR, MCP_BRAND_ACCENT_COLOR,
MCP_BRAND_BG, MCP_BRAND_TEXT) — no rebuild needed.
Usage with Claude Code
Add to your .mcp.json:
{
"mcpServers": {
"itglue": {
"command": "npx",
"args": ["@wyre-technology/itglue-mcp"],
"env": {
"ITGLUE_API_KEY": "${ITGLUE_API_KEY}",
"ITGLUE_REGION": "us"
}
}
}
}Or with Docker (local stdio):
{
"mcpServers": {
"itglue": {
"command": "docker",
"args": [
"run", "--rm", "-i",
"-e", "MCP_TRANSPORT=stdio",
"-e", "ITGLUE_API_KEY",
"ghcr.io/wyre-technology/itglue-mcp:latest"
],
"env": {
"ITGLUE_API_KEY": "${ITGLUE_API_KEY}"
}
}
}
}Note: The Docker image defaults to HTTP transport. The
-e MCP_TRANSPORT=stdioabove is required to run it as a local stdio server for Claude Desktop/Code. For server deployments, see Remote Deployment below.
Remote Deployment (HTTP Streamable)
For server/cloud deployments, run the server with the HTTP Streamable transport. The Docker image already defaults to MCP_TRANSPORT=http on port 8080, exposing two endpoints:
POST /mcp— MCP Streamable HTTP endpoint (stateless: a fresh server is created per request)GET /health— unauthenticated health check
Env mode (single tenant)
Credentials come from environment variables. Use this when one API key serves the deployment:
docker run -d \
--name itglue-mcp \
-p 8080:8080 \
-e ITGLUE_API_KEY="ITG.xxxxxxxx" \
-e ITGLUE_REGION="us" \
--restart unless-stopped \
ghcr.io/wyre-technology/itglue-mcp:latest
# Verify
curl http://localhost:8080/health
# {"status":"ok","transport":"http","authMode":"env",...}Clients connect to http://<host>:8080/mcp using the MCP Streamable HTTP transport.
Gateway mode (multi-tenant / hosted)
When deployed behind an MCP Gateway (e.g. mcp.wyre.ai), set AUTH_MODE=gateway. Credentials are then injected per request via HTTP headers rather than environment variables:
docker run -d \
--name itglue-mcp \
-p 8080:8080 \
-e AUTH_MODE=gateway \
--restart unless-stopped \
ghcr.io/wyre-technology/itglue-mcp:latestThe gateway supplies credentials on each request via these headers:
Header | Description | Required |
| IT Glue API key | One of API-Key or JWT |
| JWT for elevated-scope operations | One of API-Key or JWT |
| API region: | No |
| Override the IT Glue API base URL | No |
Requests missing both X-ITGlue-API-Key and X-ITGlue-JWT receive a 401. The /health endpoint reports "authMode":"gateway" in this mode.
Running without Docker
The same transport works from an installed/built copy by setting MCP_TRANSPORT=http:
MCP_TRANSPORT=http MCP_HTTP_PORT=8080 ITGLUE_API_KEY="ITG.xxxxxxxx" \
npx @wyre-technology/itglue-mcpExample Queries
Once configured, you can ask Claude:
"Search for organizations containing 'Acme' in IT Glue"
"Get the configuration details for device ID 12345"
"Find all passwords for organization ID 100"
"Search for flexible assets of type 54321"
Security Notes
Password search results do not include actual password values for security
Use
get_passwordwith explicit ID to retrieve password valuesStore your API key securely using environment variables or a secrets manager
The API key should have appropriate read permissions in IT Glue
License
Apache-2.0
Contributing
See CONTRIBUTING.md for guidelines.
Available Tools
24 toolsarchive_documentADestructiveIdempotent
⚠ HIGH-IMPACT. Archives an IT Glue document (soft delete — hides it from normal views but keeps it recoverable). Use unarchive_document to restore. Confirm with the user before invoking.
Inputs: document_id (required).
create_documentA
Create a new document in IT Glue for an organization. If neither document_folder_id nor skip_folder_prompt is supplied, the user is prompted to pick a folder. Folder enumeration for the name-based picker tries the API key first (works on tenants where IT Glue exposes the Document Folders resource), then a configured JWT; if neither can list folders, the prompt accepts a folder URL, a sibling-document URL, or a numeric folder ID. Pass skip_folder_prompt=true to always create at the organization root without prompting.
Inputs: name (required), organization_id (required), content, document_folder_id, +1 more.
create_document_sectionA
Add a new section to an IT Glue document. Section types: 'heading' (Document::Heading) or 'text' (Document::Text). Call publish_document after editing.
Inputs: content (required), document_id (required), section_type (required).
create_locationA
Create a new location (physical address/site) for an organization in IT Glue. IT Glue requires a name and typically a country_id for a location.
Inputs: name (required), organization_id (required), fax, city, +8 more.
delete_document_sectionADestructive
⚠ DESTRUCTIVE — IRREVERSIBLE. Permanently deletes a section from an IT Glue document. This action cannot be undone. Call publish_document after editing. Confirm with the user before invoking.
Inputs: section_id (required), document_id (required).
get_configurationB
Get a specific configuration (device/asset) by ID from IT Glue
Inputs: id (required).
get_documentB
Get a specific document by ID from IT Glue
Inputs: id (required), organization_id (required).
get_locationA
Get a specific location by ID from IT Glue, including its full address and phone number.
Inputs: id (required).
get_organizationB
Get a specific organization by ID from IT Glue
Inputs: id (required).
get_passwordA
Get a specific password entry by ID from IT Glue (includes the actual password value)
Inputs: id (required), show_password.
itglue_health_checkA
Check connectivity to IT Glue API by fetching organization types
Inputs: no named parameters.
list_document_foldersA
List document folders for an organization in IT Glue, returning their names and IDs. Works with your API key on tenants where IT Glue exposes the Document Folders resource (rolling out across tenants in 2026). If the API key is rejected, a JWT is used as a fallback (configure via ITGLUE_JWT env var or X-ITGlue-JWT header, or paste one when prompted).
Inputs: organization_id (required), name, page_size, page_number.
list_document_sectionsA
List all sections of an IT Glue document in order. Use this to read document content before editing.
Inputs: document_id (required).
list_flexible_asset_typesA
List all flexible asset types defined in IT Glue. Call this first to discover type IDs before using search_flexible_assets.
Inputs: organization_id.
publish_documentA
Publish an IT Glue document to make section changes visible. Always call this after creating, updating, or deleting sections.
Inputs: document_id (required).
search_configurationsC
Search for configurations (devices/assets) in IT Glue
Inputs: name, sort, psa_id, rmm_id, +6 more.
search_documentsA
Search for documents in IT Glue (scoped to an organization). Returns document metadata only (name, folder, URL, timestamps) — not the document body. Use get_document or list_document_sections to read a specific document's content.
Inputs: organization_id (required), name, sort, page_size, +2 more.
search_flexible_assetsA
Search for flexible assets in IT Glue (requires flexible_asset_type_id filter)
Inputs: flexible_asset_type_id (required), name, sort, page_size, +2 more.
search_locationsA
Search for locations (physical addresses/sites) of an organization in IT Glue. Each result includes the address fields and phone number. Locations are a built-in IT Glue entity (not a flexible asset), so use this rather than search_flexible_assets to look up an organization's address or phone.
Inputs: city, name, sort, psa_id, +5 more.
search_organizationsB
Search for organizations in IT Glue with optional filtering
Inputs: name, sort, psa_id, page_size, +3 more.
search_passwordsA
Search for password entries in IT Glue (returns metadata only, not actual passwords)
Inputs: url, name, sort, username, +4 more.
unarchive_documentADestructiveIdempotent
⚠ HIGH-IMPACT. Restores a previously archived IT Glue document so it appears in normal views again. This makes the document visible to all users. Confirm with the user before invoking.
Inputs: document_id (required).
update_document_sectionA
Update the content of an existing IT Glue document section. Use list_document_sections to get section IDs. Call publish_document after editing.
Inputs: content (required), section_id (required), document_id (required).
update_locationA
Update an existing location in IT Glue. Only the fields you supply are changed.
Inputs: id (required), organization_id (required), fax, city, +9 more.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 24 tools
Most tools are clearly distinct by resource type (organizations, configurations, locations, passwords, documents, flexible assets) plus action (search/get/create/update/delete). A few potential confusions exist: get_password vs search_passwords are well-differentiated, but get_document/list_document_sections/list_document_folders could blur for an agent unfamiliar with IT Glue's section/folder vs full-document model. The location vs flexible_assets distinction is explicitly documented to avoid misselection.
Tool names follow an extremely consistent verb_noun pattern throughout: get_*, search_*, create_*, update_*, delete_*, list_*, publish_*, archive_*/unarchive_*, plus one exception itglue_health_check. The prefix conventions are uniform and predictable across all 24 tools, making the intended action and resource immediately clear.
With 24 tools, this borders the upper edge of reasonable for a broad IT Glue domain covering organizations, configurations, locations, passwords, documents, and flexible assets. Each tool maps to a meaningful operation, though the document-centric surface (10+ tools) is somewhat heavy relative to the thin coverage of other entity types. Still defensible given the domain breadth.
The surface covers organizations (search/get), locations (search/get/create/update), passwords (search/get), configurations (search/get), and a rich document lifecycle (search/get/folders/sections/publish/archive/unarchive/create). Notable gaps: no create/update/delete for organizations, configurations, passwords, or flexible assets — only read operations. Since several entity types lack write capabilities, the surface feels read-heavy for those, though document management is fully covered.
Related MCP Connectors
Connect Claude to your Platform7n workspaces: chat, links, work and decks. One-click OAuth.
Connect Claude to your Platform7n workspaces: chat, links, work and decks. One-click OAuth.
Connect your team's living knowledge base — docs, data, issues, CRM — to Claude and ChatGPT.
Search and read the Claude Platform documentation and API reference.
Related MCP Servers
- FlicenseCqualityDmaintenanceEnables Claude to interact with Hudu IT documentation, including searching, reading, creating, and updating articles, assets, passwords, companies, and more.100-
- AlicenseAqualityBmaintenanceConnects AI assistants to IT Glue, the MSP documentation platform. Browse organizations, read and write documents and flexible assets, and answer natural-language questions via semantic vector search (OpenAI/Azure embeddings). Viewer/editor/admin roles gate tool access; bring-your-own-key applies IT Glue's native permissions. Runs over stdio or HTTP; Docker image available.2792 npm6MIT
- FlicenseNot gradedqualityDmaintenanceRead-only MCP server for IT Glue that enables natural-language search and retrieval of organizational data, credentials (as secure links), documents, configurations, and other tenant records without ever exposing secrets or writing to IT Glue.-
- AlicenseAqualityCmaintenanceProvides Claude with access to IT Glue documentation and asset management, enabling search, retrieval, and creation of organizations, configurations, locations, passwords, documents, attachments, flexible assets, and user activity metrics through the IT Glue API.28Apache 2.0