본문 바로가기

전체 글198

MCP 기반 AI Agent와 Skill.md를 활용한 Tool Calling: MCP Server · MCP Client · SKILL.md · Tool Calling · Agent Loop 이번 코드는 **“MCP 서버가 제공하는 Tool을 LLM이 사용하고, 그 위에 로컬 SKILL.md를 시스템 지침으로 얹는 구조”**를 이해하는 것이 핵심입니다.특히 이번 예제에서 가장 중요한 것은 MCP와 Skill이 서로 같은 것이 아니라 역할이 완전히 다르다는 점입니다.MCP 서버 → 실제 기능과 데이터를 제공MCP 클라이언트 → 서버와 LLM 사이를 연결하고 도구를 전달·실행OpenAI LLM → 무엇을 해야 할지 판단하고 결과를 문장으로 만듦SKILL.md → LLM에게 “이 업무를 어떤 절차와 기준으로 수행할지” 알려주는 업무 지침서아래에서 코드 한 줄씩 → 실행 흐름 → 전체 구조 → MCP Prompt/Resource와 Skill의 차이 → 실제 실행 예시 순서로 설명하겠습니다. 이번 예.. 2026. 10. 4.
A2A. Weather Client 이 코드는 크게 보면 다음 한 문장입니다."Weather Server의 Agent Card를 먼저 확인하고 → A2A Client를 만들고 → 사용자의 질문을 Message로 포장하고 → Request로 한 번 더 포장해서 → 서버에 보내고 → 서버가 보내는 응답 이벤트를 받아서 → Client를 종료한다." 전체 구조부터 잡고 하나씩 보겠습니다.1. 먼저 전체 그림을 이해하자현재 우리가 만든 프로그램은 A2A Client입니다.상대방에는 앞에서 만든 Weather Agent Server가 실행되고 있습니다.┌─────────────────────────────┐│ A2A Weather Client ││ ││ 우리가 지금 공부하는 코드 .. 2026. 10. 3.
A2A. Weather Agent Server a2a-sdk 1.2.0 기반 — 코드의 구조부터 실행 흐름까지특히 이번 코드에서 중요한 점은 다음과 같습니다.WeatherCoreAgent: 사용자의 질문을 분석하고 날씨 정보를 반환하는 핵심 에이전트WeatherAgentExecutor: 핵심 에이전트를 A2A 서버의 실행 구조에 연결하는 실행기EventQueue: 에이전트가 생성한 응답을 A2A 서버에 전달하는 이벤트 큐DefaultRequestHandler: 외부에서 들어온 A2A 요청을 관리하는 요청 처리기AgentCard: 외부 에이전트가 우리 서버의 기능과 연결 정보를 확인할 수 있도록 제공하는 명세FastAPI와 A2A Routes: 실제 HTTP 요청을 받아 처리하는 웹 서버의 구조이번에는 단순히 각 코드가 무엇을 하는지 설명하는 데 그치.. 2026. 10. 3.
AI Agent(3/3): MCP(Model Context Protocol) 서버와 MCP 클라이언트(LLM 에이전트) 세번째 코드는 MCP(Model Context Protocol) 서버와 MCP 클라이언트(LLM 에이전트)가 SSE(Server-Sent Events, HTTP 기반) 방식으로 네트워크를 통해 통신하도록 구현된 예제입니다. 이전 Stdio(표준 입출력) 방식과 달리, 서버와 클라이언트가 서로 별도의 프로세스/컴퓨터로 분리될 수 있는 웹 표준 서버 architecture 형태를 띱니다. 두 파일의 구조와 작동 원리를 핵심 위주로 명쾌하게 해설해 드리겠습니다.1. 시스템 구조 개요┌────────────────────────────────┐ HTTP GET/POST (SSE) ┌────────────────────────────────┐│ 첫 번째 파일: MCP Server .. 2026. 10. 3.
AI Agent(2/3): 다단계 도구 호출(Multi-step Tool Calling) 및 자율적 루프(Autonomous Re-act Loop) 첫 번째 코드와 비교했을 때, 이번 코드는 질문 하나를 해결하기 위해 여러 도구를 연쇄적으로 판단하여 호출하는 에이전트 구조로 진화했습니다. 다단계 도구 호출(Multi-step Tool Calling) 및 자율적 루프(Autonomous Re-act Loop)를 구현한 대단히 완성도 높은 AI 에이전트 코드입니다. 1. 이 코드가 작동하는 전체 시나리오 (Chaining Process)사용자가 "현재 서울의 평균 기온을 계산해 줘."라는 질문을 보냈을 때 내부 동작 순서입니다. [사용자 질문] "서울의 평균 기온 계산해 줘" │ ▼ .. 2026. 10. 3.
AI Agent(1/3): Function Calling(도구 호출) 에이전트의 정석 OpenAI의 최신 Responses API와 Open-Meteo API를 활용해, 사용자의 질문에서 도시명을 추출하고 날씨 정보를 조회해 자연어로 변환해주는 Function Calling(도구 호출) 에이전트의 정석적인 구조입니다.전체적인 코드 흐름과 스키마 설계, 그리고 실제 동작 구조까지 핵심을 짚어 설명해 드립니다. 1. 전체 실행 흐름 (Execution Lifecycle)[사용자 질문] "서울특별시의 오늘 날씨 알려줘" │ ▼[1차 LLM 호출] client.responses.create() │ ──> LLM 판단: "직접 답할 수 없으니 get_weather 도구를 호출하자" ▼[도구 실행] get_weather(location="서울특별시") .. 2026. 10. 3.
반응형