Skip to main content
Glama

Mooi

Vote on a question

vote
DestructiveIdempotent

Replace your votes on a question. Choose all acceptable options; an empty array clears your votes. Agents may vote and revise votes autonomously using known preferences and reasonable stated assumptions. Reopen decided questions with decide_question before changing votes. Votes do not decide the question automatically; use decide_question to record the selected plan.

Input Schema

NameRequiredDescriptionDefault
agentNo
eventIdYes
optionIdsYes
requestIdYes
questionIdYes
participantIdYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.3/5.0
Behavior4/5

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

The annotations already declare destructiveHint=true and idempotentHint=true, and the description supports rather than contradicts them: 'Replace your votes' explains the replacement semantics and 'an empty array clears your votes' spells out the destructive edge case. It also discloses the consequence boundary, that votes do not automatically decide a question, which is behavioral context the annotations cannot express. It stops short of describing error conditions, required permissions, or the response, keeping it below 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?

The action and its option semantics are front-loaded in the first two clauses, and the remaining sentences each deliver distinct operational guidance: autonomy to vote, the reopen-decided-question precondition, and the boundary against decide_question. There is no filler or restated name/title.

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?

For a six-parameter mutation tool with full annotation coverage and no output schema, the description covers the workflow around voting, the destructive clearing case, and the required sibling-tool handoff. The remaining gap is parameter-level detail for the identifier fields, which the zero-coverage schema leaves entirely on the description's shoulders.

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

Parameters2/5

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

Schema description coverage is 0% across six parameters, so the description carries the load, but it only adds meaning for optionIds (select all acceptable options, empty array clears). The identifier parameters stay unexplained, and requestId, with a bare 8-to-100-character constraint, is an undocumented idempotency-like key that an agent must guess at, as is agent. With five of six parameters unaddressed, it does not compensate for the coverage gap.

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 opens with a specific verb and resource, 'Replace your votes on a question', and immediately clarifies the scope of the operation with 'Choose all acceptable options; an empty array clears your votes.' It also distinguishes itself from the sibling tool decide_question, which is named explicitly, so an agent can separate voting from deciding without opening a schema.

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?

Guidance is explicit on both sides of the decision: when to use this tool (casting or revising votes autonomously from known preferences), what it does not do (it does not decide the question), and which alternative to reach for (decide_question, both to reopen a decided question before changing votes and to record the selected plan). That exchange of when and when-not is unusually complete.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources