Skip to main content
Glama

ris_landesgesetzblatt

Search official Austrian state law gazettes (Landesgesetzblatt) to find provincial legislation across all 9 federal states using gazette numbers, years, states, or keywords.

Instructions

Search Austrian State Law Gazettes (Landesgesetzblatt).

Use this tool to find official publications of state/provincial laws. Covers all 9 federal states (Bundeslaender).

Example queries:

  • lgblnummer="50", jahrgang="2023", bundesland="Wien"

  • suchworte="Bauordnung", bundesland="Salzburg"

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
lgblnummerNoGazette number (e.g., "50")
jahrgangNoYear (e.g., "2023")
bundeslandNoFilter by state - Wien, Niederoesterreich, Oberoesterreich, Salzburg, Tirol, Vorarlberg, Kaernten, Steiermark, Burgenland
suchworteNoFull-text search terms
titelNoSearch in gazette titles
applikationNo"LgblAuth" (authentic, default), "Lgbl" (general), "LgblNO" (Lower Austria)LgblAuth
seiteNoPage number (default: 1)
limitNoResults per page 10/20/50/100 (default: 20)
response_formatNo"markdown" (default) or "json"markdown

Implementation Reference

  • The handler function that processes the arguments, validates input, prepares parameters, and executes the search using `executeSearchTool`.
    async (args) => {
      const {
        lgblnummer,
        jahrgang,
        bundesland,
        suchworte,
        titel,
        applikation,
        seite,
        limit,
        response_format,
      } = args;
    
      if (!hasAnyParam(args, ['lgblnummer', 'jahrgang', 'bundesland', 'suchworte', 'titel'])) {
        return createValidationErrorResponse([
          'lgblnummer` fuer Gesetzblatt-Nummer',
          'jahrgang` fuer Jahr',
          'bundesland` fuer Bundesland',
          'suchworte` fuer Volltextsuche',
          'titel` fuer Suche in Titeln',
        ]);
      }
    
      const params = buildBaseParams(applikation, limit, seite);
      addOptionalParams(params, [
        [lgblnummer, 'Lgblnummer'],
        [jahrgang, 'Jahrgang'],
        [suchworte, 'Suchworte'],
        [titel, 'Titel'],
      ]);
    
      if (bundesland) {
        const apiKey = BUNDESLAND_MAPPING[bundesland];
        if (apiKey) {
          params[`Bundesland.${apiKey}`] = 'true';
        }
      }
    
      return executeSearchTool(searchLandesrecht, params, response_format);
    },
  • The registration function `registerLandesgesetzblattTool` which registers the `ris_landesgesetzblatt` tool with the MCP server.
    export function registerLandesgesetzblattTool(server: McpServer): void {
      server.tool(
        'ris_landesgesetzblatt',
        `Search Austrian State Law Gazettes (Landesgesetzblatt).
    
    Use this tool to find official publications of state/provincial laws.
    Covers all 9 federal states (Bundeslaender).
    
    Example queries:
      - lgblnummer="50", jahrgang="2023", bundesland="Wien"
      - suchworte="Bauordnung", bundesland="Salzburg"`,
        {
          lgblnummer: z.string().max(100).optional().describe('Gazette number (e.g., "50")'),
          jahrgang: z.string().max(10).optional().describe('Year (e.g., "2023")'),
          bundesland: LandesrechtBundeslandSchema.optional().describe(
            'Filter by state - Wien, Niederoesterreich, Oberoesterreich, Salzburg, Tirol, Vorarlberg, Kaernten, Steiermark, Burgenland',
          ),
          suchworte: z.string().max(1000).optional().describe('Full-text search terms'),
          titel: z.string().max(500).optional().describe('Search in gazette titles'),
          applikation: z
            .enum(['LgblAuth', 'Lgbl', 'LgblNO'])
            .default('LgblAuth')
            .describe('"LgblAuth" (authentic, default), "Lgbl" (general), "LgblNO" (Lower Austria)'),
          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 {
            lgblnummer,
            jahrgang,
            bundesland,
            suchworte,
            titel,
            applikation,
            seite,
            limit,
            response_format,
          } = args;
    
          if (!hasAnyParam(args, ['lgblnummer', 'jahrgang', 'bundesland', 'suchworte', 'titel'])) {
            return createValidationErrorResponse([
              'lgblnummer` fuer Gesetzblatt-Nummer',
              'jahrgang` fuer Jahr',
              'bundesland` fuer Bundesland',
              'suchworte` fuer Volltextsuche',
              'titel` fuer Suche in Titeln',
            ]);
          }
    
          const params = buildBaseParams(applikation, limit, seite);
          addOptionalParams(params, [
            [lgblnummer, 'Lgblnummer'],
            [jahrgang, 'Jahrgang'],
            [suchworte, 'Suchworte'],
            [titel, 'Titel'],
          ]);
    
          if (bundesland) {
            const apiKey = BUNDESLAND_MAPPING[bundesland];
            if (apiKey) {
              params[`Bundesland.${apiKey}`] = 'true';
            }
          }
    
          return executeSearchTool(searchLandesrecht, params, response_format);
        },
      );
    }
  • Zod schema defining the input parameters for the `ris_landesgesetzblatt` tool.
    {
      lgblnummer: z.string().max(100).optional().describe('Gazette number (e.g., "50")'),
      jahrgang: z.string().max(10).optional().describe('Year (e.g., "2023")'),
      bundesland: LandesrechtBundeslandSchema.optional().describe(
        'Filter by state - Wien, Niederoesterreich, Oberoesterreich, Salzburg, Tirol, Vorarlberg, Kaernten, Steiermark, Burgenland',
      ),
      suchworte: z.string().max(1000).optional().describe('Full-text search terms'),
      titel: z.string().max(500).optional().describe('Search in gazette titles'),
      applikation: z
        .enum(['LgblAuth', 'Lgbl', 'LgblNO'])
        .default('LgblAuth')
        .describe('"LgblAuth" (authentic, default), "Lgbl" (general), "LgblNO" (Lower Austria)'),
      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