[project] name = "korean-rnd-regs-mcp" version = "0.55.0" description = "MCP server for Korean national R&D regulation review (국가연구개발 규정 검토용 MCP 서버)" readme = {file = "README.md", content-type = "text/markdown"} requires-python = ">=3.11" license = "Apache-2.0" license-files = ["LICENSE"] authors = [ {name = "Andy Kim", email = "smilemin07@gmail.com"}, ] keywords = [ "korean-law", "regulation", "national-rnd", "mcp", "fastmcp", "model-context-protocol", "research-development", "r-and-d", "korea", "korean", ] classifiers = [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "Intended Audience :: Other Audience", "Operating System :: OS Independent", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", "Programming Language :: Python :: 3.14", "Topic :: Office/Business", "Topic :: Scientific/Engineering", "Topic :: Text Processing :: Linguistic", "Natural Language :: Korean", ] dependencies = [ "cachetools>=5,<6", "fastmcp>=3.3,<4", "pydantic>=2,<3", "python-dotenv>=1,<2", "pyyaml>=6,<7", "requests>=2,<3", ] [project.urls] Homepage = "https://github.com/smilemin07/korean-rnd-regs-mcp" Repository = "https://github.com/smilemin07/korean-rnd-regs-mcp" Issues = "https://github.com/smilemin07/korean-rnd-regs-mcp/issues" Changelog = "https://github.com/smilemin07/korean-rnd-regs-mcp/blob/main/CHANGELOG.md" [project.scripts] korean-rnd-regs-mcp = "korean_rnd_regs_mcp.main:main" [project.optional-dependencies] dev = [ "build>=1,<2", "hatchling>=1,<2", "pytest>=8,<9", "twine>=7,<8", ] [build-system] requires = ["hatchling"] build-backend = "hatchling.build" [tool.hatch.build.targets.wheel] packages = ["src/korean_rnd_regs_mcp"] # rule_sets.yaml이 wheel 빌드에서 누락되지 않도록 명시. # packages만 지정 시 hatchling 환경에 따라 yaml이 빠질 수 있어 force-include로 보장. [tool.hatch.build.targets.wheel.force-include] "src/korean_rnd_regs_mcp/rule_sets.yaml" = "korean_rnd_regs_mcp/rule_sets.yaml" # v0.27.0(R1-P2): 매뉴얼 절 단위 데이터 — 누락 시 매뉴얼 도구 2종만 manual_unavailable(기존 도구 무영향) "src/korean_rnd_regs_mcp/manual_body.json" = "korean_rnd_regs_mcp/manual_body.json" # v0.32.0(R2-P2): 별권 3 제재처분 가이드라인 — 누락 시 별권 조회만 manual_b3_unavailable(본권·규정 무영향) "src/korean_rnd_regs_mcp/manual_b3.json" = "korean_rnd_regs_mcp/manual_b3.json" # v0.33.0(R3-P2): 별권 2 기술료 제도 매뉴얼 — 누락 시 별권 조회만 manual_b2_unavailable(본권·별권 3·규정 무영향) "src/korean_rnd_regs_mcp/manual_b2.json" = "korean_rnd_regs_mcp/manual_b2.json" # v0.35.0(R4-P2): 별권 1 학생인건비통합관리 제도 매뉴얼 — 누락 시 별권 조회만 manual_b1_unavailable(본권·별권 2·3·규정 무영향) "src/korean_rnd_regs_mcp/manual_b1.json" = "korean_rnd_regs_mcp/manual_b1.json" # v0.38.0: 과제평가 표준지침(25.12) — 누락 시 해당 소스 조회만 manual_eval_unavailable(기존 4소스·규정 무영향) "src/korean_rnd_regs_mcp/manual_eval.json" = "korean_rnd_regs_mcp/manual_eval.json" # v0.39.0(R5): 별권 4 연구시설·장비비 통합관리제 운영·관리 매뉴얼 — 누락 시 별권 조회만 manual_b4_unavailable(기존 5소스·규정 무영향) "src/korean_rnd_regs_mcp/manual_b4.json" = "korean_rnd_regs_mcp/manual_b4.json" # v0.43.0: 국가 R&D 연구비 부적정집행 사례집(KAIA·25.5) — 누락 시 해당 소스 조회만 manual_case_unavailable(기존 6소스·규정 무영향) "src/korean_rnd_regs_mcp/manual_case.json" = "korean_rnd_regs_mcp/manual_case.json" [tool.hatch.build.targets.sdist] # sdist에서 개발 전용 노트는 제외 — README/CHANGELOG/SECURITY/LICENSE만 PyPI 노출. include = [ "src/korean_rnd_regs_mcp/**/*.py", "src/korean_rnd_regs_mcp/**/*.yaml", "src/korean_rnd_regs_mcp/**/*.json", "tests/**/*.py", "docs/**/*.md", "README.md", "CHANGELOG.md", "SECURITY.md", "LICENSE", "env.example", ".gitignore", "pyproject.toml", ] exclude = [ "CLAUDE.md", ".claude/", ".claude/**", ] [tool.pytest.ini_options] testpaths = ["tests"]