tool calling 4

AI Agent 승인 정책 설계: 읽기·쓰기·중요·파괴 작업을 구분하는 방법

AI Agent에게 “지난 회의를 찾아 요약해 줘”라고 요청했습니다.Agent는 회의 목록을 조회하고, 대상 회의를 찾은 뒤 요약 작업을 요청할 수 있습니다. 여기까지는 비교적 자연스럽습니다.그런데 요청이 “다른 조직으로 옮겨 줘”, “외부 담당자에게 전송해 줘”, “이 회의를 영구 삭제해 줘”라면 이야기가 달라집니다.모두 같은 Tool Call이지만 결과의 영향은 같지 않습니다.조회 실패 → 다시 확인할 수 있음생성 중복 → 데이터 정리와 비용 발생잘못된 전송 → 외부 노출과 업무 사고영구 삭제 → 복구 불가능할 수 있음모델이 사용자의 의도를 잘 이해했다는 사실은 실행 권한을 얻었다는 뜻이 아닙니다.운영 가능한 AI Agent에는 다음 네 질문에 각각 답하는 통제가 필요합니다.인증 (Authen..

AI Agent · MCP 2026.07.29

자연어에서 MCP Tool Call까지: 통합 테스트 (Integration Test) 시나리오 설계

자연어에서 MCP Tool Call까지: 통합 테스트 (Integration Test) 시나리오 설계AI Agent에게 “내 최근 회의 요약을 보여줘”라고 요청했을 때 자연스러운 답변이 돌아왔다고 가정해 보겠습니다.겉으로는 성공처럼 보여도 내부에서는 다음과 같은 문제가 숨어 있을 수 있습니다.다른 사용자의 회의를 조회했다.목록에서 얻은 식별자가 아니라 모델이 만든 가짜 ID를 사용했다.요약 조회 전에 불필요한 변경 Tool을 호출했다.권한 오류를 “회의가 없습니다”로 잘못 설명했다.같은 요청을 재시도하면서 생성 Tool을 두 번 실행했다.사용자 승인 없이 삭제나 전송을 수행했다.따라서 MCP 기반 Agent의 품질은 최종 문장만으로 판단할 수 없습니다.자연어 요청 │ ▼의도·대상 해석 │ ..

멀티 LLM Agent Core 설계: GPT·Claude·Gemini를 교체 가능한 Provider로 연결하기

멀티 LLM Agent Core 설계: GPT·Claude·Gemini를 교체 가능한 Provider로 연결하기AI Agent를 처음 만들 때는 특정 모델의 SDK를 직접 호출하는 방식이 가장 빠릅니다.response = provider_sdk.generate( model=model_name, messages=messages, tools=tools,)문제는 두 번째 모델을 연결할 때 시작됩니다.System 지시를 넣는 위치가 다릅니다.Message와 콘텐츠 블록 (Content Block)의 구조가 다릅니다.도구 호출 (Tool Call)과 도구 결과 (Tool Result)를 연결하는 ID가 다릅니다.스트리밍 이벤트 (Streaming Event)의 시작·증분·완료 순서가 다릅니다.정상..

기업용 MCP Tool 설계 원칙: 이름, 설명, 입력 스키마와 권한 경계

MCP Server에 Tool을 많이 등록한다고 AI Agent의 업무 수행 능력이 자동으로 좋아지지는 않습니다.모델이 비슷한 Tool 사이에서 잘못된 기능을 선택하거나, 필수 인자를 빠뜨리거나, 조회 요청에 변경 Tool을 호출한다면 Tool 개수는 오히려 혼란을 키웁니다. 반대로 Tool의 이름과 설명, 입력·출력 스키마, 권한 경계가 명확하면 비교적 단순한 Agent도 안정적으로 업무 기능을 사용할 수 있습니다.MCP Tool은 단순한 API 래퍼가 아닙니다. 모델에게는 선택 가능한 행동의 계약이고, 사용자에게는 실제 시스템에 영향을 주는 실행 경계이며, 서버에게는 반드시 검증해야 하는 외부 입력입니다.이번 글에서는 기업용 MCP Tool을 설계할 때 실무에서 먼저 정해야 할 기준을 살펴보겠습니다...

AI Agent · MCP 2026.07.29