하이브리드 DMN MCP 서버 - DRD 지원, cDMN API와 표준 XML 파싱을 모두 지원하는 FastMCP 기반 의사결정 서버
Wellknown found it in public sources; nobody has proven control of it yet. Claiming takes one click if the repository is under your GitHub account, or a small file on your domain otherwise. Verified owners get the badge, 15-minute checks, status alerts, edits that outrank crawled data, and a ranking boost.
Agents can do it too: POST https://wellknown.network/api/v1/claims with {"agent":"cdmn-mcp-server","method":"well_known_file"} — machine-readable steps at claim.json, guide at /docs/claim.
Everything here was measured by our prober or read from a registry. Nothing is self-reported.
Attributed to the source that supplied each field. Treated as claims, not facts.
# CDMN Decision MCP Server cDMN 전용 MCP 서버 - cDMN 프레임워크만을 사용하는 FastMCP 기반 의사결정 서버입니다. ## 🚀 Features ### 핵심 기능 - **🎯 cDMN 전용 엔진**: cDMN 프레임워크만을 사용하여 안정적이고 정확한 DMN 실행 - **📄 DMN XML 지원**: DMN 1.3 표준 XML 형식 완벽 지원 - **🔄 모델 확장**: 모든 가능한 해를 찾을 수 있는 고급 추론 기능 - **📊 의사결정 추적**: 실행 경로와 규칙 매칭 과정 상세 추적 - **⚡ 전파 기반 추론**: 입력값을 통해 출력값을 자동으로 계산 ### 고급 기능 - **완전히 제네릭한 의사결정 엔진**: 고정된 스키마 없이 key-value 형태의 유연한 입력 처리 - **자연어 → DMN 호출 자동화**: LLM 기반 자연어 파싱으로 DMN 인퍼런스를 수행하고 결과를 반환 - **Rule 관리 기능**: DMN XML을 로드, 저장, 조회 가능 - **동적 스키마 조회**: 각 규칙의 입력 요구사항을 런타임에 확인 가능 - **호출측 LLM 최적화**: 마크다운 생성은 호출측 LLM에서 처리하도록 설계 - **확장 가능한 규칙 시스템**: 새로운 규칙을 동적으로 등록하고 실행 가능 - **MCP 프로토콜 준수**: FastMCP 기반으로 LLM에서 함수 호출 및 응답 처리 가능 ## 📋 Requirements - Python 3.11+ - FastMCP - cDMN (필수) - idp-engine (cDMN 의존성) ## 🛠️ Installation ### Using pip ```bash pip install cdmn-mcp-server ``` cDMN과 idp-engine이 자동으로 설치됩니다. ### From source ```bash git clone https://github.com/rickjang/cdmn-mcp-server.git cd cdmn-mcp-server pip install -e . ``` ## 🚀 Usage ### 1. Command Line ```bash # 기본 실행 cdmn-mcp-server # 또는 Python 모듈로 실행 python -m server_cdmn_only ``` ### 2. MCP 설정 파일 Claude Desktop 등에서 사용하기 위한 설정: ```json { "mcpServers": { "cdmn-mcp-server": { "command": "uvx", "args": ["cdmn-mcp-server"] } } } ``` ### 3. Python API ```python from server_cdmn_only import DMNModel # DMN 모델 초기화 dmn_model = DMNModel() # 규칙 로드 await dmn_model.load_rule("insurance_premium") # 의사결정 실행 result = await dmn_model.evaluate_decision("insurance_premium", { "age": 65, "smoker": True, "health_score": 30 }) print(result.result) # {'Risk Category': 'Very High'} print(result.engine_used) # 'cdmn' ``` ## 📚 Available Tools ### 1. `load_rule(rule_name: str)` DMN XML 규칙을 로드합니다. ### 2. `save_rule(rule_name: str, xml_content: str)` 새로운 DMN 규칙을 저장합니다. ### 3. `list_rules()` 등록된 DMN 규칙 목록을 조회합니다. ### 4. `delete_rule(rule_name: str)` DMN 규칙을 삭제합니다. ### 5. `get_rule_schema(rule_name: str)` 규칙의 …
Mapped onto the structured taxonomy from declared text and observed tool names. Confidence shown for derived entries.
Every source is kept verbatim. Field changes are logged as events.