Skip to main content
Glama
Cloto-dev

CPersona

Official
by Cloto-dev

get_session_findings

Read-only

Pull storage-integrity findings on demand to uncover forgotten or conflicting data across the entire database.

Instructions

Pull the storage-integrity findings on demand (SuperAuditor v1 pull contract, docs/SUPERAUDITOR_STANDARD.md) instead of reading them off check_health. Same detector as check_health(fix=false) over the WHOLE database, delivered as findings: each carries kind (the check registry name, so check_health(checks=[kind]) re-runs exactly that probe; escalation tiers are their own kinds, e.g. null_embedding_pipeline_down) and a static per-kind severity (critical = the read contract is broken now / warn = two stored facts contradict / info = an observation). check_health's own instance verdict rides along as health_severity; a probe that raised is reported as kind check_crashed instead of failing the pull, so a partial result says which probe is missing. Read-only, never repairs. NOT free, though: the registry runs unfiltered, which includes two whole-database reads (the FTS5 integrity-check over both indexes, and PRAGMA quick_check over the file), so every pull is O(database) on a channel meant to be pulled once a session — budget it by call frequency. There is deliberately no cheap subset: choosing which probes run would be choosing which forgotten state stays forgotten. Findings are NOT filtered by agent_id or project_id — the channel surfaces forgotten state, and slicing it by the caller's bucket would hide exactly the rows that were forgotten (scope a repair with check_health(agent_id=...)). Honest caps: findings holds at most per_kind_limit rows per kind, capped_kinds names every kind that had more (observed, not inferred from count == limit), total and the counts describe the RETURNED set only, and per_kind_limit echoes the limit applied. summary restates the same trimmed set in prose (pass include_summary=false to skip paying for it). On a shared remote transport with no session_key declared the response carries identity_shared: true — this server has no session-scoped probes, so the key is a partition hint, not a filter. _meta.server_version identifies the running instance.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
session_keyNoOpaque client-declared session identity (partition hint, not authentication). Empty on a non-stdio transport marks the response identity_shared.
per_kind_limitNoMaximum findings returned per kind (default 5, minimum 1). Kinds that hit it are listed in capped_kinds.
include_summaryNoInclude the human-readable `summary` rendering (default true). It restates `findings` in prose — set false when machine-reading.

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. Addedv2.5.10

TDQS

A4.9/5.0
Behavior5/5

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

Annotations only carry readOnlyHint=true, so the description bears the full burden — and it delivers massively: cost profile (O(database), two whole-database reads), the guarantee that findings are NOT filtered by agent_id/project_id, the cap semantics ('capped_kinds names every kind that had more (observed, not inferred from count == limit)'), the check_crashed fallback instead of failing the pull, and identity_shared behavior. The 'Read-only, never repairs' statement is consistent with readOnlyHint=true.

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 unusually long, but every sentence carries distinct operational information — cost, filtering, caps, crash handling, transport identity — and the core purpose is front-loaded in the first sentence. It is information-dense rather than padded; a slight trim would be possible, but nothing is wasted given the tool's genuinely complex behavior.

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 no output schema present, the description must document return semantics itself — and it names the essential fields (kind, severity with its value meanings, health_severity, check_crashed, findings, capped_kinds, total, per_kind_limit, summary, identity_shared, _meta.server_version). Combined with parameter semantics, cost, and filtering behavior, an agent has everything it needs to call this correctly on a complex tool.

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 already 100%, but the description adds substantial meaning beyond the schema: per_kind_limit's interaction with capped_kinds and the honesty caveat that total/counts describe only the returned set, session_key being 'a partition hint, not a filter' with identity_shared implications, and include_summary being described as a prose restatement you can skip to avoid paying for it. This goes well beyond the baseline 3 for fully-covered schemas.

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?

Opens with a specific verb+resource ('Pull the storage-integrity findings on demand') and immediately distinguishes itself from the sibling check_health ('instead of reading them off check_health'). The 'Same detector as check_health(fix=false) over the WHOLE database' line precisely situates it among siblings, so an agent cannot confuse it with check_health, deep_check, or the other tools.

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

Usage Guidelines5/5

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

Explicitly states when to use it vs the alternative: it is a pull contract meant to be invoked 'once a session', budgeted by call frequency, versus check_health for scoped repair ('scope a repair with check_health(agent_id=...)'). It also gives concrete invocation guidance like 'pass include_summary=false to skip paying for it' and explains why no cheap subset exists — leaving nothing to inference.

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

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/Cloto-dev/CPersona'

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