mcp-proof / effect evidence

@modelcontextprotocol/server-memory@2026.8.31 (case study)

no effect-conformance failures observed
Observation boundary. Effects are read out-of-band via an out-of-band parse of the JSONL store into per-entity/per-relation objects (TableStateObserver adapter, ~20 lines), never from the tools' own responses. Authority and effectiveness come from a probe that exercises created objects: none — this service mints no credential-like object with a local authorization rule to exercise, so authority/effectiveness stay unknown and EFF-06 SKIPs (probe-backed classification remains validated on the controlled testbed, E2/E3). Dimensions no channel can establish are marked unknown and their checks SKIP — never a silent pass. This is a controlled measurement instrument; findings here are about the audited server, not production prevalence.
Calls observed10
Authority objects0

Effect-conformance checks

CheckLevelResultDetails
EFF-01MUST✓ PASS
readOnlyHint is honoured (no observed external write)
3 readOnly-annotated tool call(s) caused no observed external write
EFF-02MUST✓ PASS
observed deletes are consistent with destructiveHint (explicit false contradicted ⇒ fail; unset ⇒ spec default true)
all 2 observed deleted object(s) consistent with declared/default destructive semantics: 2 call(s) from tools declaring destructiveHint=true
EFF-03SHOULD✓ PASS
idempotentHint is honoured (a repeated identical call is a no-op)
1 repeated idempotent call(s) left external state unchanged
EFF-06SHOULD– SKIP
created authority does not outlive its authorizing grant
no created authority-bearing object to assess

Per-call effect ledger

Declared annotations beside the effect an independent observer saw, the response a response-only auditor would have read, the objects that resulted, and the probe's authority / dependency verdict.

CallDeclaredObserved effectResponse seen Objects / persistenceAuthority (probed)Lineage
create_entities
{"entities": [{"name": "ada", "entityType": "person", "observations": ["studies delegated authority"]}, {"name": "mcp-proof", "entityType": "project", "observations": ["audits MCP servers"]}]}
readOnlyHint=False, destructiveHint=False, idempotentHint=False, openWorldHint=Falsecreate observed
observed 2 change(s): create entities/ada, create entities/mcp-proof
[ { "name": "ada", "entityType": "person", …create entities/ada, create entities/mcp-proof
ephemeral
unknown unknown
probe inconclusive
by: —
needs: —
create_relations
{"relations": [{"from": "ada", "to": "mcp-proof", "relationType": "maintains"}]}
readOnlyHint=False, destructiveHint=False, idempotentHint=False, openWorldHint=Falsecreate observed
observed 1 change(s): create relations/ada→maintains→mcp-proof
[ { "from": "ada", "to": "mcp-proof", "rela…create relations/ada→maintains→mcp-proof
ephemeral
unknown unknown
probe inconclusive
by: —
needs: —
add_observations
{"observations": [{"entityName": "ada", "contents": ["probes tool-created authority"]}]}
readOnlyHint=False, destructiveHint=False, idempotentHint=False, openWorldHint=Falseupdate observed
observed 1 change(s): update entities/ada
[ { "entityName": "ada", "addedObservations": […update entities/ada
—
not authority observed
call created no object to bear authority
by: —
needs: —
read_graph
{}
readOnlyHint=True, destructiveHint=False, idempotentHint=True, openWorldHint=Falsenone observed
no external object changed between before/after snapshots
{ "entities": [ { "name": "ada", "entit…—
—
not authority observed
no object created
by: —
needs: —
search_nodes
{"query": "delegated"}
readOnlyHint=True, destructiveHint=False, idempotentHint=True, openWorldHint=Falsenone observed
no external object changed between before/after snapshots
{ "entities": [ { "name": "ada", "entit…—
—
not authority observed
no object created
by: —
needs: —
open_nodes
{"names": ["ada"]}
readOnlyHint=True, destructiveHint=False, idempotentHint=True, openWorldHint=Falsenone observed
no external object changed between before/after snapshots
{ "entities": [ { "name": "ada", "entit…—
—
not authority observed
no object created
by: —
needs: —
delete_observations
{"deletions": [{"entityName": "ada", "observations": ["probes tool-created authority"]}]}
readOnlyHint=False, destructiveHint=True, idempotentHint=True, openWorldHint=Falseupdate observed
observed 1 change(s): update entities/ada
Observations deleted successfullyupdate entities/ada
—
not authority observed
call created no object to bear authority
by: —
needs: —
delete_relations
{"relations": [{"from": "ada", "to": "mcp-proof", "relationType": "maintains"}]}
readOnlyHint=False, destructiveHint=True, idempotentHint=True, openWorldHint=Falsedelete observed
observed 1 change(s): delete relations/ada→maintains→mcp-proof
Relations deleted successfullydelete relations/ada→maintains→mcp-proof
—
not authority observed
call created no object to bear authority
by: —
needs: —
delete_entities
{"entityNames": ["mcp-proof"]}
readOnlyHint=False, destructiveHint=True, idempotentHint=True, openWorldHint=Falsedelete observed
observed 1 change(s): delete entities/mcp-proof
Entities deleted successfullydelete entities/mcp-proof
—
not authority observed
call created no object to bear authority
by: —
needs: —
delete_entities
{"entityNames": ["mcp-proof"]}
readOnlyHint=False, destructiveHint=True, idempotentHint=True, openWorldHint=Falsenone observed
no external object changed between before/after snapshots
Entities deleted successfully—
—
not authority observed
no object created
by: —
needs: —