Skip to main content
Glama

kcsc-design-mcp

MCP-Server, um die Originaltexte der nationalen Baunormen (KDS·KCS usw.) direkt im KI-Chat abzurufen und zu nutzen.

Er bindet die OpenAPI des 국가건설기준센터 (KCSC) direkt an. Mit einem eigenen Authentifizierungsschlüssel funktioniert er in jedem MCP-fähigen Tool wie Claude Desktop·Claude Code·Cursor usw.

"KDS 14 31 10 의 압축부재 폭두께비 표 보여줘"
→ 표 4.2-2 를 마크다운 표 그대로 인용

⚠️ Was dieses Tool nicht tut

Es ersetzt keine Tragwerksberechnung.

  • Formeln und Symbole (λr·Fcr usw.) liegen im KCSC-Original als Bild vor und kommen nicht als Text. Dieses Tool kennzeichnet solche Stellen mit 〔그림 N〕 und erfindet keine Formeln.

  • Wenn die Formel gebraucht wird, holen Sie sie mit kcsc_formula unverändert als Bild – das ist die echte Formel aus der echten Norm. Wer rechnet, ohne das Bild anzusehen, dessen Formel stammt nicht aus dem Originaltext, sondern aus der Erinnerung der KI; sie kann richtig oder falsch sein, und das ist allein anhand der Ausgabe nicht zu erkennen. → In dem Fall verifizieren Sie das Zitat mit kcsc_audit und legen Sie diesen Umstand offen.

  • Die erzeugten Excel-Dateien sind leere Vorlagen. Es werden keine Berechnungsformeln eingefügt – da das Original aus Bildern besteht, sind die Formeln nicht bekannt; eine unbekannte Formel einzufügen wäre ein Unfall.

  • Die mitgelieferten Entscheidungsbäume sind keine geprüften Planungsdokumente. Sie enthalten nur die Prüfreihenfolge und die zugrunde liegenden Klauseln; an Stellen, an denen KDS keinen Wert vorgibt, steht der von der erstellenden Organisation angenommene Wert. Sie müssen auf die eigenen Maßstäbe der Organisation umgeschrieben werden, und die Verantwortung für diese Entscheidung liegt beim planenden Ingenieur.

  • Die endgültige Entscheidung trifft der Tragwerksplaner. Wenn nur eine Brückenlast falsch ist, sind Menschenleben gefährdet.


Related MCP server: KJH Law MCP

Installation

Zuerst wird ein Authentifizierungsschlüssel benötigt – OpenAPI beantragt man beim 국가건설기준센터 https://kcsc.re.kr.

Claude Desktop / Claude Code

In die claude_desktop_config.json (oder .mcp.json) den folgenden Block einfügen kann.

{
  "mcpServers": {
    "kcsc": {
      "command": "uvx",
      "args": ["kcsc-design-mcp"],
      "env": { "KCSC_API_KEY": "발급받은_키" }
    }
  }
}

Wenn uvx fehlt, installieren Sie zuerst uv. Einen separaten Installationsschritt gibt es nicht.

Speicherorte der Konfiguration – Claude Desktop (Windows): %APPDATA%\Claude\claude_desktop_config.json, Claude Code: .mcp.json des Projekts. Nach einem Neustart der App werden 14 Werkzeuge erkannt.

Direkt aus dem Quellcode

pip install -e .
KCSC_API_KEY=발급받은_키 python -m kcsc_mcp

Werkzeuge

Originaltext

Werkzeug

wirkung von

kcsc_search(query, code_type, limit)

Normen nach Namesuchen (ca. 3 Schüssel)

kcsc_outline(code, code_type, depth)

Inhaltsverzeichnis – Hierarchie der Klauselnummern

kcsc_read(code, section, code_type, max_chars)

Abschnitts-Originaltext (Tabellen bleiben erhalten)

kcsc_formula(code, section, code_type, max_images)

★die Formeln dieses Abschnitts unverändert als Bild

kcsc_grep(code, keyword, code_type, limit)

Die in im Textblock nach diesem Wort suchenden Abschnitte finden

kcsc_audit(text, code)

Zitate aus Berechnungsantworten maschinell prüfen (siehe unten)

kcsc_version(code, code_type)

Version·Revisionsdatum (prüfen, ob eine Aktualisierung vorliegt)

Planungshilfe – Entscheidungsbäume

Werkzeug

wofür von

design_flows()

Liste der verfügbaren Bäume (Bauteil·Querschnitt·Bemessungsverfahren·Prüfstatus)

design_map()

Anschlusskarte der Bäume – was wohin führt und was noch fehlt

design_flow(member, shape, method)

Entwurfsablauf + die begründenden Originalklauseln jeder Stufe werden mitgeliefert

design_sheet(form, shape, method)

leere Querschnittsprüftabelle erzeugen → Dateipfad

design_validate(tree_yaml | path)

Verifizieren über die API, ob die Begründungsklauseln tatsächlich existieren

design_template(member, shape, method)

YAML-Skelett für ein neues Bauteil

design_stamp(path | all_confirmed)

Bestätigungszeitpunkt auf dem bestätigten Baum erfassen (검증일·검증기준) – bei Normänderung erkennt der Check „Baum, der nach alter Ausgabe bestätigt wurde“

Die Codes werden als KDS 14 31 10·14 31 10·143110 akzeptiert. kcsc_grep und kcsc_version nehmen Ben mehrere Codes, durch Komma getrennt – Da der grep das gesamte Dokument lädt, maximal 10 Stück.


kcsc_formula – Formel als Bild unverändert

Die Formeln im KCSC-Original sind GIF-Bilder. Es gibt weder alt noch MathML, daher existiertnicht als Text Das gilt unabhängig vom Authentifizierungsschlüssel – der Schlüssel gewährt nur Zugriffsberechtigung.

Aber das Bild selbst ist scharf. Deshalb gibt dieses Tool die Abbildung unverändert zurück.

kcsc_formula('KDS 14 31 10', '4.2.3')

→ 텍스트 1개 + 이미지 17개
  〔그림 2〕  Pn = Fcr·Ag                    (4.2-1)
  〔그림 6〕  Fcr = [0.658^(Fy/Fe)]·Fy       (4.2-2)
  〔그림 9〕  Fcr = 0.877·Fe                 (4.2-3)
  〔그림 11〕 Fe = π²E/(KL/r)²               (4.2-4)

Die Nummer ist mit 〔그림 N〕 im Text von kcsc_read identisch. Beim Lesen des Textes können Sie nur die benötigten Formeln auswählen.

Die Kosten betragen etwa 27~216 Vision-Tokens pro Abschnitt, also kaum der Rede wert. Es gibt jedoch Abschnitte, die 71 Bilder enthält; daher werden standardmäßig höchstens 40 gesendet (über max_images einstellbar).

※ Auch das Lesen von Bildern ist eine Art Erkennung, daher kann hoch-/tiefgestellter Text fehlerhaft erfasst werden. Der Tragwerker kann jedoch dasselbe Bild sehen und so Gegenvergleich erhalten – eine aus der Erinnerung gefüllte Formel hat nicht einmal eine Vergleichsgrundlage.


kcsc_audit – Zitate aus Berechnungsantworten maschinell prüfen

Statt Berechnungen zu behindern, macht dieses Werkzeug sie prüfbar. Wenn man die kompletten Berechnungsantwort eingibt, entzieht es Norm, Abschnitt, Formelnummern und Tabellennummern und prüft sie einzeln.

## 인용 검증 — 6건 중 6건 확인 · 0건 실패

| 종류 | 기준 | 인용 | 확인 |
| 조항 | KDS 143110 | 4.3.2.1.1.4 | ✅ 강축 휨을 받는 기타 H형강…  ⚠️수식이미지 |
| 식   | KDS 143110 | 4.3-11      | ✅ 4.3.2.1.1.4 절에 있음 |
| 표   | KDS 143105 | 표 3.4-1    | ✅ 3.4.1 절에 있음 |

★4.3.2.1.1.4 절의 식은 원문이 이미지입니다. 도구가 읽지 못했습니다.
  → 이 계산에 쓰인 식·계수는 원문에서 온 것이 아니라 모델이 채운 것입니다.

Warum nötig? Es ist wirklich vorgekommen: Eine Antwort zur Biegetragfähigkeit eines nicht genormten H-Trägers stützte sich auf KDS 14 31 10 4.3.2.1.1.4 und ergab φMn=83.8 kN·m – und die Gegenprobe stimme vollständig. Aber im Originaltext dieses Abschnitts gab es keine einzige Formel als Text. Die Formeln und Beiwerte der Berechnung waren nicht aus der Norm gelesen, sondern aus dem Gedächtnis der KI.

Diesmal stimme es. Das Problem ist, dass Richtig oder falsch allein aus der Ausgabe nicht unterscheidbar ist.

Was nicht überprüft werden kann (dazu gehört unbedingt mitzulesen):

  • Ob der Inhalt der Formel richtig ist – das Original ist ein Bild, es kann nicht gelesen werden

  • Ob der Abschnitt zu diesem Bauteil und diesen Bedingungen passt – das ist eine Urteilsdomäne

  • Ob die Berechnung stimmt

Bestätigt wird nur die Tatsache, dass „diese Nummer an dieser Stelle tatsächlich existiert“. Liest man mehr hinein, wäre das Werkzeugeine neue falsche Beruhigung.


Entscheidungsbäume – 35 Stück mitgeliefert

Der Entwurfsablauf ist nicht in den Code geprägt, sondern liegt außen als YAML-Blatt = Bauteil.

저장소 flows/   결정트리 35개 — LRFD 18 · 한계상태 9 · 허용응력 8 (이음 118개, 끊긴 곳 0)
패키지 동봉     형식 견본 1개 — `검증: 예제` 로 박아 둠. 그대로 쓰라는 게 아님
사용자 폴더     ~/.kcsc-mcp/flows/*.yaml   ← 여기에 두면 도구가 읽는다

flows/ herunterladen, nach ~/.kcsc-mcp/flows/ legen oder dieses auf KCSC_FLOWS_DIR zeigen. Wenn (Bauteil, Querschnitt, Bemessungsverfahren) gleich ist, gewinnt der Benutzerordner über die mitgelieferte Probe.

Verwendungen Sie die erhaltenen Seiten nicht unverändert. Wo KDS den Wert nicht festlegt, steht der von der Aufbaueorganisation angenommene Wert (z. B. Durchbiegungsgrenze L/600 · Schwingstreifenbereich · Anschlusseffizienz 75 %/90 %). Welche das sind, ist in flows/README.md tabellarisch festgehalten. Ersetzen Sie durch die Maßstäbe Ihrer eigenen Organisation.

Der Baum ist Planungs – grundlagen, kein geprüftes Planungsdokument. Ob der Ablauf mit der Praxis übereinstimmt, prüft keine Maschine. Der Tragwerkeplant muss den Baum Schritt für Schritt ausrollen und bewerten.

Eigene Bäume: Skelett mit design_template holen, füllen, mit design_validate überprüfen.

★ Bäume hängten nebeneinander

Eine statische Berechnung endet mit einem Baum. Am Ende des eigenen Umhangs darf man nicht einfach abreißen; an den nächsten Baum oder die nächste Norm muss übergeben werden.

분기:
  - {조건: "약축 휨이다",     결과: "약축 조항으로", 다음트리: "휨부재 / 약축 H형강"}
  - {조건: "블록전단 검토",   결과: "연결부 기준",   다음기준: "KDS 14 31 25  4.1.4.3"}
  • Wenn in 다음트리 Bemessungsverfahren weggelassen wird, erbt es da gegenwärtige Bemessungsverfahren – denn das Prinzip „anderes Bemessungsverfahren = andere“ sollte auch an den Nahtstellen nicht zerbrechen.

  • Ein markierter Baum, der noch nicht existiert, wird als „nicht vorhanden“ sichtbar. Nicht still abgegriffen. Diese Liste ist genau „Was muss noch erstellt werden, um die strukturelle Information zu vervollständigen?“.

design_map() liefert diese Karte – welche Bäume wohin führen, und auch welche gekennzeichneten, aber nicht vorhandenen Bäume. Bei den mitgelieferten 35 sind alle 118 Anschlüsse vorhanden – Lückig 0. Beim Hinzufügen eigener Bäume sagen diese „Was muss noch erstellt werden?“ genau erklärt.

What design_validate fi-Neko

  • Schema fehlt · identischer Identifikator an einem Schritt

  • Auf einen Schritt ohne Verzweigung zeigen – dort bricht der Baum ab

  • Erfundene/abgeschriebene/abgeschaffte Klauselnummern – überprüft mit der API, ob der Abschnitt oder die Tabelle wirklich existiert

  • Widerspruch zwischen Bemessungsverfahren und zugrunde liegender Norm – ha siehe

  • Normänderung nach Bestätigung검증기준 (Ausgabe von dem Bestätigungszeitpunkt) mit der aktuellen Ausgabe vergleichen. Wird es geändert, ❌ (die Bestätigung selbst ist möglicherweise veraltet)

Der Baum wird von Menschen angehalten, aber der Existenz der Grundlagen prüft die Maschine. Denn erfundene, verbleibende Klauseln sind das größte Risiko.

★ Fachgebiet: 교량 (Brücke) ist die Standardvorgabe

Gebäudestahlbau (Vorsorgeung) bei Gebäude (KDS 14 3x) und Brücken (KDS 24 xx) haben komplett verschiedene Normenfamilien. Auch die Lastkombination und Bemessungslast sind getrennt.

교량   한계상태설계법  KDS 24 14 31 강교   (+ 하중조합 24 12 11 · 설계하중 24 12 21)  ← 도로교
교량   허용응력설계법  KDS 24 14 30 강교   (+ 하중조합 24 12 10 · 설계하중 24 12 20)  ← ★철도교
건축   하중저항계수설계법(LRFD)  KDS 14 31 xx
건축   허용응력설계법(ASD)       KDS 14 30 xx   ← 「하중저항계수설계법 규정이 없는 강구조」의 일반 ASD

KonzeptsUCH ist LRFD eine Grenzzustandsannahme, aber gemessen am Namen der Norm ist es eine eigene Familie. Wenn man sie vermischt, bekommt der Brückenplaner die Gebäudnormen.

Die KDS-24-„Allgemeines Bemessungsverfahren (zulässiger Stress)“ ist im Originaltext 1.1 als Bahnbrückennorm angelegt – 24 14 30 „Stahlbrücken für allgemeine und Hochgeschwindigkeitsbahnen“, 24 12 10/24 12 20 „Bahnbrücke“. In KWS gibt es maßgebende Straßen- und Fußstreifen (Straßenbrücke: nur Zustandsgrenze) nicht. Dieses Tool notiert das in dem Baum ungeändert und geht bei Fußgängerbrücken-ADSD als positiver Bauteil = KDS 14 30 xx, Lastkombination·Erhöhterfaktor = 24 12 10 in analogy (Firmenausgabe) vor. Wer 24 14 30 als „Straßenasf“ benutzt, ohne den Quelltext zu lesen, has ohne Grundlage.

Deshalb: Wird das Fachgebiet nicht genannt, geht man von Brücken aus.

  • Nur bei Bauwerken: design_flow(..., domain='건축')

  • Auch die Suche wird gleich: Koreansuche, domain='건축' / domain='전체'

  • Suchergebnis zeigt den Bereich; Nicht-Standard Ergebnisse werden weitgeschoben und markiert

  • Standartwert per Umgebungsvariable KCSC_DOMAIN – z. B. bei einer Architektur-orientierten Firma: KCSC_DOMAIN=건축

★ Unterschiedige Bemessungsverfahren ⇒ andere Bäume

Auch gleiche Bauteil, gleicher Querschnitt – wenn anderes Bemessungsverfahren, ist die grundlegende Norm selbst eine andere.

한계상태설계법(LRFD)  → KDS 14 31 10  강구조 부재 설계기준 (하중저항계수설계법)
허용응력설계법(ASD)   → KDS 14 30 10  강구조 부재 설계기준(허용응력설계법)
  • korrekte method ist unnötig, dann im Kopf/anzeigt, womit Designmeth ist beantwortet wurde.

  • Bei mehreren Bäumen: Stat; nicht willkürlich gewählt.

  • Fehlende Verfahren wird abgelehnt – es gibt kein “nicht existiert-Vorspiel”.

code_type ist in folgenden 9 Arten – Der KCSC-Katalog enthält nicht nur nationale Normen (KDS·KCS), sondern auch die fachliche Spezifikationen der Institutionen.

| Typ | Bedeutung (1 Grundgerechtigkeit) | Menschen |

| --- | --- | --- | | KDS | Bemessungsnorme | 561 | | KCS | Standardspezifikation | 767 769 | | SMCS | Fachregulierung von Seoul | 853 | | LHCS | knifflige Kontinentelle von LH | 544 | | EXCS | fachliche Anlage / Korea Expressway | 328 | | KRCCS | Fachregel / Korea Rail | 226 | | KWCS | Fachreg. / water resources | 189 | | NHCS | Fach-Regelwerk / Rural community | 76 | | KRACS | Fach durch Korea Airport | 26 |


Umgebungsvariablen

Variable

Wesen

Bedeutung

KCSC_API_KEY

(Pflicht)

KCSC-OpenAPI-Schlüssel

KCSC_HOME

~/.kcsc-mcp

Cache- und Baum-Excel-Ordner

KCSC_FLOWS_DIR

~/.kcsc-mcp/flows

gegebenenfalls nur der Ordner der Entscheidungsbäume

KCSC_INSECURE

0

TLS-Verifikation umgehen (weiter unten)

KCSC_TIMEOUT

90

Antwortszenario (Sek.)

KCSC_CATALOG_TTL

86400

Lebensdauer des Katalogs-Caches (Sek.)

KCSC_DOC_TTL

604800

Cache-Lebensdauer der Artikel (Sek.)

KCSC_DOMAIN

교량

Standard des Fachgebiets – wenn nichts angegeben

KCSC_MAX_CHARS

20000

maximale Zeichenanzahl je Werkzeugausgabe

Zur TLS-Verifikation

Dieser Server verifiziert TLS. In einigen Umgebungen schlug die Prüfung fehl, weil die KCSC-Zertifikatkette nicht in System-CA-Bundle enthalten war (Stand: 2026-08-05 erneut bestätigt, und normal OK).

Wenn die Validierung scheitert, ** Elm ohne Ausnahme und mit Warnung** – wird nicht still gebreakt. Da es sich um ein read-only Public -API handelt, ist das Risiko gering; die Entscheidung obliegt dem Verwender. Wer es umgehen will, setzt KCSC_INT etc.=1 selbst.


Wissenswertes

  • Die Suche nach Name sieht nicht in den vollen Text. So kommt z. B. „강관“ dutzend-faced in Dutzenden Normtexten vor, aber nur fünf Mal als Standard Name. Für das zusätzliche Suchen in den Text (Sub-Text) benutzt Sie kcsc_grep.

  • Form werden nicht gefunden. λr·Fcr und ähnliche Symbole sind nur Bilder, gibt es den Text. ecsc_grep kann also keine Symbole holen – man muss nach Wort (z. B. „세장판“) suchen.

  • 6-stellige Codes können bei various typed treffer. 143110 gibt es mit once in KDS (강-논) (however) , KCS, SMCS, EXCS, LHCS – in all das (제작). Wenn keine Art angegeben wird, sucht der Server zuerst nach nationalem KDS→KCS, hält aber die Auswahl und die restlichen Kandidaten in den Kopfbereich der Ausgabe, damit es korrekt ist.

  • Die oberen Klassifikationsgrößen haben keinen Text. wie KDS 100000 (Gemeinsam) sind nur umbrella für Liste, keine Klausel. So wird es vorgegeben.

  • Klausnummern können innerhalb ein document doppelt vorkommen. z.B. Anhang beginnt mit Nummern ab 1. bei einer Norm (z. B.) daher kann section="1" sowohl Haupttext als auch Anhang ausleufen.

  • Daten werden nicht weitererteilt. Die Paket enthält keine Originaltexten; die gezogene Dokument bleibt nur im ~/.KSCM-mcp/cache auf Ihrem Rechner.


Entwicklenotizen

Die tatsächlichen API-Begelegenheiten und die aufgedeckten Fallgruben sind in ... und in docs/KCSC_API.md. Änderungsliste CHANGELOG.md.

Lizenz

| Waror | MITLICENSE | | Code (src/) | … | | flows/ | CC BY-SA 4.0flows/. Nach jeder Änderung Weitervertrieb unter gleicher Bedingung attraktiv ist | | Normen – Original | 국제국민 Entfällt; Sie wird nicht wiederverteilt – mit eigenen Key abrufen. NOTICE

Copyright (c) 2026 (주)하이드로코리아

Kontakt

Fragen·Fehler·การ…… Je einen Bericht über Baum-Klausnummer-Fehler senden Sie an GitHub Issues. Wenn Sie eine Baumfehler melden und die Form „트리 오류 제보“ verwenden, stehen inBericht auch gemeldet, welchen Baum und welche Klausel gemeint ist.

Install Server
A
license - permissive license
A
quality
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
1Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to search, retrieve, and analyze South Korean legal documents including statutes, precedents, constitutional decisions, and administrative rulings via the Ministry of Government Legislation Open API. Provides 89 specialized tools with features like legal abbreviation auto-recognition, annex extraction, and complex research chain workflows.
    MIT

View all related MCP servers

Related MCP Connectors

  • Korean building codes (KDS/KCS/KS) with the clause number attached. Abstains rather than guessing.

  • Korean business record validation and workflow safety gates for AI agents.

  • AI-callable calculators and engineering models with real formulas. No hallucinated math.

View all MCP Connectors

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/lhs1152-lgtm/kcsc-design-mcp'

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