Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
TWINGATE_API_KEYYesTwingate API token; a read-only token is recommended
TWINGATE_NETWORKYesHost before .twingate.com (letters, digits, -, .), e.g. acme or acme.us1
TWINGATE_LOG_LEVELNoLog level: DEBUG, INFO, WARNING, ERROR or CRITICAL (any case); logs go to stderrINFO
TWINGATE_MAX_LIMITNoHard cap per tool call1000
TWINGATE_PAGE_SIZENoPage size, between 1 and 100100
TWINGATE_DEFAULT_LIMITNoItems per tool call when limit is omitted100
TWINGATE_MCP_HTTP_TOKENNoBearer token required for non-loopback HTTP; every request must send Authorization: Bearer <token>
TWINGATE_RETRY_ATTEMPTSNoNumber of retry attempts5
TWINGATE_TIMEOUT_SECONDSNoPer request timeout in seconds30
TWINGATE_MCP_ALLOWED_HOSTSNoExtra comma-separated hostnames accepted in Host/Origin for HTTP, e.g. a Compose service name

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

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}

Tools

Functions exposed to the LLM to take actions

NameDescription
list_usersA

List Twingate users: id, email, first/last name, role, and state. Use to browse who is in the network; use get_user to look up one email. Results are capped by limit; if truncated is true, more existed than were returned, so do not treat the list as complete.

get_userA

Look up one Twingate user by exact email. Returns null if no user has that email.

list_groupsA

List Twingate groups: id, name, type, whether active, and member count. Results are capped by limit; if truncated is true, more existed than were returned, so do not treat the list as complete.

list_resourcesA

List Twingate resources: id, name, address, remote network name, and whether active. Use get_resource_access with an id to see who can reach one. Results are capped by limit; if truncated is true, more existed than were returned, so do not treat the list as complete.

list_remote_networksA

List remote networks: id, name, location, whether active, and connector count. Results are capped by limit; if truncated is true, more existed than were returned, so do not treat the list as complete.

list_connectorsA

List connectors: id, name, remote network, state (online/offline), last heartbeat. Use to check connector health. Results are capped by limit; if truncated is true, more existed than were returned, so do not treat the list as complete.

list_devicesA

List devices: id, name, OS, owning user's email, trust status, and last seen time. Results are capped by limit; if truncated is true, more existed than were returned, so do not treat the list as complete.

get_resource_accessA

Show which groups and service accounts have access to one resource (by resource id from list_resources). If truncated is true the principal list is incomplete.

get_user_accessA

Show a user's groups and the resources reachable through those groups. Use to answer "what can this person reach?". If truncated is true lists are partial.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A4.2/5.0

Scored across 9 tools

Disambiguation5/5

Each tool targets a distinct resource or a distinct direction of an access query: list_* tools each cover one entity type, get_user is the single-email lookup complement to list_users, and get_user_access (user→resources) is clearly the inverse of get_resource_access (resource→principals). Descriptions explicitly cross-reference each other to steer selection, leaving no realistic misselection risk.

Naming Consistency5/5

Uniform verb_noun snake_case throughout: list_* for enumerations (groups, resources, users, remote_networks, connectors, devices) and get_* for targeted lookups (user, user_access, resource_access). No camelCase or vague verbs intrude.

Tool Count5/5

Nine tools is well within the ideal 3-15 range and each earns its place by covering a distinct Twingate entity or access relationship. Nothing looks padded or redundant.

Completeness3/5

The read-only/audit surface is coherent and covers the main entities plus access relationships, but it is entirely queries: there are no create, update, or delete operations for users, groups, resources, or connectors, and no get_group/get_resource/get_connector single-item lookups. An agent can investigate but cannot remediate anything it discovers.

Maintenance

ActivityMaintained
ResponsivenessNo issues