Skip to main content
Glama

Read an on-chain Snapshot X proposal

snapshot_x_proposal
Read-only

Read a Snapshot X proposal from its space contract to check status, For/Against/Abstain tally, Safe voting power, prior votes, and cancellation rights before voting or confirming outcomes.

Instructions

Reads a Snapshot X (snapshot.box) proposal straight from its space contract: live status, the running For/Against/Abstain tally, the Safe's voting power at the proposal's snapshot block, whether the Safe already voted, and whether this Safe is the space controller that could cancel it. Use it before snapshot_x_vote or snapshot_x_cancel_proposal, and again afterwards to confirm the vote landed or the proposal shows Cancelled.

Input Schema

NameRequiredDescriptionDefault
spaceYesThe Snapshot X space: a space contract address, a prefixed id like "eth:0x594E…", or a full snapshot.box proposal URL (in which case proposalId can be omitted).
proposalIdNoThe proposal number, e.g. 3. Not needed when the space is a proposal URL.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, so safety is covered; the description adds meaningful behavior beyond that, namely that data is read on-chain from the space contract, that voting power is evaluated at the proposal's snapshot block, and that Safe-specific state (already voted, is space controller) is included. It says nothing about RPC failures or staleness of 'live status', which keeps it from a 5.

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

Conciseness5/5

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

Two sentences, front-loaded with the verb and source, then the returned data, then the workflow. Every clause carries information an agent would otherwise have to infer.

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?

No output schema exists, and the description compensates by listing the returned fields (status, tally, snapshot-block voting power, voted flag, controller flag). Combined with the schema's parameter documentation and the read-only annotations, an agent has everything needed to call and interpret this tool.

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

Parameters3/5

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

Schema description coverage is 100% and both parameters are documented in the schema, including the address / prefixed-id / URL forms of `space` and the URL-implies-no-proposalId rule. The description only echoes 'from its space contract' and adds no syntax or format detail beyond the schema, so baseline 3 applies.

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 ('Reads a Snapshot X (snapshot.box) proposal straight from its space contract') and enumerates exactly what information comes back, so the agent knows the payload without opening a schema. It distinguishes itself functionally from the write siblings it names, but never explicitly contrasts with the confusable read siblings snapshot_get_proposal / snapshot_query.

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 a concrete call sequence: use before snapshot_x_vote or snapshot_x_cancel_proposal, and again afterwards to confirm the vote landed or the proposal shows Cancelled. That is real when-to-use guidance, though there are no exclusions and no routing advice against the other proposal-reading tools.

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