Skip to main content
Glama

get_committee_meetings

Retrieve Swiss parliament committee meeting schedules. Filter by committee group ID and set result limits to find specific meeting information.

Instructions

Get Swiss parliament committee/commission meeting schedule. Optionally filter by committee group ID.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
group_idNoCommittee group ID to filter (optional — omit for all committees)
limitNoMax meetings to return (default: 5, max: 20)

Implementation Reference

  • The implementation of the getCommitteeMeetings function which fetches and formats committee meeting data.
    async function getCommitteeMeetings(args: {
      group_id?: number;
      limit?: number;
    }): Promise<string> {
      const limit = Math.min(args.limit ?? 5, 20);
      const params: Record<string, string | number | boolean | undefined> = {
        body_key: "CHE",
        type: "meeting",
        sort_by: "-begin_date",
        lang: "de",
        lang_format: "flat",
        limit,
      };
      if (args.group_id !== undefined) {
        params.group_id = args.group_id;
      }
    
      const url = buildUrl("/meetings/", params);
      const resp = await apiFetch<MeetingRecord>(url);
    
      const meetings = resp.data.map((m) => ({
        id: m.id,
        name: m.name_de,
        date: m.begin_date ? m.begin_date.split("T")[0] : null,
        endDate: m.end_date ? m.end_date.split("T")[0] : null,
        state: m.state,
        groupId: m.group_id,
        url: m.url_external_de,
      }));
    
      return truncate(
        JSON.stringify({
          count: meetings.length,
          total: resp.meta.total_records,
          meetings,
        })
      );
    }
  • The registration and schema definition for the get_committee_meetings tool.
    {
      name: "get_committee_meetings",
      description:
        "Get Swiss parliament committee/commission meeting schedule. Optionally filter by committee group ID.",
      inputSchema: {
        type: "object" as const,
        properties: {
          group_id: {
            type: "number",
            description:
              "Committee group ID to filter (optional — omit for all committees)",
          },
          limit: {
            type: "number",
            description: "Max meetings to return (default: 5, max: 20)",
          },
        },
      },
    },
  • The dispatcher case that maps the get_committee_meetings tool name to its handler function.
    case "get_committee_meetings":
      return getCommitteeMeetings(
        args as { group_id?: number; limit?: number }
      );

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/vikramgorla/mcp-swiss'

If you have feedback or need assistance with the MCP directory API, please join our Discord server