Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

[RFC] MCP 도구 계층 재구조화 및 네이밍 컨벤션 정립

Open
#48 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
25/100
Issue type
Refactor
Clarity
Needs clarification
Activity status
Stale
Tech stack
python
Domain
api, tooling

Research direction

No files or tests are named. Start by locating the MCP tool registrations corresponding to the listed raw and atomic tools, then review the proposed composite tools and migration plan. Done means the layer structure and naming decisions are resolved, the selected tools are migrated with deprecation handling, and the README or guide is updated.

Written by the indexing model from the issue text.

Description

[RFC] MCP 도구 계층 재구조화 및 네이밍 컨벤션 정립

배경

외부 피드백:

"일반인을 위한 건지, 개발자를 위한 건지 모르겠다"

PlayMCP 대회 출품을 앞두고, 도구 구조의 명확한 계층화와 일관된 네이밍이 필요.


제안: 3계층 도구 구조

레이어 접두어 용도 타겟
Composite analyze_ 여러 데이터 조합, 완성된 결과 일반 사용자
Atomic get_, search_, list_ 단일 리소스 조회 중급 사용자
Raw raw_ 270개 API 직접 탐색/호출 개발자

LLM 사용 우선순위: Composite → Atomic → Raw


Breaking Changes

도구 이름 변경
현재 변경 사유
call_api_raw raw_call 접두어 통일
list_api_services raw_list Raw 레이어 명시
get_api_spec raw_spec Raw 레이어 명시
get_assembly_info info 메타 도구 단순화 (검토 필요)

신규 도구 (Composite 레이어)

analyze_bill
  • 입력: bill_id 또는 keyword
  • 출력: 의안 기본정보 + 제안이유 + 회의록 목록 + 발의자 정보
  • 내부: get_bill_details + get_meeting_records + get_member_info 조합
analyze_member
  • 입력: 의원명
  • 출력: 의원 정보 + 최근 발의 의안 + 소속 위원회
  • 내부: get_member_info + search_bills + get_committee_list 조합
analyze_legislation_trends (선택)
  • 입력: 기간, 키워드(선택)
  • 출력: 발의 건수, 주요 키워드, 처리 현황 통계
  • 비고: 범위 제한 필요 (최근 30일, 상위 10개 등)

유지 도구 (Atomic 레이어)

변경 없음:

  • get_bill_details
  • get_bill_info
  • get_recent_bills
  • search_bills
  • get_member_info
  • get_committee_list
  • get_committee_members
  • get_meeting_records
  • search_meetings
  • get_plenary_schedule

최종 도구 목록 (예상 14개)

# Composite (3개)
analyze_bill
analyze_member
analyze_legislation_trends

# Atomic (10개)
get_bill_details
get_bill_info
get_recent_bills
search_bills
get_member_info
get_committee_list
get_committee_members
get_meeting_records
search_meetings
get_plenary_schedule

# Raw (3개)
raw_call
raw_list
raw_spec

# Meta (1개)
info (또는 ping 유지)

마이그레이션 계획

  1. 신규 도구 먼저 추가 (non-breaking)
  2. 기존 Raw 도구에 deprecation 경고 추가
  3. 다음 마이너 버전에서 이름 변경 적용
  4. README/가이드 업데이트

논의 필요 사항

  • get_assembly_info → info 변경 여부
  • ping 도구 유지 여부
  • analyze_legislation_trends 구현 범위
  • 버전 전략 (semver major bump?)

관련

  • PlayMCP 대회 마감: 2025-01-18
  • 심사 기준: 창의성, 편의성, 기술적 안정성
Dominant language
Python
Stars
0
Forks
0
PR merge metrics
No merged PRs in 30d

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from StatPan/AssemblyMCP

All issues in StatPan/AssemblyMCP

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.