Skip to main content
Glama

ris_bezirke

Search Austrian district authority announcements and ordinances from states like Niederösterreich, Tirol, and Vorarlberg to find official legal information and public notices.

Instructions

Search Austrian district administrative authority announcements (Kundmachungen der Bezirksverwaltungsbehörden).

Use this tool to find announcements and ordinances from district administrative authorities.

Note: Only certain states publish here: Niederösterreich, Oberösterreich, Tirol, Vorarlberg, Burgenland, Steiermark.

Example queries:

  • bundesland="Niederösterreich", suchworte="Bauordnung"

  • bezirksverwaltungsbehoerde="Bezirkshauptmannschaft Innsbruck"

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
suchworteNoFull-text search terms
titelNoSearch in titles
bundeslandNoFilter by state - Burgenland, Kärnten, Niederösterreich, Oberösterreich, Salzburg, Steiermark, Tirol, Vorarlberg, Wien
bezirksverwaltungsbehoerdeNoDistrict authority name (e.g., "Bezirkshauptmannschaft Innsbruck", "Bezirkshauptmannschaft Amstetten")
kundmachungsnummerNoAnnouncement number
kundmachungsdatum_vonNoAnnouncement date from (YYYY-MM-DD)
kundmachungsdatum_bisNoAnnouncement date to (YYYY-MM-DD)
im_ris_seitNoFilter by time in RIS
seiteNoPage number (default: 1)
limitNoResults per page 10/20/50/100 (default: 20)
response_formatNo"markdown" (default) or "json"markdown

Implementation Reference

  • Tool registration for 'ris_bezirke' within registerBezirkeTool.
    export function registerBezirkeTool(server: McpServer): void {
      server.tool(
        'ris_bezirke',
        `Search Austrian district administrative authority announcements (Kundmachungen der Bezirksverwaltungsbehörden).
    
    Use this tool to find announcements and ordinances from district administrative authorities.
    
    Note: Only certain states publish here: Niederösterreich, Oberösterreich, Tirol, Vorarlberg, Burgenland, Steiermark.
    
    Example queries:
      - bundesland="Niederösterreich", suchworte="Bauordnung"
      - bezirksverwaltungsbehoerde="Bezirkshauptmannschaft Innsbruck"`,
        {
          suchworte: z.string().max(1000).optional().describe('Full-text search terms'),
          titel: z.string().max(500).optional().describe('Search in titles'),
          bundesland: BundeslandSchema.optional().describe(
            'Filter by state - Burgenland, Kärnten, Niederösterreich, Oberösterreich, Salzburg, Steiermark, Tirol, Vorarlberg, Wien',
          ),
          bezirksverwaltungsbehoerde: z
            .string()
            .max(200)
            .optional()
            .describe(
              'District authority name (e.g., "Bezirkshauptmannschaft Innsbruck", "Bezirkshauptmannschaft Amstetten")',
            ),
          kundmachungsnummer: z.string().max(100).optional().describe('Announcement number'),
          kundmachungsdatum_von: DateSchema.optional().describe('Announcement date from (YYYY-MM-DD)'),
          kundmachungsdatum_bis: DateSchema.optional().describe('Announcement date to (YYYY-MM-DD)'),
          im_ris_seit: z.enum(IM_RIS_SEIT_VALUES).optional().describe('Filter by time in RIS'),
          seite: z.number().default(1).describe('Page number (default: 1)'),
          limit: z.number().default(20).describe('Results per page 10/20/50/100 (default: 20)'),
          response_format: z
            .enum(['markdown', 'json'])
            .default('markdown')
            .describe('"markdown" (default) or "json"'),
        },
        async (args) => {
          const {
            suchworte,
            titel,
            bundesland,
            bezirksverwaltungsbehoerde,
            kundmachungsnummer,
            kundmachungsdatum_von,
            kundmachungsdatum_bis,
            im_ris_seit,
            seite,
            limit,
            response_format,
          } = args;
    
          if (
            !hasAnyParam(args, [
              'suchworte',
              'titel',
              'bundesland',
              'bezirksverwaltungsbehoerde',
              'kundmachungsnummer',
            ])
          ) {
            return createValidationErrorResponse([
              'suchworte` für Volltextsuche',
              'titel` für Titelsuche',
              'bundesland` für Bundesland',
              'bezirksverwaltungsbehoerde` für Bezirksverwaltungsbehörde',
              'kundmachungsnummer` für Kundmachungsnummer',
            ]);
          }
    
          const params = buildBaseParams('Bvb', limit, seite);
          addOptionalParams(params, [
            [suchworte, 'Suchworte'],
            [titel, 'Titel'],
            [bundesland, 'Bundesland'],
            [bezirksverwaltungsbehoerde, 'Bezirksverwaltungsbehoerde'],
            [kundmachungsnummer, 'Kundmachungsnummer'],
            [kundmachungsdatum_von, 'Kundmachungsdatum.Von'],
            [kundmachungsdatum_bis, 'Kundmachungsdatum.Bis'],
            [im_ris_seit, 'ImRisSeit'],
          ]);
    
          return executeSearchTool(searchBezirke, params, response_format);
        },
      );
    }
  • Handler function for 'ris_bezirke' which processes arguments, performs validation, and executes the search.
    async (args) => {
      const {
        suchworte,
        titel,
        bundesland,
        bezirksverwaltungsbehoerde,
        kundmachungsnummer,
        kundmachungsdatum_von,
        kundmachungsdatum_bis,
        im_ris_seit,
        seite,
        limit,
        response_format,
      } = args;
    
      if (
        !hasAnyParam(args, [
          'suchworte',
          'titel',
          'bundesland',
          'bezirksverwaltungsbehoerde',
          'kundmachungsnummer',
        ])
      ) {
        return createValidationErrorResponse([
          'suchworte` für Volltextsuche',
          'titel` für Titelsuche',
          'bundesland` für Bundesland',
          'bezirksverwaltungsbehoerde` für Bezirksverwaltungsbehörde',
          'kundmachungsnummer` für Kundmachungsnummer',
        ]);
      }
    
      const params = buildBaseParams('Bvb', limit, seite);
      addOptionalParams(params, [
        [suchworte, 'Suchworte'],
        [titel, 'Titel'],
        [bundesland, 'Bundesland'],
        [bezirksverwaltungsbehoerde, 'Bezirksverwaltungsbehoerde'],
        [kundmachungsnummer, 'Kundmachungsnummer'],
        [kundmachungsdatum_von, 'Kundmachungsdatum.Von'],
        [kundmachungsdatum_bis, 'Kundmachungsdatum.Bis'],
        [im_ris_seit, 'ImRisSeit'],
      ]);
    
      return executeSearchTool(searchBezirke, params, response_format);
    },
  • Input parameter schema validation using Zod for the 'ris_bezirke' tool.
    {
      suchworte: z.string().max(1000).optional().describe('Full-text search terms'),
      titel: z.string().max(500).optional().describe('Search in titles'),
      bundesland: BundeslandSchema.optional().describe(
        'Filter by state - Burgenland, Kärnten, Niederösterreich, Oberösterreich, Salzburg, Steiermark, Tirol, Vorarlberg, Wien',
      ),
      bezirksverwaltungsbehoerde: z
        .string()
        .max(200)
        .optional()
        .describe(
          'District authority name (e.g., "Bezirkshauptmannschaft Innsbruck", "Bezirkshauptmannschaft Amstetten")',
        ),
      kundmachungsnummer: z.string().max(100).optional().describe('Announcement number'),
      kundmachungsdatum_von: DateSchema.optional().describe('Announcement date from (YYYY-MM-DD)'),
      kundmachungsdatum_bis: DateSchema.optional().describe('Announcement date to (YYYY-MM-DD)'),
      im_ris_seit: z.enum(IM_RIS_SEIT_VALUES).optional().describe('Filter by time in RIS'),
      seite: z.number().default(1).describe('Page number (default: 1)'),
      limit: z.number().default(20).describe('Results per page 10/20/50/100 (default: 20)'),
      response_format: z
        .enum(['markdown', 'json'])
        .default('markdown')
        .describe('"markdown" (default) or "json"'),
    },

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/philrox/ris-mcp-ts'

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