@cyanheads/ris-austria-mcp-server

中文文档
0.6.2发布于 2026/11/10Apache-2.0TypeScriptES Module近 30 天下载 2382

搜索奥地利综合联邦和州法律、法院裁决,以及官方RIS通过MCP提供的正版联邦州议会公告。 无钥匙. (原始内容存档于2012-10-12). STIO or Streamable HTTP.

中文使用文档
文档目录24 节
  1. 概览
  2. 工具
  3. 资源
  4. 能力参考
  5. ris_search_legislation 工具
  6. ris_search_case_law 工具
  7. ris_search_gazette 工具
  8. ris_search_drafts 工具
  9. ris_search_announcements 工具
  10. ris_lookup_citation 工具
  11. ris_get_document 工具
  12. ris_track_changes 工具
  13. ris_list_reference 工具
  14. ris://document/{application}/{documentNumber} 资源
  15. 特征
  16. 开始
  17. 配置
  18. 运行服务器
  19. 地方发展
  20. 夹克
  21. 项目结构
  22. 发展指南
  23. 捐款
  24. 许可证

@cyanheads/ris-austria-mcp-服务器

搜索奥地利综合联邦和州法律、法院裁决,以及官方RIS通过MCP提供的正版联邦州议会公告。 无钥匙. (原始内容存档于2012-10-12). STIO or Streamable HTTP.

9个工具 • 1个资源

Version License Docker MCP SDK npm TypeScript Bun

Install in Claude Desktop Install in Cursor Install in VS Code

Framework


概览

奥地利法律 RIS 空间研究所政府的官方法律信息系统:联邦、州和市政法、法院裁决、1848年的官方公报、立法草案和部长法令。 每份文件都有其约束力的标签。 不需要 API 密钥 .

工具

工具说明
ris_search_legislation搜索综合联邦、州和市政法,当日有效(今天违约),加上选定法律的英文译文
ris_search_case_law17个法院代码的每个法院或法庭搜索判例法
ris_search_gazette浏览联邦,州,区,市的地名录,联邦历史自动回溯到1848年
ris_search_drafts搜索部长级审查草案(Begutachtungsentwürfe)和政府法案(Regierungsvorlagen)
ris_search_announcements搜查从社会保险通知到部长法令和部长会议会议记录的7个部门收藏
ris_lookup_citation解决其文件的一个奥地利法律引文("§6 DSG","BGBl. I Nr. 165/1999",一个Geschäftszahl, ECLI, Rechtssatz 号码,或RIS ELI链接)
ris_get_document获取一个文档作为标记下, HTML, 或 XML, 或仅仅是其递解 URL, 并带有约束状态
ris_track_changes在日期窗口内的一个应用程序中列出每个添加、更改或删除的文档
ris_list_reference在线检索RIS词汇:应用程序、法院、州、部委、公报部分、引用格式、搜索语法

资源

资源说明
ris://document/{application}/{documentNumber}一个 RIS 文件的下标文本

资源镜像 ris_get_document,所以只使用工具的客户端一无所获.

能力参考

ris_search_legislation 工具

  • 搜索者为 query (全文)或 title (标题,简称,或"DSG"等缩写). scope 实值 federal (违约) 或联邦州, municipality 将国家范围改为国内法 language: english 搜索~138英文译文
  • in_force_as_of 在奥地利默认为今天,并被呼应为 appliedInForceAsOf· ; include_all_versions 编辑 entered_force_* 编号 : left_force_* 窗口是相互排斥的选项
  • 记录携带 law_id (每节律法都用它过滤), section_label, (中文(简体) ), abbreviation, (中文(简体) ), keywords,生效日期, eli, (中文(简体) ), celex_references,以及 content_urls综合记录载有构成的引用 promulgation 作为 original_gazette, (中文(简体) ), latest_change_gazette,以及 latest_change_relation

ris_search_case_law 工具

  • court 需要每个呼叫一个代码。 过滤器由 query,引用 norm ("DSG 第1节"),, case_number, (中文(简体) ), decided_from编号 :decided_to,以及 decision_type (单位:千美元)headnote, (中文(简体) ), full_text,或 all,默认值). 法院专用过滤器包括: court_name (正义), state (lvwg/uvs), 和 collection_number (vfgh/vwgh/uvs);一个被送错法院的失败,因为 court_filter_mismatch
  • norm 在所有三种拼写 RIS 索引下搜索任何拼写中的文章("第6条 DSGVO","DSGVO Art6","Artikel 6 MRK"),通知名称为发送的表达式
  • 记录携带 case_numbers (头条列出其涵盖的每一项决定), decision_date, (中文(简体) ), ecli, (中文(简体) ), norms_cited,以及 guiding_principle 头条; justiz 记录添加 legal_areas,和 justiz 头条 rechtssatz_numbers
  • court: normenliste 返回后,在 norm_index 而不是决定

ris_search_gazette 工具

  • scope 实值 federal (违约),联邦, district,或 municipal过滤器 number, (中文(简体) ), part, (中文(简体) ), type, (中文(简体) ), published_from编号 :published_to, (中文(简体) ), issuer, (中文(简体) ), district_authority,或 municipality; 状态范围也采用 series 财务报告和审定财务报表 state_era
  • 从一个时代(BgblAuth 2004+、BgblPdf 1945-2003、BgblAlt 1848-1940)开始,联邦查询得到答复 servedApplication; 跨越两个时代的日期范围失败, 如 cross_tier_range 拆分日期为
  • 记录携带 application (代码) ris_get_document 带入 document_number,等于 servedApplication, (中文(简体) ), binding (单位:千美元)authentic, (中文(简体) ), historical_record, (中文(简体) ), consolidated_informational, (中文(简体) ), authentic_pdf_url 如果有的话, alex_url (ÖNB扫描)1848–1940, celex_references 在适用的情况下,以及 promulgation 关于1848-2003年联邦条目

ris_search_drafts 工具

  • stage 需要: review_drafts (与 in_review_on)或(或) government_bills (2004年+,与 decided_from编号 :decided_to(三); ministry 接受“BMF”等缩写或全称
  • 记录携带 review_start 财务报告和审定财务报表 review_deadline 或者说 decided, (中文(简体) ), abbreviation 财务报告和审定财务报表 keywords 其中RIS供应,加 materials[] (Erläuterungen、Textgegenüberstellung、Vorblatt/WFA,附件) type通过 a materials[].url 改为 ris_get_document 读取一个

ris_search_announcements 工具

  • collection 需要: social_insurance, (中文(简体) ), veterinary, (中文(简体) ), court_rules, (中文(简体) ), trade_exam_rules, (中文(简体) ), health_structure_plans, (中文(简体) ), ministerial_decrees,或 council_minutes。过滤器其收藏不接受失败为 collection_filter_mismatch,包括: changed_since 打开 social_insurance 财务报告和审定财务报表 veterinary。 。 。 . issuer 扩大部("BMF")和社会保险承运人("ÖGK")缩写
  • 记录携带 binding (单位:千美元)authentic, (中文(简体) ), administrative_directive,或 preparatory, (中文(简体) ), authentic_pdf_url,以及 document_url唯一可以浏览的议会会议记录和法令
  • 每一集都增加了自己的元数据,用于RIS提供,例如: case_numbers, (中文(简体) ), in_force_from编号 :in_force_until, (中文(简体) ), keywords, (中文(简体) ), court_name, (中文(简体) ), plan_state,以及 session_number

ris_lookup_citation 工具

  • 一个 citation 被分类为规范("§6 DSG"),地名录号("BGBl. I Nr. 165/1999"),案例号("VfGH G 13/2025"),ECLI,Justiz Rechtssatz号码("RS0022961"),收藏号("VfSlg 19.632/2012"),或RIS ELI链接. kind 强迫一条路线, court 财务报告和审定财务报表 state 收缩它,和 in_force_as_of 针入规范的版本( 今天默认)
  • 回返 found, (中文(简体) ), kind,则a record 在匹配搜索工具的形状中 alternatives_count 当多个文档匹配时。 错过返回 found: false 与 guidance 而不是错误
  • 一项规范符合上述法律:
    • 法律与RIS文件相匹配("§2 EstG"- EstG 1988 §2;"AlVG 1977"- "AlVG",没有其年份存档;"VwGVG 2014 §28"- "VwGVG §28"),长标题由短标题来读取 ("StaatsanwaltschaftsG"- StAG §35"- StAG §35)
    • 子条款和一个后缀“;”被搁置(“第6条第(1)款B-VG”-B-VG第6条),一个正则取名的缩略语与其他缩略语相同(“1. COVID-19-JuBG 第1条”)
    • a 引用的版本被搁置("ABGB idF BGBl I 2010/28 §988" → ABGB § 988 于所请求的日期生效,绝不是修正法案的公报条目),并有说明称引用的版本没有被应用
    • 引用若干条款的条目(“DSG §1,§24”),“ZPO §179”。 ZPO §275 Abs2")解决了第一个问题并命名了剩下的问题
  • 欧盟法令RIS不合并("DSGVO Art32","RL 2006/123/EG","VO (EG)178/2002 Art3")返回 found: false 及其Eur-Lex链接,不要求RIS
  • 一份没有其部分的公报编号("BGBl. Nr. 50/2025")回来时模棱两可,命名了第一,二,三等部分
  • 一系列的公报 引用,作为综合记录 promulgation 加入("BGBl. Nr. 267/1967 zuletzt geändert durch BGBl. I Nr. 17/2026"),用它的第一个引号解决并取出其他人的名字;在一份公报中的第一个引号不读取返回 found: false 没有搜索。 拥有联邦土地("LGBlNÖ Nr. 72/2016")的国家机关不需要 state 提示,并报告一个不同意的提示没有应用
  • RIS ELI链接(合并-法律或正版-gazette记录) eli 或者说 document_url结束 https 或者说 http(a) 不论是否采用该办法)确定该规定的名称或条目,不论该规定是否有效; in_force_as_of 财务报告和审定财务报表 state 不应用。 拼写公报的路径/eli/bgbl/{I|II|III}/{year}/{number}, (中文(简体) ), /eli/lgbl/{state}/{year}/{number},或 /eli/{bgbl|rgbl|stgbl|gbloe}/{year}/{number} 与1997年以前一样,除了日期、语言或格式部分之外,没有其他部分/eli/bgbl/II/2026/317, (中文(简体) ), /eli/bgbl/1974/60) (中文(简体) ). 其它 /eli/ 排版,包括在文件编号之前剪接一个规定路径(/eli/bgbl/i/1999/165/A2P4页:1 found: false, (中文(简体) ), kind: unknown,没有请求
  • 一个Rechtssatz号码("RS0022961","RIS-Justiz RS0022961 [T3]","RW0001127")通过Justiz解决了该头条的音符问题,不管是什么 court 提示; 不搜索括号内的 T 数字
  • 一个VwSlg引用了另一种形状的VwGH商店("VwSlg 0017 F/1947","VwSlg 1485 A/1950","VwSlg 1809/50")在被引用年份内通过再一次搜索解决

ris_get_document 工具

  • 演讲人: document_number + 键 application,或由 document_url: 记录本身 document_url 或者说 eli (一个ELI或 Dokument.wxe 网页视图,读取其名称的文档),a content_urls 条目或草稿 materials[].url· ; format 实值 markdown (违约), html, (中文(简体) ), xml,或 urls_only
  • 每一个结果都带着 binding_status 财务报告和审定财务报表 authentic_pdf_url 如果有的话 如果PDF是唯一的引渡(地区和市镇的颁布、法院规则、政党透明度决定、理事会会议记录以及没有HTML文件的配套草案), markdown 返回从中提取的文本:带有一个纯文本 --- Page N of M --- 在每页前行, text_source: pdf,以及命名 PDF 的通知。 一个没有文本层的扫描 PDF, 一个超过 16 MiB, 或者一个无法及时获取的 PDF 返回一个通知, 而不是失败 html 财务报告和审定财务报表 xml 1848-1940年的公报,没有PDF可读
  • Markdown在内容主机上将图像引用写作绝对URL. 仅是页面图像的递解会读取其 PDF 文本, 当 PDF 没有时, 将图像 URL 保留在通知中
  • 超过40,000字节返回 kind: outline; 以 sections 以获取条目. html 财务报告和审定财务报表 xml 返回4万多字节 kind: link 与 byte_size 财务报告和审定财务报表 content_urls,因此读取 markdown

ris_track_changes 工具

  • application (任何39个代码) changed_from编号 :changed_to· ; include_deleted 添加清除, 没有其他工具报告
  • 记录携带 changed, (中文(简体) ), published,以及 binding_status; 删除设置 deleted: true 与 deleted_at
  • 法律行携带 section_label, (中文(简体) ), law_id,以及 in_force_from编号 :in_force_until (没有结束日期与现在生效的日期不同),决定行随行 case_numbers 财务报告和审定财务报表 decision_date

ris_list_reference 工具

  • topic 选择17个静态表格中的1个:申请、法院、州、决定类型和类型、发布机构、部委、收集、阶段、间隔、章节类型、公报部分、法律类型、地区当局、justiz主题区域、搜索语法和引用格式
  • 回返 summary 财务报告和审定财务报表 entries (单位:千美元)value, (中文(简体) ), label, (中文(简体) ), details没有上游呼叫

ris://document/{application}/{documentNumber} 资源

  • text/markdown 一、导 言 application + 键 documentNumber 从搜索或查询结果中; 内容与 ris_get_document 与 format: markdown
  • 仅发布 PDF 的应用程序在有栅栏的块中返回其取出的案文,并附有一个名为 PDF 的注释;1848–1940 年的地名录和一个没有可取出的案文的 PDF 返回一个指向 PDF 或扫描的注释。 超大小文本返回大纲, 因此使用工具获取条目

特征

建造在 @cyanheads/mcp-ts-core: stdio和可流式的 HTTP 传输器,可插接式(none 编号 : jwt 编号 : oauth),可互换存储(in-memory, (中文(简体) ), filesystem, (中文(简体) ), Supabase, (中文(简体) ), Cloudflare KV/R2/D1),结构化记录,可选择的OpenTeleometry tracking.

具体国际空间年:

  • 所有39项OGD申请:综合法律、联邦、州、区和市公报、17项法院和法庭汇编、立法管道和部门公告
  • 引用通过精确的过滤器(分节加标题、公报编号、Geschäftszahl、Sammlungsnummer)而不是关键词搜索解决
  • 日期为 YYYY-MM-DD; 以 page 财务报告和审定财务报表 page_size (1-100,作为10或20页;默认20页);省略文本过滤器,而不是发送空白
  • 法院、申请、州和部委守则来自 ris_list_reference
  • 工具描述为英文;标题、字段值和RIS出错信息为德文

方便代理输出 :

  • 每个记录都带有打入式约束状态(authentic, (中文(简体) ), consolidated_informational, (中文(简体) ), historical_record, (中文(简体) ), decision, (中文(简体) ), preparatory, (中文(简体) ), administrative_directive, (中文(简体) ), translation(中文(简体) )
  • 网页成果报告 totalCount 财务报告和审定财务报表 truncated 并响应服务器应用的内容,例如 appliedInForceAsOf 财务报告和审定财务报表 servedApplication
  • 输入出错的原因( E)court_filter_mismatch, (中文(简体) ), cross_tier_range, (中文(简体) ), invalid_query, (中文(简体) ), document_not_found,...)和"零打击"通知为下一个呼叫命名

开始

连接到主机实例, 没有安装 :

claude mcp add --transport http ris-austria-mcp-server https://ris-austria.caseyjhand.com/mcp

或者在当地运行它:

claude mcp add ris-austria-mcp-server -- npx -y @cyanheads/ris-austria-mcp-server

对于其他客户端,请将此添加到 MCP 配置文件中 :

{
  "mcpServers": {
    "ris-austria-mcp-server": {
      "command": "npx",
      "args": ["-y", "@cyanheads/ris-austria-mcp-server"]
    }
  }
}

不需要 API 密钥 。 对于 Docker 或源构建,请参见 运行服务器。 。 。 .

配置

变量说明默认
RIS_API_BASE_URLRIS OGD REST API基础URL.https://data.bka.gv.at/ris/api/v2.6
RIS_CONTENT_BASE_URL移植 URL 的文档内容主机和从中获取的文件 . https://www.ris.bka.gv.at 使用bot检查页面回答自动客户端.https://ogd.ris.bka.gv.at
RIS_CONTACT联系字符串附于用户代理 .无
RIS_FOLD_INPUT_SPELLINGS接受任何字母案件中的法院或应用代码,以及用其德文或英文名称表示的状态,在验证前将其折叠到代码上. false 恢复每个这样的字段的严格验证.true
MCP_TRANSPORT_TYPE运输: stdio 或者说 http。 。 。 .stdio
MCP_HTTP_PORTHTTP 服务器端口.3010
MCP_SESSION_MODEHTTP 会话模式 : stateless, (中文(简体) ), stateful,或 auto。 。 。 .stateless
MCP_AUTH_MODE认证 : none, (中文(简体) ), jwt,或 oauth。 。 。 .none
MCP_LOG_LEVEL日志级别 (debug, (中文(简体) ), info, (中文(简体) ), warning, (中文(简体) ), error(见a/c.5/49/70,附件).info
OTEL_ENABLED启用 打开几何。 。 。 .false

见 .env.example 用于完整可选覆盖列表.

运行服务器

地方发展

要求数 Bun v 1.4.4 (单位:千美元) 或更高(或Node.js v24+).

  • 克隆并安装 :

    git clone https://github.com/cyanheads/ris-austria-mcp-server.git
    cd ris-austria-mcp-server && bun install
    
  • 构建和运行 :

    # One-time build
    bun run rebuild
    
    # Run the built server
    bun run start:stdio
    # or
    bun run start:http
    
  • 运行检查和测试 :

    bun run devcheck   # Lint, format, typecheck, security
    bun run test       # Vitest test suite
    bun run lint:mcp   # Validate MCP definitions against spec
    

夹克

docker run --rm -p 3010:3010 ghcr.io/cyanheads/ris-austria-mcp-server:latest

图像默认为 HTTP 传输、 无国籍会话模式和日志到 /var/log/ris-austria-mcp-server运行到一个 MCP 客户端的 stdio,使用 "command": "docker" 与 "args": ["run", "-i", "--rm", "-e", "MCP_TRANSPORT_TYPE=stdio", "ghcr.io/cyanheads/ris-austria-mcp-server:latest"]为了在当地建设, docker build -t ris-austria-mcp-server .; OpenTeleometry 端点依赖性默认安装——用 --build-arg OTEL_ENABLED=false 以略去它们.

项目结构

目录目的
src/index.tscreateApp() 进入点——登记工具和资源.
src/config可选的RIS端点,接触,和输入倍数配置,由Zod解析.
src/mcp-server/tools工具定义*.tool.ts) (中文(简体) ).
src/mcp-server/resources资源定义*.resource.ts) (中文(简体) ).
src/services/risRIS请求构建,HTTP访问,正常化,以及静态参考数据.
docs/design.md设计说明:工具表面,服务规格,活性确认的RIS API参考.
tests/单位和综合测试镜像 src/。 。 。 .
framework-skills/发展技能同步自 @cyanheads/mcp-ts-core。 。 。 .

发展指南

见 CLAUDE.md 编号 : AGENTS.md 发展准则和建筑规则。 简本:

  • 搬运工投掷,框架渔获量——否 try/catch 在工具逻辑中
  • 使用 ctx.log 请求范围伐木, ctx.state 租户范围储存
  • 通过 createApp() 内 src/index.ts
  • 环绕 RIS API: 验证原始 = 与域类型正常化 = 返回输出计划; 永远不编织缺失字段

捐款

问题值得欢迎。 提交前进行检查和测试:

bun run devcheck
bun run test

许可证

阿帕奇-2.0 — 见 自由主义 详细情况.

RIS OGD数据为: CC BY 4.0 (英语) (归属:RIS, Bundeskanzleramt Österreich). 基本的法律文本是无版权的官方作品. 只有正式的、具有特别意义的公报措辞才具有法律约束力——综合的RIS文本是信息.

版本与发布记录

@cyanheads/ris-austria-mcp-server 共发布 26 个版本,首次发布于 2026/07/10;过去 12 个月发布了 26 个版本。

版本发布日期距今
0.6.2latest2026/11/101 天前
0.6.12026/10/3111 天前
0.6.02026/10/2814 天前
0.5.52026/10/2517 天前
0.5.42026/10/2517 天前
0.5.32026/10/2418 天前

关于 @cyanheads/ris-austria-mcp-server 的常见问题

@cyanheads/ris-austria-mcp-server 是什么?

搜索奥地利综合联邦和州法律、法院裁决,以及官方RIS通过MCP提供的正版联邦州议会公告。 无钥匙. (原始内容存档于2012-10-12). STIO or Streamable HTTP.

如何安装 @cyanheads/ris-austria-mcp-server?

在项目目录运行 npm install @cyanheads/ris-austria-mcp-server,或使用 pnpm add / yarn add / bun add。它还提供命令行工具 ris-austria-mcp-server,可以用 npx ris-austria-mcp-server 直接运行。

@cyanheads/ris-austria-mcp-server 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@cyanheads/ris-austria-mcp-server 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@cyanheads/ris-austria-mcp-server 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=24.0.0。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@cyanheads/ris-austria-mcp-server 可以商用吗?

@cyanheads/ris-austria-mcp-server 使用 Apache-2.0 许可。宽松许可:允许商业使用、修改和再分发,并附带明确的专利授权;分发时需保留许可与 NOTICE 文件,修改过的文件要注明改动。以上为概括,不构成法律意见,请以许可原文为准。

@cyanheads/ris-austria-mcp-server 的下载量有多少?

根据 npm 官方下载统计,@cyanheads/ris-austria-mcp-server 在 2026/10/11 – 2026/11/09 这 30 天内被下载 2,382 次,日均约 79 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@cyanheads/ris-austria-mcp-server 还在维护吗?

最新版本 0.6.2 发布于 2026/11/10(1 天前);至今共发布 26 个版本,其中过去 12 个月发布了 26 个;首次发布于 2026/07/10。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。