Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
PORTNoHTTP port when using the HTTP transport.3000
TRANSPORTNoTransport to use: stdio or http.stdio
ITGLUE_REGIONNoIT Glue region: us, eu, or au.us
ITGLUE_API_KEYYesServer-wide IT Glue API key.
OPENAI_API_KEYNoEnables vector search using OpenAI embeddings.
UPLOAD_STAGINGNoUpload staging backend: memory, azure-blob, or off. Defaults to memory on HTTP and off on stdio.
ALLOWED_ORIGINSNoExtra browser origins allowed on /mcp, comma-separated.
EMBEDDING_MODELNoEmbedding model name, or Azure deployment name when using Azure OpenAI.text-embedding-3-small
ITGLUE_BASE_URLNoOverride the IT Glue API base URL.
PUBLIC_BASE_URLNoPublic base URL used to construct staged upload URLs for the memory backend.
MCP_TOKENS_ADMINNoComma-separated label:token list for admin-role bearer tokens.
MCP_TOKENS_EDITORNoComma-separated label:token list for editor-role bearer tokens.
MCP_TOKENS_VIEWERNoComma-separated label:token list for viewer-role bearer tokens.
VECTOR_INDEX_PATHNoPath to the vector index file../vector-index.json
CLIENT_ITGLUE_KEYSNoBYOK policy: disabled, with-token, or open.with-token
AZURE_OPENAI_API_KEYNoEnables vector search using Azure OpenAI embeddings.
AZURE_OPENAI_ENDPOINTNoAzure OpenAI endpoint used with Azure OpenAI vector search.
AZURE_STORAGE_ACCOUNTNoAzure Storage account for managed identity or DefaultAzureCredential with azure-blob upload staging.
ITGLUE_WEBHOOK_SECRETNoWebhook signature secret and /index/refresh secret.
AZURE_STORAGE_CONTAINERNoAzure Blob Storage container used for azure-blob upload staging.mcp-itglue-uploads
ITGLUE_ADVANCED_TOOLSETNoSet to true or 1 to register the advanced toolset (itglue_get, itglue_find_endpoint).false
AZURE_OPENAI_API_VERSIONNoAzure OpenAI API version used with Azure OpenAI vector search.
AZURE_STORAGE_CONNECTION_STRINGNoAzure Blob Storage connection string for azure-blob upload staging.

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

IT Glue MCP server

Finding things

  • Filters use EXACT matching except name filters (partial). When unsure of a name, list without filters and scan.

  • Typical flow: itglue_list_organizations → itglue_list_documents → itglue_get_document (→ itglue_get_document_section for long docs).

  • Prefer itglue_vector_search (if available) for "how do I…" questions — it matches meaning, not words.

  • If itglue_find_endpoint / itglue_get are available, use them for API surface the curated tools don't cover — prefer the curated tool when one exists.

Writing documents

  1. itglue_create_document creates a DRAFT (invisible until published).

  2. Add content with itglue_create_document_section (Text/Heading/Gallery/Step; content is HTML).

  3. itglue_publish_document makes it visible.

  • itglue_update_document only renames; content changes go through sections.

Flexible assets

  • Get the type's field list with itglue_get_flexible_asset_type before creating/updating.

  • Updates REPLACE the whole traits object — send all traits back.

Images & attachments

  • A picture INSIDE a document: itglue_create_document_image (inline → embed the returned inline_resource_url as , or pass append_to_section_id; gallery → gallery_id). Attachments never render in the body.

  • A file in a record's Attachments panel: itglue_create_attachment.

  • Getting the bytes in: for a file on the client's machine call itglue_request_upload, have the client PUT the file to the returned URL (curl), then pass upload_id. Use url for web-hosted files. Never type base64 by hand — content_base64 is for tiny files you already hold verbatim.

Notes

  • Delete operations are permanent.

  • Some tools may be unavailable depending on this session's access level.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
itglue_list_organizationsA

Search and list IT Glue organizations. Use this first to find the organization ID required by document and flexible-asset tools. filter_name matches partially and case-insensitively; filter_id is exact. Results are paginated. List items carry summary fields; use itglue_get_organization for the full record.

itglue_get_organizationB

Get a single IT Glue organization by ID.

itglue_list_documentsA

List documents in an organization, including documents nested in folders. Returns summary metadata only — use itglue_get_document for content and the full record. filter_name matches partially and case-insensitively. The endpoint returns root-level documents by default, so this tool issues a second query for folder-nested documents and merges the results (up to 2x page_size items).

itglue_list_document_foldersA

List the document folders (directories) in an organization, including nested folders. Returns summary metadata only (name, parent folder, document count). Use this to discover a document_folder_id for itglue_create_document, or to browse an organization's document tree. filter_name matches partially and case-insensitively; parent_id is the number in a folder's URL. A folder with parent_id null is top-level.

itglue_get_documentA

Get a document by ID with all of its sections and their content. Section content is stored as HTML; markdown output converts it to plain text, with inline images shown as their relative /org/docs/doc/images/ID paths and gallery images listed by ID. If the response is truncated, fetch individual sections with itglue_get_document_section.

itglue_create_documentA

Create a new document as a DRAFT in an organization. Add content with itglue_create_document_section, then make it visible with itglue_publish_document.

itglue_update_documentA

Rename a document (metadata only). To change content, use itglue_update_document_section.

itglue_publish_documentA

Publish a draft document, making it visible to users with access.

itglue_delete_documentsA

PERMANENTLY delete one or more documents, including all their sections. This cannot be undone.

itglue_list_document_sectionsA

List the sections of a document in position order, with content previews and section IDs (needed for update/delete operations). List items carry summary fields and a bounded content_preview; Gallery/Step items also carry document_gallery_id (the gallery_id for itglue_create_document_image) and their images. Use itglue_get_document_section for full content.

itglue_get_document_sectionA

Get one document section with its full content (HTML on the wire; markdown output converts to plain text). Inline images appear as relative paths — keep them verbatim when editing; the JSON record also has rendered_content with temporary S3 URLs for display.

itglue_create_document_sectionA

Add a section to a document. Types: Text (HTML content), Heading (content = heading text, level 1-6 required), Gallery (no content — add pictures afterwards with itglue_create_document_image using the new section's document_gallery_id), Step (HTML content, optional duration in minutes). IMAGES: to show a picture in Text/Step HTML, first upload it with itglue_create_document_image and use the returned inline_resource_url verbatim as . Public https:// image links also work; base64/data: URIs and S3 URLs are stripped by IT Glue. Attachments never render in the body.

itglue_update_document_sectionA

Update a section's content, heading level, duration, or position. Only provided fields change; the section type cannot be changed. content REPLACES the whole HTML — fetch the current content first and keep existing tags verbatim, or they are lost. To add a new picture, upload it with itglue_create_document_image (or its append_to_section_id shortcut) and embed the returned inline_resource_url; base64/data: URIs and S3 URLs are stripped by IT Glue.

itglue_delete_document_sectionA

PERMANENTLY delete one section from a document. This cannot be undone. Useful for restructuring a document's layout.

itglue_create_document_imageA

Upload a picture INTO a document — the only way to get an image to render in a document's body (itglue_create_attachment only files it in the Attachments panel). Two placements: (1) INLINE — omit gallery_id; the result carries inline_resource_url, a relative path you must use verbatim as in Text/Step section HTML via itglue_create_document_section or itglue_update_document_section, or pass append_to_section_id to have this tool append the to an existing Text/Step section for you. (2) GALLERY — pass gallery_id (the document_gallery_id shown on a Gallery or Step section) to file the image into that gallery. Never put base64/data: URIs or S3 URLs in section content; IT Glue strips them. Provide exactly one source: upload_id (a file the client PUT via itglue_request_upload — the right choice for anything on the client's disk), url (the server fetches it), file_path (local stdio runs only), or content_base64 (tiny files only). content_base64 must be the exact bytes of a real image file — never write or reconstruct base64 yourself (IT Glue rejects anything ImageMagick cannot decode). file_name needs an extension (e.g. screenshot.png); inferred from url/file_path when omitted. Max 25 MB.

itglue_get_document_imageA

Get one document image by ID: file name, size, owning document/gallery, the inline_resource_url to embed it with, and a presigned download URL (valid ~1 hour). Image IDs appear in section HTML as the last path segment of and in Gallery/Step section image lists.

itglue_delete_document_imageA

PERMANENTLY delete a document image (all size variants). This cannot be undone. Any tag still referencing it stays in the section HTML until that section is next saved, when IT Glue drops the broken reference — remove the tag yourself with itglue_update_document_section for an immediate clean result.

itglue_create_attachmentA

Attach a file (PDF, image, config export, …) to a record (document, flexible asset, configuration, etc.). The file appears in the record's Attachments side panel — it is NOT shown inside a document's body. To place a picture inside a document (inline in a Text/Step section or in a Gallery), use itglue_create_document_image instead. Provide exactly one source: content_base64 (small files only), url (the server fetches it), file_path (local stdio runs only), or upload_id (a file the client PUT via itglue_request_upload — use this for anything on the client's disk). Give file_name with an extension (e.g. network-diagram.pdf) so IT Glue detects the type; it is inferred from url/file_path/upload when omitted. Max 25 MB.

itglue_list_attachmentsA

List the attachments on a record (document, flexible asset, configuration, etc.), with attachment IDs (needed for delete), file names, content types, and download URLs.

itglue_delete_attachmentA

PERMANENTLY delete an attachment from a record. This cannot be undone. Find the attachment ID with itglue_list_attachments.

itglue_list_flexible_asset_typesA

List flexible asset types (the schemas MSPs define in IT Glue, e.g. 'Wireless', 'Applications'). Use this to find the type ID required by itglue_list_flexible_assets. filter_name matches partially and case-insensitively. List items carry summary fields; use itglue_get_flexible_asset_type for field definitions.

itglue_get_flexible_asset_typeA

Get a flexible asset type by ID, including its field definitions (name, kind, required) — the trait keys needed to create or update assets of this type.

itglue_list_flexible_assetsA

List flexible assets of a given type, optionally restricted to one organization. The type ID is required by the IT Glue API — find it with itglue_list_flexible_asset_types. List items show bounded trait previews (HTML stripped, long values truncated); use itglue_get_flexible_asset for full trait values.

itglue_get_flexible_assetA

Get one flexible asset by ID, including all of its traits.

itglue_create_flexible_assetA

Create a flexible asset. Traits are the type's fields keyed by their lowercased, hyphenated names (inspect them with itglue_get_flexible_asset_type). All required traits must be provided.

itglue_update_flexible_assetA

Update a flexible asset's traits. IMPORTANT: IT Glue replaces the traits object wholesale — fetch the asset first and send back ALL traits, not just the changed ones, or omitted traits are cleared.

itglue_delete_flexible_assetA

PERMANENTLY delete a flexible asset. This cannot be undone.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.9/5.0

Scored across 27 tools

Disambiguation4/5

Each tool generally maps to a distinct resource and action, and the descriptions explicitly separate close pairs such as document metadata versus document sections, and document images versus attachments. The only mild ambiguity is that several document sub-resource tools look similar at a glance, but the descriptions resolve this well.

Naming Consistency5/5

All tools follow a predictable itglue_verb_noun snake_case pattern, such as itglue_get_document, itglue_create_document_section, and itglue_delete_attachment. The plural itglue_delete_documents is a minor but understandable batch-operation variant.

Tool Count3/5

The 27 tools cover several resource families with mostly necessary CRUD operations, so they largely earn their place. However, the count is heavy and exceeds the comfortable range, making the surface feel broad and somewhat burdensome for an agent to navigate.

Completeness3/5

Core document, section, image, attachment, and flexible asset workflows have good CRUD coverage. Notable gaps remain: document folders can be listed but not created/updated/deleted, organization tools are read-only, and itglue_request_upload is referenced repeatedly for client-disk uploads but is absent from the tool list.

Maintenance

ActivitySlowing
ResponsivenessNo recent community issues