Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Access Austrian laws, court decisions & legal documents via the RIS API.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"ris": {
"command": "npx",
"args": [
"-y",
"ris-mcp-ts"
]
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add ris -- npx -y ris-mcp-tsวางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"ris": {
"command": "npx",
"args": [
"-y",
"ris-mcp-ts"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"ris": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"ris-mcp-ts"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 6 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub Honeyfield-Org ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (1.9.0) เข้า registry เมื่อวานซืน
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Node.js ในเครื่องด้วย
ในหมวดเดียวกันมี Spec Driven Development, Remote Desktop Commander, Safe Fetch
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
MCP server for fetching URLs, safe against SSRF, DNS rebinding, and redirect-to-internal attacks.
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
An MCP (Model Context Protocol) server that gives AI assistants access to Austria's official legal database — the Rechtsinformationssystem (RIS).
Ask your AI assistant about Austrian law, and it will search and retrieve legal documents directly from the official government API. No API key required.
Once connected, you can ask your AI assistant things like:
"What does Austrian law say about tenancy rights?"
"Find Constitutional Court decisions on freedom of expression."
"Show me §1295 of the ABGB (Austrian Civil Code)."
"What laws about climate protection were published in 2024?"
"Look up the building code for the province of Salzburg."
"Get the full text of document NOR40052761."
The server translates these natural language requests into structured API calls against the RIS Open Government Data API.
Run directly without installation:
pnpm dlx ris-mcp-ts
Or install globally:
pnpm add -g ris-mcp-ts
Add to your Claude Desktop config (Settings > Developer > Edit Config):
~/Library/Application Support/Claude/claude_desktop_config.json%APPDATA%\Claude\claude_desktop_config.json{
"mcpServers": { "ris": { "command": "npx", "args": ["-y", "ris-mcp-ts"] } } }
Note: The "Add custom connector" UI in Claude Desktop only supports remote MCP servers (HTTP/SSE). Local stdio servers like this one must be configured via the JSON file.
Tip: You can also use
pnpm dlxinstead ofnpxin all configuration examples if you prefer pnpm.
Add to your project or user settings:
claude mcp add ris -- npx -y ris-mcp-ts
Add to .vscode/mcp.json in your project:
{
"servers": { "ris": { "type": "stdio", "command": "npx", "args": ["-y", "ris-mcp-ts"] } } }
Add to .cursor/mcp.json in your project (or ~/.cursor/mcp.json for global access):
{
"mcpServers": { "ris": { "command": "npx", "args": ["-y", "ris-mcp-ts"] } } }
Add to your Windsurf MCP config at ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": { "ris": { "command": "npx", "args": ["-y", "ris-mcp-ts"] } } }
Any MCP-compatible client can connect via stdio transport:
npx -y ris-mcp-ts
| Tool | Description |
|---|---|
ris_bundesrecht | Search federal laws (ABGB, StGB, UGB, etc.) |
ris_landesrecht | Search state/provincial laws (all 9 provinces) |
ris_judikatur | Search court decisions (16 court types) |
ris_bundesgesetzblatt | Search Federal Law Gazettes (BGBl I/II/III) |
ris_landesgesetzblatt | Search State Law Gazettes (LGBl) |
ris_regierungsvorlagen | Search government bills |
ris_dokument | Retrieve full document text by ID or URL |
ris_dokument_abschnitt | Return one section of an open document by character offset (feeds the document viewer widget) |
ris_bezirke | Search district authority announcements |
ris_gemeinden | Search municipal law and regulations |
ris_sonstige | Search miscellaneous collections (8 sub-apps) |
ris_history | Track document change history (36 app types) |
ris_verordnungen | Search state ordinance gazettes |
One widget, all eleven search tools. There is a single interactive result list, and every search tool renders into it: federal law, state law, case law, the federal and state law gazettes, government bills, district authority announcements, municipal law, the miscellaneous collections, change history and the ordinance gazettes. The screenshots below are the same widget in two different hosts, not two different features.
`ris_dokument` opens a reader instead. A single document can run to a quarter of a million characters, far past what one answer may carry, so the viewer loads it section by section as you scroll, offers an outline to jump by where the document has one, and links back into RIS. The full text still reaches the chat either way — the widget is never the only copy.
Hosts that support the MCP Apps extension render the hits as an interactive list — page through results without retyping the search, open a document in the browser, or request its full text with one click. The widget follows the host's light or dark theme; the shots below show both.
In Claude In ChatGPT
The expanded detail view, light theme — metadata, the three actions, and pagination
RIS is a German-language database, so these work best in German. Each of these lands on a different tool:
"Zeig mir das Verbrauchergewährleistungsgesetz" —
ris_bundesrecht
"Finde aktuelle OGH-Rechtsprechung zu Verjährung" —
ris_judikatur
"Was steht im Tiroler Landesrecht zum Naturschutz?" —
ris_landesrecht
"Zeig mir BGBl. I Nr. 175/2021" —
ris_bundesgesetzblatt
In a host without MCP Apps support the same prompts return the full text answer instead — see the table below.
| Host | What you get |
|---|---|
| claude.ai | Result list (pagination, document links) + document viewer (outline navigation, lazy loading) |
| ChatGPT | Result list (pagination) + document viewer (outline navigation, lazy loading) |
| Claude Code, and any client without MCP Apps support | The regular text results, unchanged |
The chat answer is always complete. The widgets are an addition to it, never a replacement — a host that does not render them loses nothing.
ris_bundesrecht — Federal Laws
Search Austrian federal laws such as ABGB, StGB, UGB, and more.
Inputs:
| Parameter | Type | Description |
|---|---|---|
suchworte | string | Full-text search (e.g., "Mietrecht", "Schadenersatz") |
titel | string | Search in law titles (e.g., "ABGB", "Strafgesetzbuch") |
paragraph | string | Section number (e.g., "1295" for §1295, "7" for Art 7) |
abschnitt_typ | string | Type of section paragraph refers to: "Paragraph" (default), "Artikel" (article-based laws like B-VG), "Anlage" (annex) |
applikation | string | "BrKons" (consolidated, default), "Begut" (drafts), "BgblAuth" (gazette), "Erv" (English translations) |
fassung_vom | string | Date for historical version (YYYY-MM-DD) |
seite | number | Page number (default: 1) |
limit | number | Results per page: 10, 20, 50, 100 (default: 20). Prefer 20; a page over the structured-payload budget is delivered at the next smaller size (see Result size) |
response_format | string | "markdown" (default) or "json" |
All parameters are optional. At least one search parameter (suchworte, titel, or paragraph) should be provided.
Note:
applikation="Erv"(English translations) uses a different parameter vocabulary internally (SearchTerms/Title) and does not supportparagraph/abschnitt_typorfassung_vom.
ris_landesrecht — State/Provincial Laws
Search state laws of the nine Austrian provinces.
Inputs:
| Parameter | Type | Description |
|---|---|---|
suchworte | string | Full-text search |
titel | string | Search in law titles |
bundesland | string | Province: Wien, Niederoesterreich, Oberoesterreich, Salzburg, Tirol, Vorarlberg, Kaernten, Steiermark, Burgenland |
paragraph | string | Section number (e.g., "1" for §1, "7" for Art 7) |
abschnitt_typ | string | Type of section paragraph refers to: "Paragraph" (default), "Artikel", "Anlage" |
fassung_vom | string | Date for historical version (YYYY-MM-DD) |
gesetzesnummer | string | Exact law number (Gesetzesnummer) of a specific state law |
applikation | string | "LrKons" (consolidated, default) |
seite | number | Page number |
limit | number | Results per page: 10, 20, 50, 100 (default: 20). Prefer 20; a page over the structured-payload budget is delivered at the next smaller size (see Result size) |
response_format | string | "markdown" or "json" |
ris_judikatur — Court Decisions
Search court decisions from Austrian courts.
Inputs:
| Parameter | Type | Description |
|---|---|---|
suchworte | string | Full-text search in decisions |
gerichtsbarkeit | string | Court system / data collection to search — the RIS "Applikation" (see below; default "Justiz") |
dokumenttyp | string | "rechtssatz" (headnotes only), "entscheidungstext" (full texts only), or "beide" (both, default) |
gericht | string | Actual court within the jurisdiction (e.g., "OGH", "OLG Wien"); applies to gerichtsbarkeit="Justiz" |
rechtsgebiet | string | Broad legal area: "Zivilrecht" or "Strafrecht" (Justiz) |
fachgebiet | string | OGH subject area (e.g., "Arbeitsrecht"); Justiz, needs dokumenttyp "entscheidungstext"/"beide" |
| entscheidungsart | string | Decision type (
ตัดมาแค่ช่วงต้น อ่านต่อใน repo