Skip to main content
Glama

sweden-parliament-mcp-server

Read parliamentary main votes

riksdag_get_votes
Read-onlyIdempotent

Read authoritative report decisions and party main-vote groups separated by avser, or a member’s session main votes. Report mode requires report or documentId; ballots true with an explicit point adds individual member ballots and independent ballotPage continuation. Member mode requires memberId. Follow complete local continuation calls. Main votes do not include every ballot round; empty rows never prove acclamation.

Input Schema

NameRequiredDescriptionDefault
modeYesReport decision points or one member’s session main votes.
limitNoMember or report-ballot requested rows; default 20, applied maximum 500.
partyNoMember-mode local party filter; report party groups are always complete.
pointNoOne authoritative report point; omit to traverse all points.
offsetNoMember or explicit report-ballot local row offset; default 0.
reportNoReport designation or session:designation; report mode only.
ballotsNoReport mode only: include individual ballots for an explicit point; default false.
sessionYesRequired parliamentary session, for example 2024/25.
memberIdNoRequired in member mode: numeric memberId from riksdag_search_members, including leading zeros.
revisionNoReturned complete-candidate or report-catalog revision for consistent continuation.
documentIdNoReport mode: documentId from riksdag_search_documents with documentType bet; alternative to report.
pointLimitNoAll-points report page size; default 5, applied maximum 10.
pointOffsetNoAll-points report local offset; default 0.
ballotRevisionNoReturned ballot-page revision for consistent report-ballot continuation.

Output Schema

NameRequiredDescriptionDefault
modeNoApplied workflow.
errorNoPresent when the call failed. Absent on success.
foundNoWhether the selected report or member-vote selection is available; empty member rows remain a successful selection.
limitNoApplied member row limit after fitting.
partyNoApplied member-mode party filter.
votesNoWhole member or explicit report-point main ballots after local pagination.
offsetNoApplied member row offset.
pointsNoWhole report points with every party aggregate and complete decision evidence.
reportNoNormalized report designation.
sourceNoRequired attribution to the Swedish Parliament.
hasMoreNoMore whole rows or report points remain.
noticesNoAll applicable notices, including an empty list.
sessionNoNormalized parliamentary session.
guidanceNoHow to resolve a missing report.
memberIdNoNormalized member ID, preserving leading zeros.
nextCallNoComplete continuation advancing by actual returned entries.
revisionNoHash of complete normalized candidates or authoritative point catalog.
truncatedNoResponse fitting shortened the requested local page.
ballotPageNoIndependent ballot pagination; report-point counts and revision retain their meanings.
documentIdNoAuthoritative report document ID.
pointLimitNoApplied report-point limit after measured fitting.
totalCountNoExact filtered member-vote total or selected report-point total.
pointOffsetNoApplied report-point offset.
retrievedAtNoSource fetch time, retained unchanged on cache hits.
returnedCountNoActual returned whole rows or points.
upstreamQueryNoUpstream query echo; not proof that a filter was applied.
candidateCountNoComplete validated member/session candidate count, optionally narrowed upstream by party, before local filtering.
effectiveQueryNoDeterministic normalized input, applied defaults and local filters.
requestedLimitNoOriginal requested member row limit.
pointTotalCountNoExact complete authoritative report-point catalog count.
upstreamWarningsNoWarnings supplied by the source.
requestedPointLimitNoOriginal requested report-point limit.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.2/5.0
Behavior4/5

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

The annotations already establish a safe, idempotent read, while the description adds important behavioral caveats: report party groups are complete, continuation calls must be followed, and empty vote rows do not prove acclamation. It also warns that main votes do not include every ballot round, which is material context beyond the annotations.

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 dense but front-loaded, starting with the core resource and then covering mode requirements and caveats. It remains appropriately sized for a 14-parameter tool, though the mode-specific clauses are packed tightly into a single paragraph.

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 annotations, a full input schema, and an output schema present, the description supplies the remaining decision-critical context: mode requirements, ballot behavior, continuation expectations, and vote completeness limitations. Nothing essential for correct invocation appears to be missing.

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%, so the schema already documents all 14 parameters in detail. The description reinforces key requirements and continuation behavior but does not add substantial parameter semantics beyond what the schema field descriptions provide.

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 states a specific verb-resource pair: reading authoritative report decisions, party main-vote groups, or a member’s session main votes. It also clearly separates the two supported modes, so an agent can distinguish this tool from document, member, and speech search siblings.

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?

It gives concrete mode requirements: report mode needs report or documentId, member mode needs memberId, and individual ballots require ballots=true with an explicit point. It does not explicitly compare against sibling tools, but the mode-specific use conditions are otherwise clear.

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.