Skip to main content
Glama

switzerland-parliament-mcp-server

Chparl Search Transcripts

chparl_search_transcripts
Read-onlyIdempotent

Find Amtliches Bulletin passages by business, debate subject, speaker, session, council, or inclusive meeting dates. Supply at least a business, subject, speaker, session, or date bound. A text substring query additionally requires sessionId or a closed date range of at most 31 calendar days. Searches return metadata by default; includeText returns whole original passages, and an exact transcriptId defaults to full text. Metadata language never translates the speaker text; missing LanguageOfText remains unknown. Business searches cover every associated subject up to 20; larger debates require selecting subjectId through chparl_get_business section subjects. Follow nextOffset with unchanged filters.

Input Schema

NameRequiredDescriptionDefault
limitNoSearch page request: metadata default 20/max 100, full text default 3/max 10; clamped with notice. Incompatible with transcriptId.
queryNoOne original-text substring; requires sessionId or both dates spanning at most 31 inclusive calendar days.
dateToNoInclusive meeting-day upper bound, YYYY-MM-DD.
offsetNoSearch starting row offset, default zero; use returned nextOffset. Incompatible with transcriptId.
councilNoN or S; exact German, French, and Italian council names are also accepted.
dateFromNoInclusive meeting-day lower bound, YYYY-MM-DD.
languageNoMetadata language: de (default), fr, or it; original passage text stays in its published language.de
sessionIdNoExact positive decimal session identifier from chparl_list_reference topic sessions.
subjectIdNoPositive Int64 debate IdSubject string; incompatible with businessId and transcriptId.
businessIdNoCanonical eight-digit businessId from chparl_search_business or published short number; incompatible with subjectId and transcriptId.
includeTextNoReturn whole original text and references; defaults true for transcriptId and false for searches. Explicit false always wins.
personNumberNoExact speaker PersonNumber from chparl_search_members, distinct from Person.ID.
transcriptIdNoExact positive Int64 transcriptId from a previous chparl_search_transcripts result; only language and includeText may accompany it.

Output Schema

NameRequiredDescriptionDefault
errorNoPresent when the call failed. Absent on success.
foundNoExact-ID mode only: whether the selected passage exists.
noticeNoCombined clamp, whole-item fitting, empty-result, or indivisible-record guidance.
hasMoreNoWhether passages remain after the delivered search page; absent in exact-ID mode.
guidanceNoHow to discover a valid exact passage or missing business identifier.
nextOffsetNoOriginal offset plus actually delivered passages, when more remain.
provenanceNoAttribution, publication status, and source download dates.
scopeFoundNoBusiness searches only: whether the business exists, independently of published subjects or passages.
totalCountNoExact whole-scope passage count when supplied; absent when a business does not exist.
transcriptsNoWhole matching passages or zero-or-one exact-ID result, without shortening original fields.
returnedCountNoPassages actually delivered on a search page; absent in exact-ID mode.
effectiveLimitNoSearch page size after metadata or full-text clamping.
effectiveFiltersNoEffective passage filters, disclosure mode, and applicable paging defaults.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already establish read-only, idempotent, open-world behavior, so the bar is lower; the description adds the return-mode behavior that annotations cannot express: metadata by default, full original passages with includeText, and full text when transcriptId is supplied. It also discloses the language caveat that metadata language never translates speaker text and that missing LanguageOfText stays unknown. It says nothing about failure modes or rate behavior, so not 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.

Conciseness4/5

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

Four sentences, front-loaded with purpose and the admission constraint before secondary details like the 20-subject cap and pagination. Some clauses are densely packed and slightly cryptic ('missing LanguageOfText remains unknown'), but no sentence is filler.

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 13-parameter, zero-required tool with complex conditional constraints, the description covers admission rules, text-search preconditions, output-shape toggles, language caveats, and pagination. Return field details are rightly left to the output schema. Only error/edge behavior is unaddressed.

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

Parameters4/5

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

Schema coverage is 100%, so baseline is 3; the description earns above baseline by articulating a one-of constraint the schema does not encode (required: 0) — at least one of business, subject, speaker, session, or date bound — and by pairing query with the 31-day window. It also flags the includeText default inversion for transcriptId, though much of that is duplicated in the schema.

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 first sentence names a specific verb (Find) and resource (Amtliches Bulletin passages) plus the full set of filterable dimensions, so the agent knows exactly what this returns. It is clearly distinguishable from siblings such as chparl_search_business or chparl_get_votes, which are not about retrieving passage text.

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?

It states the minimum viable call ('Supply at least a business, subject, speaker, session, or date bound'), the extra precondition for text queries (sessionId or a closed range of at most 31 calendar days), and a concrete alternative path (select subjectId via chparl_get_business when a business has more than 20 subjects). It also closes the loop on follow-up calls ('Follow nextOffset with unchanged filters').

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.