Step 04: Tool 정의
0 studying now
core 60 min
Tool 정의
rmcp Tool 스키마와 파라미터를 정의하는 방법을 학습합니다.
Execute this step
Run from step folder:
cd steps/04_tool_schema && cargo runRun from project root:
cargo run -p step04_tool_schemaStep 4: Tool 정의
학습 목표
- rmcp Tool 스키마, 파라미터 정의
- JSON Schema 기반 Tool 인터페이스
핵심 개념
Agent가 사용할 수 있는 도구(Tool)를 정의합니다. 각 Tool은 이름, 설명, 파라미터 스키마를 가집니다.
Tool 구조
1Tool { 2 name: "read_file", 3 description: "Read contents of a file", 4 parameters: json!({ 5 "type": "object", 6 "properties": { 7 "path": { "type": "string", "description": "File path" } 8 }, 9 "required": ["path"] 10 }) 11}
Tool 호출 흐름
- LLM에 사용 가능한 Tool 목록 전달
- LLM이 적절한 Tool 선택 및 인자 생성
- Tool 실행 후 결과를 LLM에 반환
LLM ──▶ "read_file(path: ./main.rs)" ──▶ Tool 실행 │ LLM ◀── "fn main() { ... }" ◀──────┘
소스 코드
1//! Sample Step 4: Tool 정의 2 3fn main() { 4 println!("=== Step 4: Tool 정의 ===\n"); 5 println!("TODO: rmcp Tool 스키마"); 6}
체크리스트
- [ ] Tool 구조체 이해
- [ ] JSON Schema 파라미터 정의
- [ ] Tool 목록을 Provider에 전달하는 방법 이해