Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
MCP_PORTNoPort for the streamable-http transport. Defaults to 8000 in development and 5774 in Docker.8000
MCP_TRANSPORTNoTransport mode: 'stdio' (default for local MCP clients) or 'streamable-http' (for network clients). Defaults to stdio.stdio
MCP_TRUSTED_CIDRSNoComma-separated list of CIDRs trusted for LAN bypass authentication in HTTP mode.192.168.1.0/24,127.0.0.0/8
REFRESH_INTERVAL_SECONDSNoInterval in seconds for refreshing registry data (hosts, services, topology).
DOC_REFRESH_INTERVAL_SECONDSNoInterval in seconds for refreshing documentation and other remote content.

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": true
}
logging
{}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
extensions
{
  "io.modelcontextprotocol/ui": {}
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
search_docsA

Full-text search across all homelab documentation. Returns matching paragraphs with source file and section.

get_service_infoA

Look up a service by name. Returns host, port, stack, domain, role, and co-located services.

get_host_infoA

Look up a host by name or IP. Returns specs, role, OS, and all services running on it.

get_ip_infoA

Reverse-lookup an IP address. Returns the host and all services at that IP.

show_dependency_chainA

Show the full dependency chain for any homelab entity. Returns what it runs on, what depends on it, what it depends on, how it is accessed (ingress), and what storage it uses.

show_data_freshnessA

Check connectivity and freshness status for all configured services. Returns which data sources are reachable and which are not.

what_changed_last_24hA

Get a unified timeline of recent events across the homelab: alerts, target flaps, failed checks, security bans, expiring certs, and backup issues.

what_needs_attentionA

Get a prioritized list of things that need attention right now. Checks host resources, Prometheus target health, cron (Healthchecks) status, security events (CrowdSec), and SSL certificate expiry. Returns verdicts sorted by severity. (Does not check backups -- use get_pbs_status.)

explain_host_healthA

Get detailed health data for a specific host: resource usage, services running on it, and any issues detected.

explain_service_healthA

Get detailed health data for a specific service: current status, where it runs, what depends on it, and any issues detected.

get_homelab_overviewA

Complete homelab overview: host health, container counts, storage utilization, active media streams, recent errors, and speed test results. Returns partial results if individual services are unreachable.

get_media_overviewA

Media overview: Plex active streams, Sonarr/Radarr upcoming and queues, Transmission downloads, Overseerr requests, and Prowlarr indexer health.

get_infra_overviewA

Infrastructure overview: Proxmox node status, Docker container counts per host, storage utilization (NAS, PBS, Backblaze), CrowdSec security status, and NPM proxy status.

fetch_pageA

Fetch a web page and extract its content as clean markdown. Strips navigation, ads, and boilerplate.

Only http/https URLs are fetched. Loopback, link-local, and cloud-metadata targets are always blocked; private/RFC1918 targets are blocked unless FETCH_ALLOW_PRIVATE is set (default allows LAN fetches). Redirects are re-validated at every hop.

refresh_registriesA

Force an immediate refresh of service and host registries from all live API sources (Portainer, Proxmox, DNS, NPM, Scanopy, WireGuard, Healthchecks, Gitea). Returns a summary of what changed.

refresh_docsA

Force an immediate refresh of documentation, Docker stacks, and vault notes from Gitea repositories. Returns a summary of what changed.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A4/5.0

Scored across 16 tools

Disambiguation4/5

Most tools have clearly distinct purposes, but pairs like get_service_info vs explain_service_health and get_host_info vs explain_host_health could be confused since they cover the same entity with different details. The overview tools (homelab, infra, media) also have overlapping metrics but are scoped clearly enough.

Naming Consistency4/5

All names use lowercase_snake_case and follow a verb-first pattern (search_, get_, show_, explain_, fetch_, refresh_). The two 'what_' tools deviate from strict verb_noun but are still clear and consistent in style.

Tool Count4/5

16 tools is slightly above the typical 3-15 well-scoped range, but the homelab monitoring domain is broad and each tool addresses a distinct aspect. The count feels justified rather than excessive.

Completeness3/5

The set covers most read-only monitoring needs: info lookup, health, overviews, change timeline, and refresh actions. However, what_needs_attention explicitly references get_pbs_status for backup checks, but that tool is not actually in the set, a notable gap. There are also no control/mutation tools, which may be intentional but limits the surface.