Skip to main content
Glama

get_server_memory

Retrieve cached OS, runtime, service, web stack, and log data for a managed instance. Use before SSH commands to answer questions without a remote round-trip.

Instructions

Return cached memory (OS, runtimes, services, web stack, logs) for a managed instance. Call FIRST before issuing SSH commands — the cached summary frequently answers OS/runtime/service/web-stack questions without an SSH round-trip. If this returns an error with code='missing', the server has no memory yet — call build_server_memory(instance_id) to probe and populate it, then retry this tool. format='summary' (default) gives a token-efficient Markdown digest; format='markdown' gives the full untruncated version; format='full' returns the raw JSON for all modules; format='context_block' returns a envelope identical to what the first-party Servonaut chat client injects — use this when you want a single drop-in block to prepend to your own model context; format='stack_summary' returns a compact JSON stack profile (os, docker presence, databases, web server, log paths) for detector recon — the cheapest per-scan projection. Note: format='full' returns structured per-module data (observed, declared, probed_at, ttl_seconds, sudo_used, truncated, partial, raw_output). raw_output is scrubbed of secrets by the redaction library when config.memory.redaction_enabled is true (default).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
formatNoOutput format (default: summary).summary
instance_idYesInstance ID, name, or custom-server name.
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden. It discloses that data is cached, that errors can be missing, and describes output formats including fields like probed_at and ttl_seconds. It also mentions secret redaction. More detail on freshness guarantees or rate limits would be beneficial, but existing info is substantial.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is long but well-structured: it leads with the core purpose, then provides usage order, error handling, format details, and one note about redaction. Each sentence adds value given the complexity of multiple formats and fallback logic. Slightly verbose but not wasteful.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description effectively covers return values for each format (e.g., full format fields, stack_summary content) and error handling. It explains the tool's role relative to build_server_memory. It is complete enough to use the tool correctly, though a brief note on the overall response structure could help.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds significant value by explaining each format enum value in detail (e.g., summary yields token-efficient Markdown, context_block wraps in a specific envelope) and their use cases. This goes well beyond the schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool returns cached memory (OS, runtimes, services, web stack, logs) for an instance, distinguishing it from siblings like build_server_memory by specifying it should be called first. It also details multiple output formats, making the purpose specific and well-defined.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly instructs to call this tool before issuing SSH commands, and provides a fallback to build_server_memory if an error with code='missing' occurs. It explains when the tool is useful (answers many questions without SSH) but does not fully contrast with all sibling tools like refresh_server_memory or list_server_memories.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/zb-ss/servonaut'

If you have feedback or need assistance with the MCP directory API, please join our Discord server