ris-mcp-ts 1.1.2 → 1.2.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (71) hide show
  1. package/README.md +39 -13
  2. package/dist/client.d.ts +22 -0
  3. package/dist/client.d.ts.map +1 -1
  4. package/dist/client.js +124 -57
  5. package/dist/client.js.map +1 -1
  6. package/dist/constants.d.ts +12 -1
  7. package/dist/constants.d.ts.map +1 -1
  8. package/dist/constants.js +57 -0
  9. package/dist/constants.js.map +1 -1
  10. package/dist/formatting.d.ts.map +1 -1
  11. package/dist/formatting.js +33 -2
  12. package/dist/formatting.js.map +1 -1
  13. package/dist/http.d.ts +20 -1
  14. package/dist/http.d.ts.map +1 -1
  15. package/dist/http.js +106 -11
  16. package/dist/http.js.map +1 -1
  17. package/dist/index.js +0 -0
  18. package/dist/parser.d.ts.map +1 -1
  19. package/dist/parser.js +41 -4
  20. package/dist/parser.js.map +1 -1
  21. package/dist/server.d.ts.map +1 -1
  22. package/dist/server.js +2 -1
  23. package/dist/server.js.map +1 -1
  24. package/dist/tools/bezirke.d.ts.map +1 -1
  25. package/dist/tools/bezirke.js +26 -21
  26. package/dist/tools/bezirke.js.map +1 -1
  27. package/dist/tools/bundesgesetzblatt.d.ts.map +1 -1
  28. package/dist/tools/bundesgesetzblatt.js +26 -20
  29. package/dist/tools/bundesgesetzblatt.js.map +1 -1
  30. package/dist/tools/bundesrecht.d.ts +20 -0
  31. package/dist/tools/bundesrecht.d.ts.map +1 -1
  32. package/dist/tools/bundesrecht.js +77 -39
  33. package/dist/tools/bundesrecht.js.map +1 -1
  34. package/dist/tools/dokument.d.ts.map +1 -1
  35. package/dist/tools/dokument.js +52 -123
  36. package/dist/tools/dokument.js.map +1 -1
  37. package/dist/tools/gemeinden.d.ts.map +1 -1
  38. package/dist/tools/gemeinden.js +68 -51
  39. package/dist/tools/gemeinden.js.map +1 -1
  40. package/dist/tools/history.d.ts.map +1 -1
  41. package/dist/tools/history.js +26 -21
  42. package/dist/tools/history.js.map +1 -1
  43. package/dist/tools/judikatur.d.ts +27 -0
  44. package/dist/tools/judikatur.d.ts.map +1 -1
  45. package/dist/tools/judikatur.js +108 -25
  46. package/dist/tools/judikatur.js.map +1 -1
  47. package/dist/tools/landesgesetzblatt.d.ts.map +1 -1
  48. package/dist/tools/landesgesetzblatt.js +23 -18
  49. package/dist/tools/landesgesetzblatt.js.map +1 -1
  50. package/dist/tools/landesrecht.d.ts +20 -0
  51. package/dist/tools/landesrecht.d.ts.map +1 -1
  52. package/dist/tools/landesrecht.js +80 -29
  53. package/dist/tools/landesrecht.js.map +1 -1
  54. package/dist/tools/regierungsvorlagen.d.ts.map +1 -1
  55. package/dist/tools/regierungsvorlagen.js +56 -51
  56. package/dist/tools/regierungsvorlagen.js.map +1 -1
  57. package/dist/tools/sonstige.d.ts.map +1 -1
  58. package/dist/tools/sonstige.js +94 -89
  59. package/dist/tools/sonstige.js.map +1 -1
  60. package/dist/tools/verordnungen.d.ts.map +1 -1
  61. package/dist/tools/verordnungen.js +23 -18
  62. package/dist/tools/verordnungen.js.map +1 -1
  63. package/dist/types.d.ts +104 -19
  64. package/dist/types.d.ts.map +1 -1
  65. package/dist/types.js +45 -1
  66. package/dist/types.js.map +1 -1
  67. package/dist/version.d.ts +13 -0
  68. package/dist/version.d.ts.map +1 -0
  69. package/dist/version.js +15 -0
  70. package/dist/version.js.map +1 -0
  71. package/package.json +41 -25
@@ -4,33 +4,39 @@
4
4
  import { z } from 'zod';
5
5
  import { searchBundesrecht } from '../client.js';
6
6
  import { addOptionalParams, buildBaseParams, createValidationErrorResponse, executeSearchTool, hasAnyParam, } from '../helpers.js';
7
+ import { LimitSchema, SeiteSchema } from '../types.js';
7
8
  export function registerBundesgesetzblattTool(server) {
8
- server.tool('ris_bundesgesetzblatt', `Search Austrian Federal Law Gazettes (Bundesgesetzblatt).
9
+ server.registerTool('ris_bundesgesetzblatt', {
10
+ title: 'Bundesgesetzblatt durchsuchen',
11
+ description: `Search Austrian Federal Law Gazettes (Bundesgesetzblatt).
9
12
 
10
13
  Use this tool for historical research and tracking when laws were enacted.
11
14
  Contains official publications of federal laws, ordinances, and treaties.
12
15
 
13
16
  Example queries:
14
17
  - bgblnummer="120", jahrgang="2023", teil="1" -> Find specific gazette
15
- - suchworte="Klimaschutz" -> Full-text search in gazettes`, {
16
- bgblnummer: z.string().max(100).optional().describe('Gazette number (e.g., "120")'),
17
- teil: z
18
- .enum(['1', '2', '3'])
19
- .optional()
20
- .describe('Part - "1" (I=Laws), "2" (II=Ordinances), "3" (III=Treaties)'),
21
- jahrgang: z.string().max(10).optional().describe('Year (e.g., "2023")'),
22
- suchworte: z.string().max(1000).optional().describe('Full-text search terms'),
23
- titel: z.string().max(500).optional().describe('Search in gazette titles'),
24
- applikation: z
25
- .enum(['BgblAuth', 'BgblPdf', 'BgblAlt'])
26
- .default('BgblAuth')
27
- .describe('"BgblAuth" (authentic 2004+, default), "BgblPdf" (PDF), "BgblAlt" (1945-2003)'),
28
- seite: z.number().default(1).describe('Page number (default: 1)'),
29
- limit: z.number().default(20).describe('Results per page 10/20/50/100 (default: 20)'),
30
- response_format: z
31
- .enum(['markdown', 'json'])
32
- .default('markdown')
33
- .describe('"markdown" (default) or "json"'),
18
+ - suchworte="Klimaschutz" -> Full-text search in gazettes`,
19
+ inputSchema: {
20
+ bgblnummer: z.string().max(100).optional().describe('Gazette number (e.g., "120")'),
21
+ teil: z
22
+ .enum(['1', '2', '3'])
23
+ .optional()
24
+ .describe('Part - "1" (I=Laws), "2" (II=Ordinances), "3" (III=Treaties)'),
25
+ jahrgang: z.string().max(10).optional().describe('Year (e.g., "2023")'),
26
+ suchworte: z.string().max(1000).optional().describe('Full-text search terms'),
27
+ titel: z.string().max(500).optional().describe('Search in gazette titles'),
28
+ applikation: z
29
+ .enum(['BgblAuth', 'BgblPdf', 'BgblAlt'])
30
+ .default('BgblAuth')
31
+ .describe('"BgblAuth" (authentic 2004+, default), "BgblPdf" (PDF), "BgblAlt" (1945-2003)'),
32
+ seite: SeiteSchema.describe('Page number (default: 1)'),
33
+ limit: LimitSchema.describe('Results per page: 10, 20, 50, or 100 (default: 20)'),
34
+ response_format: z
35
+ .enum(['markdown', 'json'])
36
+ .default('markdown')
37
+ .describe('"markdown" (default) or "json"'),
38
+ },
39
+ annotations: { readOnlyHint: true, openWorldHint: true },
34
40
  }, async (args) => {
35
41
  const { bgblnummer, teil, jahrgang, suchworte, titel, applikation, seite, limit, response_format, } = args;
36
42
  if (!hasAnyParam(args, ['bgblnummer', 'jahrgang', 'suchworte', 'titel'])) {
@@ -1 +1 @@
1
- {"version":3,"file":"bundesgesetzblatt.js","sourceRoot":"","sources":["../../src/tools/bundesgesetzblatt.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,6BAA6B,EAC7B,iBAAiB,EACjB,WAAW,GACZ,MAAM,eAAe,CAAC;AAEvB,MAAM,UAAU,6BAA6B,CAAC,MAAiB;IAC7D,MAAM,CAAC,IAAI,CACT,uBAAuB,EACvB;;;;;;;4DAOwD,EACxD;QACE,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;QACnF,IAAI,EAAE,CAAC;aACJ,IAAI,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;aACrB,QAAQ,EAAE;aACV,QAAQ,CAAC,8DAA8D,CAAC;QAC3E,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qBAAqB,CAAC;QACvE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;QAC7E,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0BAA0B,CAAC;QAC1E,WAAW,EAAE,CAAC;aACX,IAAI,CAAC,CAAC,UAAU,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;aACxC,OAAO,CAAC,UAAU,CAAC;aACnB,QAAQ,CAAC,+EAA+E,CAAC;QAC5F,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,0BAA0B,CAAC;QACjE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,6CAA6C,CAAC;QACrF,eAAe,EAAE,CAAC;aACf,IAAI,CAAC,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;aAC1B,OAAO,CAAC,UAAU,CAAC;aACnB,QAAQ,CAAC,gCAAgC,CAAC;KAC9C,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;QACb,MAAM,EACJ,UAAU,EACV,IAAI,EACJ,QAAQ,EACR,SAAS,EACT,KAAK,EACL,WAAW,EACX,KAAK,EACL,KAAK,EACL,eAAe,GAChB,GAAG,IAAI,CAAC;QAET,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC;YACzE,OAAO,6BAA6B,CAAC;gBACnC,qCAAqC;gBACrC,qBAAqB;gBACrB,+BAA+B;gBAC/B,6BAA6B;aAC9B,CAAC,CAAC;QACL,CAAC;QAED,MAAM,MAAM,GAAG,eAAe,CAAC,WAAW,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QAC1D,iBAAiB,CAAC,MAAM,EAAE;YACxB,CAAC,UAAU,EAAE,YAAY,CAAC;YAC1B,CAAC,IAAI,EAAE,MAAM,CAAC;YACd,CAAC,QAAQ,EAAE,UAAU,CAAC;YACtB,CAAC,SAAS,EAAE,WAAW,CAAC;YACxB,CAAC,KAAK,EAAE,OAAO,CAAC;SACjB,CAAC,CAAC;QAEH,OAAO,iBAAiB,CAAC,iBAAiB,EAAE,MAAM,EAAE,eAAe,CAAC,CAAC;IACvE,CAAC,CACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"bundesgesetzblatt.js","sourceRoot":"","sources":["../../src/tools/bundesgesetzblatt.ts"],"names":[],"mappings":"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"}
@@ -2,5 +2,25 @@
2
2
  * Tool: ris_bundesrecht — Search Austrian federal laws (Bundesrecht).
3
3
  */
4
4
  import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
5
+ /** Resolved arguments for building Bundesrecht API params (after Zod defaults). */
6
+ export interface BundesrechtParamsArgs {
7
+ applikation: string;
8
+ suchworte?: string;
9
+ titel?: string;
10
+ paragraph?: string;
11
+ abschnitt_typ: 'Paragraph' | 'Artikel' | 'Anlage';
12
+ fassung_vom?: string;
13
+ seite: number;
14
+ limit: number;
15
+ }
16
+ /**
17
+ * Build the RIS API parameter object for a Bundesrecht search.
18
+ *
19
+ * The "Erv" application (English translations) uses a different parameter
20
+ * vocabulary (SearchTerms/Title) than the German consolidated laws
21
+ * (Suchworte/Titel); sending Suchworte to Erv is silently ignored by the API
22
+ * and returns all documents instead of a filtered result.
23
+ */
24
+ export declare function buildBundesrechtParams(args: BundesrechtParamsArgs): Record<string, unknown>;
5
25
  export declare function registerBundesrechtTool(server: McpServer): void;
6
26
  //# sourceMappingURL=bundesrecht.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"bundesrecht.d.ts","sourceRoot":"","sources":["../../src/tools/bundesrecht.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAazE,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CA0E/D"}
1
+ {"version":3,"file":"bundesrecht.d.ts","sourceRoot":"","sources":["../../src/tools/bundesrecht.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAmBzE,mFAAmF;AACnF,MAAM,WAAW,qBAAqB;IACpC,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,WAAW,GAAG,SAAS,GAAG,QAAQ,CAAC;IAClD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,qBAAqB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CA4B3F;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAoF/D"}
@@ -4,41 +4,80 @@
4
4
  import { z } from 'zod';
5
5
  import { searchBundesrecht } from '../client.js';
6
6
  import { addOptionalParams, buildBaseParams, createValidationErrorResponse, executeSearchTool, hasAnyParam, } from '../helpers.js';
7
- import { BundesrechtApplikationSchema, DateSchema } from '../types.js';
7
+ import { AbschnittTypSchema, BundesrechtApplikationSchema, DateSchema, LimitSchema, SeiteSchema, } from '../types.js';
8
+ /**
9
+ * Build the RIS API parameter object for a Bundesrecht search.
10
+ *
11
+ * The "Erv" application (English translations) uses a different parameter
12
+ * vocabulary (SearchTerms/Title) than the German consolidated laws
13
+ * (Suchworte/Titel); sending Suchworte to Erv is silently ignored by the API
14
+ * and returns all documents instead of a filtered result.
15
+ */
16
+ export function buildBundesrechtParams(args) {
17
+ const { applikation, suchworte, titel, paragraph, abschnitt_typ, fassung_vom, seite, limit } = args;
18
+ const params = buildBaseParams(applikation, limit, seite);
19
+ if (applikation === 'Erv') {
20
+ // English translations: distinct parameter names, no Abschnitt/Fassung support.
21
+ addOptionalParams(params, [
22
+ [suchworte, 'SearchTerms'],
23
+ [titel, 'Title'],
24
+ ]);
25
+ return params;
26
+ }
27
+ addOptionalParams(params, [
28
+ [suchworte, 'Suchworte'],
29
+ [titel, 'Titel'],
30
+ [fassung_vom, 'FassungVom'],
31
+ ]);
32
+ if (paragraph) {
33
+ params['Abschnitt.Von'] = paragraph;
34
+ params['Abschnitt.Bis'] = paragraph;
35
+ params['Abschnitt.Typ'] = abschnitt_typ;
36
+ }
37
+ return params;
38
+ }
8
39
  export function registerBundesrechtTool(server) {
9
- server.tool('ris_bundesrecht', `Search Austrian federal laws (Bundesrecht).
40
+ server.registerTool('ris_bundesrecht', {
41
+ title: 'Bundesrecht durchsuchen',
42
+ description: `Search Austrian federal laws (Bundesrecht).
10
43
 
11
44
  Use this tool to find Austrian federal legislation like ABGB, StGB, UGB, etc.
12
45
 
13
46
  Example queries:
14
47
  - suchworte="Mietrecht" -> Find laws mentioning rent law
15
- - titel="ABGB", paragraph="1319a" -> Find specific ABGB section
16
- - applikation="Begut" -> Search draft legislation`, {
17
- suchworte: z
18
- .string()
19
- .max(1000)
20
- .optional()
21
- .describe('Full-text search terms (e.g., "Mietrecht", "Schadenersatz")'),
22
- titel: z
23
- .string()
24
- .max(500)
25
- .optional()
26
- .describe('Search in law titles (e.g., "ABGB", "Strafgesetzbuch")'),
27
- paragraph: z
28
- .string()
29
- .max(100)
30
- .optional()
31
- .describe('Paragraph number to search for (e.g., "1295" for §1295)'),
32
- applikation: BundesrechtApplikationSchema.default('BrKons').describe('Data source - "BrKons" (consolidated, default), "Begut" (drafts), "BgblAuth" (gazette), "Erv" (English)'),
33
- fassung_vom: DateSchema.optional().describe('Date for historical version (YYYY-MM-DD)'),
34
- seite: z.number().default(1).describe('Page number (default: 1)'),
35
- limit: z.number().default(20).describe('Results per page 10/20/50/100 (default: 20)'),
36
- response_format: z
37
- .enum(['markdown', 'json'])
38
- .default('markdown')
39
- .describe('"markdown" (default) or "json"'),
48
+ - titel="ABGB", paragraph="1295" -> Find specific ABGB section
49
+ - titel="B-VG", paragraph="7", abschnitt_typ="Artikel" -> Article-based laws
50
+ - titel="ABGB", fassung_vom="2015-01-01" -> Consolidated version as of a date
51
+ - applikation="Begut" -> Search draft legislation`,
52
+ inputSchema: {
53
+ suchworte: z
54
+ .string()
55
+ .max(1000)
56
+ .optional()
57
+ .describe('Full-text search terms (e.g., "Mietrecht", "Schadenersatz")'),
58
+ titel: z
59
+ .string()
60
+ .max(500)
61
+ .optional()
62
+ .describe('Search in law titles (e.g., "ABGB", "Strafgesetzbuch")'),
63
+ paragraph: z
64
+ .string()
65
+ .max(100)
66
+ .optional()
67
+ .describe('Section number to search for (e.g., "1295" for §1295, "7" for Art 7)'),
68
+ abschnitt_typ: AbschnittTypSchema.default('Paragraph').describe('Type of section that "paragraph" refers to: "Paragraph" (default), "Artikel" (article-based laws like B-VG), or "Anlage" (annex). "Art 7 B-VG" requires "Artikel".'),
69
+ applikation: BundesrechtApplikationSchema.default('BrKons').describe('Data source - "BrKons" (consolidated, default), "Begut" (drafts), "BgblAuth" (gazette), "Erv" (English translations)'),
70
+ fassung_vom: DateSchema.optional().describe('Consolidated version as of this date (YYYY-MM-DD) — retrieves the law text as it stood on that day. Not supported for "Erv".'),
71
+ seite: SeiteSchema.describe('Page number (default: 1)'),
72
+ limit: LimitSchema.describe('Results per page: 10, 20, 50, or 100 (default: 20)'),
73
+ response_format: z
74
+ .enum(['markdown', 'json'])
75
+ .default('markdown')
76
+ .describe('"markdown" (default) or "json"'),
77
+ },
78
+ annotations: { readOnlyHint: true, openWorldHint: true },
40
79
  }, async (args) => {
41
- const { suchworte, titel, paragraph, applikation, fassung_vom, seite, limit, response_format, } = args;
80
+ const { suchworte, titel, paragraph, abschnitt_typ, applikation, fassung_vom, seite, limit, response_format, } = args;
42
81
  if (!hasAnyParam(args, ['suchworte', 'titel', 'paragraph'])) {
43
82
  return createValidationErrorResponse([
44
83
  'suchworte` fuer Volltextsuche',
@@ -46,17 +85,16 @@ Example queries:
46
85
  'paragraph` fuer Suche nach Paragraphen',
47
86
  ]);
48
87
  }
49
- const params = buildBaseParams(applikation, limit, seite);
50
- addOptionalParams(params, [
51
- [suchworte, 'Suchworte'],
52
- [titel, 'Titel'],
53
- [fassung_vom, 'FassungVom'],
54
- ]);
55
- if (paragraph) {
56
- params['Abschnitt.Von'] = paragraph;
57
- params['Abschnitt.Bis'] = paragraph;
58
- params['Abschnitt.Typ'] = 'Paragraph';
59
- }
88
+ const params = buildBundesrechtParams({
89
+ applikation,
90
+ suchworte,
91
+ titel,
92
+ paragraph,
93
+ abschnitt_typ,
94
+ fassung_vom,
95
+ seite,
96
+ limit,
97
+ });
60
98
  return executeSearchTool(searchBundesrecht, params, response_format);
61
99
  });
62
100
  }
@@ -1 +1 @@
1
- {"version":3,"file":"bundesrecht.js","sourceRoot":"","sources":["../../src/tools/bundesrecht.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,6BAA6B,EAC7B,iBAAiB,EACjB,WAAW,GACZ,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,4BAA4B,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEvE,MAAM,UAAU,uBAAuB,CAAC,MAAiB;IACvD,MAAM,CAAC,IAAI,CACT,iBAAiB,EACjB;;;;;;;oDAOgD,EAChD;QACE,SAAS,EAAE,CAAC;aACT,MAAM,EAAE;aACR,GAAG,CAAC,IAAI,CAAC;aACT,QAAQ,EAAE;aACV,QAAQ,CAAC,6DAA6D,CAAC;QAC1E,KAAK,EAAE,CAAC;aACL,MAAM,EAAE;aACR,GAAG,CAAC,GAAG,CAAC;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,wDAAwD,CAAC;QACrE,SAAS,EAAE,CAAC;aACT,MAAM,EAAE;aACR,GAAG,CAAC,GAAG,CAAC;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,yDAAyD,CAAC;QACtE,WAAW,EAAE,4BAA4B,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAClE,yGAAyG,CAC1G;QACD,WAAW,EAAE,UAAU,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,0CAA0C,CAAC;QACvF,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,0BAA0B,CAAC;QACjE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,6CAA6C,CAAC;QACrF,eAAe,EAAE,CAAC;aACf,IAAI,CAAC,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;aAC1B,OAAO,CAAC,UAAU,CAAC;aACnB,QAAQ,CAAC,gCAAgC,CAAC;KAC9C,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;QACb,MAAM,EACJ,SAAS,EACT,KAAK,EACL,SAAS,EACT,WAAW,EACX,WAAW,EACX,KAAK,EACL,KAAK,EACL,eAAe,GAChB,GAAG,IAAI,CAAC;QAET,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC;YAC5D,OAAO,6BAA6B,CAAC;gBACnC,+BAA+B;gBAC/B,oCAAoC;gBACpC,wCAAwC;aACzC,CAAC,CAAC;QACL,CAAC;QAED,MAAM,MAAM,GAAG,eAAe,CAAC,WAAW,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QAC1D,iBAAiB,CAAC,MAAM,EAAE;YACxB,CAAC,SAAS,EAAE,WAAW,CAAC;YACxB,CAAC,KAAK,EAAE,OAAO,CAAC;YAChB,CAAC,WAAW,EAAE,YAAY,CAAC;SAC5B,CAAC,CAAC;QAEH,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,CAAC,eAAe,CAAC,GAAG,SAAS,CAAC;YACpC,MAAM,CAAC,eAAe,CAAC,GAAG,SAAS,CAAC;YACpC,MAAM,CAAC,eAAe,CAAC,GAAG,WAAW,CAAC;QACxC,CAAC;QAED,OAAO,iBAAiB,CAAC,iBAAiB,EAAE,MAAM,EAAE,eAAe,CAAC,CAAC;IACvE,CAAC,CACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"bundesrecht.js","sourceRoot":"","sources":["../../src/tools/bundesrecht.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"dokument.d.ts","sourceRoot":"","sources":["../../src/tools/dokument.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAgBzE,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAyP5D"}
1
+ {"version":3,"file":"dokument.d.ts","sourceRoot":"","sources":["../../src/tools/dokument.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAmBzE,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CA+L5D"}
@@ -2,25 +2,30 @@
2
2
  * Tool 7: ris_dokument — Retrieve full text of a legal document.
3
3
  */
4
4
  import { z } from 'zod';
5
- import { getDocumentByNumber, getDocumentContent, isAllowedUrl, searchBundesrecht, searchJudikatur, searchLandesrecht, searchSonstige, } from '../client.js';
5
+ import { getDocumentByNumber, getDocumentContent, getDocumentRoute, isAllowedUrl, searchBezirke, searchBundesrecht, searchJudikatur, searchLandesrecht, searchSonstige, } from '../client.js';
6
6
  import { formatDocument, truncateResponse } from '../formatting.js';
7
7
  import { createMcpResponse, formatErrorResponse } from '../helpers.js';
8
8
  import { findDocumentByDokumentnummer } from '../parser.js';
9
9
  export function registerDokumentTool(server) {
10
- server.tool('ris_dokument', `Retrieve full text of a legal document.
10
+ server.registerTool('ris_dokument', {
11
+ title: 'Dokument abrufen',
12
+ description: `Retrieve full text of a legal document.
11
13
 
12
14
  Use this after searching to load the complete text of a specific law or decision.
13
15
 
14
- Note: For long documents, content may be truncated. Use specific searches to narrow down.`, {
15
- dokumentnummer: z
16
- .string()
17
- .optional()
18
- .describe('RIS document number (e.g., "NOR40052761") - from search results'),
19
- url: z.string().optional().describe('Direct URL to document content'),
20
- response_format: z
21
- .enum(['markdown', 'json'])
22
- .default('markdown')
23
- .describe('"markdown" (default) or "json"'),
16
+ Note: For long documents, content may be truncated. Use specific searches to narrow down.`,
17
+ inputSchema: {
18
+ dokumentnummer: z
19
+ .string()
20
+ .optional()
21
+ .describe('RIS document number (e.g., "NOR40052761") - from search results'),
22
+ url: z.string().optional().describe('Direct URL to document content'),
23
+ response_format: z
24
+ .enum(['markdown', 'json'])
25
+ .default('markdown')
26
+ .describe('"markdown" (default) or "json"'),
27
+ },
28
+ annotations: { readOnlyHint: true, openWorldHint: true },
24
29
  }, async (args) => {
25
30
  const { dokumentnummer, url: inputUrl, response_format } = args;
26
31
  if (!dokumentnummer && !inputUrl) {
@@ -55,118 +60,34 @@ Note: For long documents, content may be truncated. Use specific searches to nar
55
60
  };
56
61
  }
57
62
  else {
58
- // Direct fetch failed - fallback to search API
63
+ // Direct fetch failed - fallback to search API. Routing (endpoint +
64
+ // Applikation) comes from the shared registry in client.ts so it stays
65
+ // consistent with the direct-URL construction. Unknown prefixes default
66
+ // to a Justiz search.
67
+ const route = getDocumentRoute(dokumentnummer);
68
+ const searchParams = {
69
+ Applikation: route?.applikation ?? 'Justiz',
70
+ Dokumentnummer: dokumentnummer,
71
+ DokumenteProSeite: 'Ten',
72
+ };
59
73
  let apiResponse;
60
- if (dokumentnummer.startsWith('NOR')) {
61
- apiResponse = await searchBundesrecht({
62
- Applikation: 'BrKons',
63
- Dokumentnummer: dokumentnummer,
64
- DokumenteProSeite: 'Ten',
65
- });
66
- }
67
- else if (dokumentnummer.startsWith('LBG') ||
68
- dokumentnummer.startsWith('LNO') ||
69
- dokumentnummer.startsWith('LST') ||
70
- dokumentnummer.startsWith('LTI') ||
71
- dokumentnummer.startsWith('LVO') ||
72
- dokumentnummer.startsWith('LWI') ||
73
- dokumentnummer.startsWith('LSB') ||
74
- dokumentnummer.startsWith('LOO') ||
75
- dokumentnummer.startsWith('LKT')) {
76
- apiResponse = await searchLandesrecht({
77
- Applikation: 'LrKons',
78
- Dokumentnummer: dokumentnummer,
79
- DokumenteProSeite: 'Ten',
80
- });
81
- }
82
- else if (dokumentnummer.startsWith('JFR') || dokumentnummer.startsWith('JFT')) {
83
- apiResponse = await searchJudikatur({
84
- Applikation: 'Vfgh',
85
- Dokumentnummer: dokumentnummer,
86
- DokumenteProSeite: 'Ten',
87
- });
88
- }
89
- else if (dokumentnummer.startsWith('JWR') || dokumentnummer.startsWith('JWT')) {
90
- apiResponse = await searchJudikatur({
91
- Applikation: 'Vwgh',
92
- Dokumentnummer: dokumentnummer,
93
- DokumenteProSeite: 'Ten',
94
- });
95
- }
96
- else if (dokumentnummer.startsWith('BVWG')) {
97
- apiResponse = await searchJudikatur({
98
- Applikation: 'Bvwg',
99
- Dokumentnummer: dokumentnummer,
100
- DokumenteProSeite: 'Ten',
101
- });
102
- }
103
- else if (dokumentnummer.startsWith('LVWG')) {
104
- apiResponse = await searchJudikatur({
105
- Applikation: 'Lvwg',
106
- Dokumentnummer: dokumentnummer,
107
- DokumenteProSeite: 'Ten',
108
- });
109
- }
110
- else if (dokumentnummer.startsWith('DSB')) {
111
- apiResponse = await searchJudikatur({
112
- Applikation: 'Dsk',
113
- Dokumentnummer: dokumentnummer,
114
- DokumenteProSeite: 'Ten',
115
- });
116
- }
117
- else if (dokumentnummer.startsWith('GBK')) {
118
- apiResponse = await searchJudikatur({
119
- Applikation: 'Gbk',
120
- Dokumentnummer: dokumentnummer,
121
- DokumenteProSeite: 'Ten',
122
- });
123
- }
124
- else if (dokumentnummer.startsWith('PVAK')) {
125
- apiResponse = await searchJudikatur({
126
- Applikation: 'Pvak',
127
- Dokumentnummer: dokumentnummer,
128
- DokumenteProSeite: 'Ten',
129
- });
130
- }
131
- else if (dokumentnummer.startsWith('ASYLGH')) {
132
- apiResponse = await searchJudikatur({
133
- Applikation: 'AsylGH',
134
- Dokumentnummer: dokumentnummer,
135
- DokumenteProSeite: 'Ten',
136
- });
137
- }
138
- else if (dokumentnummer.startsWith('BGBLA') || dokumentnummer.startsWith('BGBL')) {
139
- // Bundesgesetzblätter - use Bundesrecht endpoint
140
- const applikation = dokumentnummer.startsWith('BGBLA') ? 'BgblAuth' : 'BgblAlt';
141
- apiResponse = await searchBundesrecht({
142
- Applikation: applikation,
143
- Dokumentnummer: dokumentnummer,
144
- DokumenteProSeite: 'Ten',
145
- });
146
- }
147
- else if (dokumentnummer.startsWith('REGV')) {
148
- // Regierungsvorlagen - use Bundesrecht endpoint
149
- apiResponse = await searchBundesrecht({
150
- Applikation: 'RegV',
151
- Dokumentnummer: dokumentnummer,
152
- DokumenteProSeite: 'Ten',
153
- });
154
- }
155
- else if (dokumentnummer.startsWith('MRP') || dokumentnummer.startsWith('ERL')) {
156
- // Sonstige Sammlungen - use Sonstige endpoint
157
- apiResponse = await searchSonstige({
158
- Applikation: dokumentnummer.startsWith('MRP') ? 'Mrp' : 'Erlaesse',
159
- Dokumentnummer: dokumentnummer,
160
- DokumenteProSeite: 'Ten',
161
- });
162
- }
163
- else {
164
- // Default to Justiz for unknown prefixes
165
- apiResponse = await searchJudikatur({
166
- Applikation: 'Justiz',
167
- Dokumentnummer: dokumentnummer,
168
- DokumenteProSeite: 'Ten',
169
- });
74
+ switch (route?.endpoint) {
75
+ case 'Bundesrecht':
76
+ apiResponse = await searchBundesrecht(searchParams);
77
+ break;
78
+ case 'Landesrecht':
79
+ apiResponse = await searchLandesrecht(searchParams);
80
+ break;
81
+ case 'Sonstige':
82
+ apiResponse = await searchSonstige(searchParams);
83
+ break;
84
+ case 'Bezirke':
85
+ apiResponse = await searchBezirke(searchParams);
86
+ break;
87
+ case 'Judikatur':
88
+ default:
89
+ apiResponse = await searchJudikatur(searchParams);
90
+ break;
170
91
  }
171
92
  // Find the document with matching dokumentnummer (don't blindly take first result)
172
93
  const findResult = findDocumentByDokumentnummer(apiResponse.documents, dokumentnummer);
@@ -193,6 +114,14 @@ Note: For long documents, content may be truncated. Use specific searches to nar
193
114
  return createMcpResponse(`**Fehler:** Keine Inhalts-URL fuer Dokument \`${dokumentnummer}\` verfuegbar.\n\n` +
194
115
  'Das Dokument hat moeglicherweise keinen abrufbaren Volltext.');
195
116
  }
117
+ // SSRF protection: this URL comes straight from the search API response
118
+ // and would otherwise be fetched unchecked. Validate it against the same
119
+ // domain allowlist used for user-supplied URLs.
120
+ if (!isAllowedUrl(contentUrl)) {
121
+ return createMcpResponse('**Fehler:** Die Inhalts-URL des Dokuments ist nicht erlaubt.\n\n' +
122
+ 'Nur HTTPS-URLs zu offiziellen RIS-Domains sind zulaessig ' +
123
+ '(data.bka.gv.at, www.ris.bka.gv.at, ris.bka.gv.at).');
124
+ }
196
125
  // Build metadata from search result
197
126
  metadata = {
198
127
  dokumentnummer: doc.dokumentnummer,
@@ -1 +1 @@
1
- {"version":3,"file":"dokument.js","sourceRoot":"","sources":["../../src/tools/dokument.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dokument.js","sourceRoot":"","sources":["../../src/tools/dokument.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"gemeinden.d.ts","sourceRoot":"","sources":["../../src/tools/gemeinden.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAczE,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CA6J7D"}
1
+ {"version":3,"file":"gemeinden.d.ts","sourceRoot":"","sources":["../../src/tools/gemeinden.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAczE,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CA+K7D"}