Skip to main content
Glama
JeanExtreme002

PyMemoryEditor

Official

list_processes

Read-onlyIdempotent

Identify running processes this server can open for memory access, optionally filtering by name and paging through results.

Instructions

List running processes this server is allowed to open.

:param name_filter: keep only processes whose name contains this substring, case-insensitively. Use it — an unfiltered list on a desktop is several hundred entries of pure noise. :param limit: maximum entries to return, capped at server_info().limits.max_page_size. :param offset: entries to skip, for paging. It exists because the cap used to be a different number from the one server_info advertised, with no way past it — so everything after the first page was simply unreachable.

Processes blocked by the server's policy are omitted, and the result says how many were hidden so the absence of an expected target is distinguishable from it not running.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNo
offsetNo
name_filterNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.5/5.0
Behavior5/5

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

Annotations already cover safety (readOnly/idempotent/non-destructive), and the description adds genuinely new behavior: policy-blocked processes are omitted and the count of hidden entries is reported so a missing target is distinguishable from a non-running one. It also ties the limit cap to server_info().limits.max_page_size, which is non-obvious behavioral coupling.

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?

Front-loaded with purpose, then parameters, then result behavior — good ordering. The historical aside about the old cap mismatch explains why offset exists but is longer than needed, and the docstring-style ':param' formatting is slightly unusual for a tool description.

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

Completeness5/5

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

With an output schema present the description needn't enumerate return fields, yet it still explains the notable one (the hidden-process count) and the permission/policy filtering. All three optional parameters are covered, so an agent has everything required to call this correctly.

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 description coverage is 0%, so the description carries the full burden and does so for all three parameters: name_filter is a case-insensitive substring match, limit is capped at the server's advertised max page size, and offset is for paging past the first page. This adds real semantics beyond the bare schema titles and defaults.

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

Purpose4/5

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

States a specific verb and resource ('List running processes') plus a meaningful scope qualifier ('this server is allowed to open'), so the agent knows the list is permission-filtered rather than exhaustive. It does not explicitly name or contrast with siblings like process_info or open_process, but the verb+resource pairing is unambiguous.

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?

Gives direct operational guidance — 'Use it' for name_filter because an unfiltered list is 'several hundred entries of pure noise' — and explains that offset exists for paging past the advertised cap. It stops short of naming when to prefer this tool over siblings (e.g., before open_process/process_info), so alternatives are left implicit.

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