スキル一覧に戻る
ChangooLee

tool-development

by ChangooLee

한국 법제처 OPEN API를 통합한 Model Context Protocol(MCP) 서버입니다. 130개 이상의 포괄적인 도구를 통해 법령, 부가서비스, 행정규칙, 자치법규, 판례, 위원회결정문, 조약, 별표서식, 학칙공단, 법령용어, 맞춤형, 지식베이스, 특별행정심판, 중앙부처해석 등 모든 법률 정보에 대한 접근을 제공합니다.

1🍴 0📅 2026年1月23日
GitHubで見るManusで実行

SKILL.md


name: tool-development description: 법제처 API를 MCP tool로 추가할 때 사용. @mcp.tool 데코레이터, Annotated 타입힌트, with_context 패턴 필수. 새로운 tool 파일 생성 또는 기존 파일 수정 시 참조.

Tool 개발 가이드

법제처 API 기능을 MCP tool로 노출하는 방법입니다.

핵심 패턴

1. 기본 구조

from typing import Annotated
from mcp_kr_legislation.server import mcp
from mcp.types import TextContent
from mcp_kr_legislation.utils.ctx_helper import with_context

@mcp.tool(
    name="tool_name",
    description="도구 설명 (LLM이 이해할 수 있도록 명확하게)",
)
def tool_function(
    param1: Annotated[str, "파라미터 설명"],
) -> TextContent:
    result = with_context(
        None,  # ctx 파라미터 제거됨
        "tool_name",
        lambda context: context.law_api.search(param1)
    )
    return TextContent(type="text", text=str(result))

2. 필수 규칙

  • ctx 파라미터 절대 사용 금지: with_context(None, ...) 사용
  • Annotated 필수: 모든 파라미터에 Annotated[Type, "description"] 사용
  • with_context() 래핑: 모든 API 호출은 with_context()로 래핑

3. Tool 파일 선택

카테고리별 tool 파일:

  • law_tools.py - 법령 관련
  • precedent_tools.py - 판례 관련
  • committee_tools.py - 위원회결정문 관련
  • 기타 카테고리별 파일

4. 모듈 등록

새 tool 파일 생성 시 server.pytool_modules 리스트에 추가:

tool_modules = [
    "law_tools",
    "new_tool_module",  # 추가
]

상세 예제

복잡한 구현 예제는 examples.md 참조.

유틸리티 스크립트

Tool 시그니처 검증:

python scripts/validate_tool.py src/mcp_kr_legislation/tools/law_tools.py

Tool 실행 테스트:

python scripts/test_tool.py search_law "개인정보보호법"

관련 파일

スコア

総合スコア

70/100

リポジトリの品質指標に基づく評価

SKILL.md

SKILL.mdファイルが含まれている

+20
LICENSE

ライセンスが設定されている

+10
説明文

100文字以上の説明がある

+10
人気

GitHub Stars 100以上

0/15
最近の活動

3ヶ月以内に更新がある

0/10
フォーク

10回以上フォークされている

0/5
Issue管理

オープンIssueが50未満

+5
言語

プログラミング言語が設定されている

+5
タグ

1つ以上のタグが設定されている

0/5

レビュー

💬

レビュー機能は近日公開予定です