🤖

본 콘텐츠의 이미지 및 내용은 AI로 생성되었습니다.

⚠️

본 콘텐츠의 이미지 및 내용을 무단으로 복제, 배포, 수정하여 사용할 경우 저작권법에 의해 법적 제재를 받을 수 있습니다.

이미지 로딩 중...

MCP 개요 및 아키텍처 완벽 가이드 - 슬라이드 1/7
A

AI Generated

2026. 2. 1. · 7 Views

MCP 개요 및 아키텍처 완벽 가이드

Model Context Protocol(MCP)의 핵심 개념부터 아키텍처까지 초급 개발자를 위해 쉽게 설명합니다. AI 애플리케이션 개발의 새로운 표준 프로토콜을 이해하고 실무에 적용할 수 있습니다.


목차

  1. MCP란_무엇인가
  2. MCP의_필요성과_장점
  3. MCP_아키텍처_개요
  4. 서버_클라이언트_모델
  5. 표준_프로토콜_이해
  6. MCP_생태계

1. MCP란 무엇인가

어느 날 김개발 씨가 AI 챗봇을 개발하다가 답답한 상황에 처했습니다. ChatGPT API를 연동했는데, 회사 내부 데이터베이스의 정보를 AI가 전혀 활용하지 못하는 겁니다.

"도대체 AI한테 우리 시스템 정보를 어떻게 전달해야 하지?"

**MCP(Model Context Protocol)**는 AI 모델과 외부 데이터 소스를 연결하는 표준 프로토콜입니다. 마치 USB가 다양한 기기를 컴퓨터에 연결하는 표준이 된 것처럼, MCP는 AI가 다양한 도구와 데이터에 접근하는 표준 방식을 제공합니다.

이를 통해 AI 애플리케이션이 파일 시스템, 데이터베이스, API 등과 안전하게 통신할 수 있습니다.

다음 코드를 살펴봅시다.

// MCP의 기본 구조를 이해하기 위한 예제
import { Server } from "@modelcontextprotocol/sdk/server";

// MCP 서버 인스턴스 생성
const server = new Server({
  name: "my-first-mcp-server",
  version: "1.0.0"
});

// AI가 사용할 수 있는 도구 정의
server.setRequestHandler("tools/list", async () => {
  return {
    tools: [
      { name: "get_weather", description: "날씨 정보 조회" },
      { name: "search_database", description: "데이터베이스 검색" }
    ]
  };
});

김개발 씨는 입사 6개월 차 주니어 개발자입니다. 최근 회사에서 AI 기반 고객 상담 시스템을 개발하라는 미션을 받았습니다.

ChatGPT API를 연동하는 것까지는 성공했는데, 문제가 생겼습니다. AI가 회사의 제품 정보나 고객 데이터에 전혀 접근하지 못하는 겁니다.

"고객이 주문 내역을 물어보면 어떻게 답변하지?" 김개발 씨는 고민에 빠졌습니다. 선배 개발자 박시니어 씨가 다가와 말했습니다.

"MCP라는 걸 들어본 적 있어요? Anthropic에서 만든 프로토콜인데, 바로 그 문제를 해결해줍니다." 그렇다면 MCP란 정확히 무엇일까요?

쉽게 비유하자면, MCP는 마치 만능 통역사와 같습니다. 여러분이 외국에 갔는데 현지 언어를 모른다고 상상해보세요.

통역사가 있으면 현지인과 자유롭게 대화할 수 있습니다. MCP도 마찬가지입니다.

AI 모델이라는 외국인이 회사 시스템이라는 현지 환경과 소통할 수 있도록 중간에서 통역해주는 역할을 합니다. MCP가 등장하기 전에는 어땠을까요?

개발자들은 각 AI 서비스마다 다른 방식으로 연동 코드를 작성해야 했습니다. OpenAI의 Function Calling, Anthropic의 Tool Use, Google의 방식이 모두 달랐습니다.

마치 USB가 없던 시절, 프린터마다 다른 케이블을 사용해야 했던 것과 같습니다. 2023년 11월, Anthropic은 이 문제를 해결하기 위해 Model Context Protocol을 발표했습니다.

이름에서 알 수 있듯이, 모델(AI)에게 컨텍스트(상황 정보)를 전달하는 프로토콜(약속된 규칙)입니다. 위의 코드를 살펴보겠습니다.

먼저 MCP SDK에서 Server 클래스를 가져옵니다. 이것이 MCP 서버의 핵심입니다.

서버 인스턴스를 생성할 때 이름과 버전을 지정합니다. 그리고 setRequestHandler로 AI가 사용할 수 있는 도구 목록을 정의합니다.

실제 현업에서는 이런 식으로 활용됩니다. 고객 상담 AI가 주문 조회, 재고 확인, 배송 추적 같은 도구를 MCP를 통해 사용할 수 있게 됩니다.

AI가 "이 고객의 최근 주문 내역을 확인해볼게요"라고 말하면서 실제로 데이터베이스를 조회하는 것이 가능해집니다. 다시 김개발 씨의 이야기로 돌아가 봅시다.

박시니어 씨의 설명을 들은 김개발 씨는 눈이 반짝였습니다. "그러니까 MCP를 쓰면 AI가 우리 시스템의 정보를 직접 가져올 수 있다는 거네요!"

실전 팁

💡 - MCP는 Anthropic이 만들었지만 오픈 프로토콜이므로 어떤 AI 모델과도 사용 가능합니다

  • 기존의 REST API나 GraphQL과 달리 AI 특화 통신 방식입니다

2. MCP의 필요성과 장점

김개발 씨가 MCP 없이 AI 연동을 시도해봤습니다. OpenAI용 코드 따로, Anthropic용 코드 따로, 데이터베이스 연결 코드 따로.

일주일 만에 코드가 스파게티처럼 엉켜버렸습니다. "이걸 유지보수하라고요?

불가능해요!"

MCP의 핵심 필요성은 표준화재사용성에 있습니다. 마치 전 세계 어디서든 같은 충전기를 사용할 수 있는 USB-C 표준처럼, MCP는 AI 연동의 표준을 제공합니다.

한 번 만든 MCP 서버는 어떤 AI 클라이언트에서든 사용할 수 있어 개발 생산성이 크게 향상됩니다.

다음 코드를 살펴봅시다.

// MCP 없이 AI 연동하는 기존 방식 (복잡함)
// OpenAI Function Calling
const openaiTools = [{
  type: "function",
  function: { name: "get_order", parameters: { /*...*/ } }
}];

// Anthropic Tool Use (다른 형식)
const anthropicTools = [{
  name: "get_order",
  input_schema: { /*...*/ }
}];

// MCP를 사용하면 하나의 코드로 모든 AI 지원
server.setRequestHandler("tools/call", async (request) => {
  if (request.params.name === "get_order") {
    const orderId = request.params.arguments.orderId;
    const order = await database.getOrder(orderId);
    return { content: [{ type: "text", text: JSON.stringify(order) }] };
  }
});

김개발 씨의 고통은 많은 개발자들이 겪는 현실입니다. AI 서비스마다 연동 방식이 다르니, 코드가 점점 복잡해지고 유지보수는 악몽이 됩니다.

박시니어 씨가 화이트보드에 그림을 그리며 설명했습니다. "MCP가 왜 필요한지 세 가지 관점에서 생각해봅시다." 첫 번째는 N x M 문제의 해결입니다.

AI 모델이 3개이고, 연동할 시스템이 5개라면 원래는 15개의 연동 코드가 필요합니다. 하지만 MCP를 사용하면 5개의 MCP 서버만 만들면 됩니다.

모든 AI 모델이 같은 MCP 서버를 사용할 수 있기 때문입니다. 두 번째는 보안과 권한 관리입니다.

AI가 회사 데이터베이스에 직접 접근하면 위험합니다. MCP 서버가 중간에서 문지기 역할을 합니다.

어떤 데이터에 접근할 수 있는지, 어떤 작업을 수행할 수 있는지 MCP 서버에서 철저히 통제합니다. 세 번째는 개발 생산성 향상입니다.

이미 만들어진 MCP 서버가 많이 공개되어 있습니다. GitHub, Slack, Google Drive 연동 MCP 서버를 가져다 쓰면 됩니다.

바퀴를 다시 발명할 필요가 없습니다. 위의 코드를 비교해보면 차이가 명확합니다.

MCP 없이는 OpenAI와 Anthropic 각각에 맞는 형식으로 도구를 정의해야 합니다. 형식이 미묘하게 다르기 때문에 실수하기도 쉽습니다.

반면 MCP를 사용하면 표준화된 하나의 형식으로 도구를 정의하고, 모든 AI 클라이언트가 이를 사용합니다. 실무에서의 이점은 더 큽니다.

신입 개발자가 들어와도 MCP 표준만 익히면 됩니다. 팀 전체가 같은 방식으로 코드를 작성하니 코드 리뷰도 수월해집니다.

김개발 씨가 물었습니다. "그러면 기존에 만들어둔 REST API는 버려야 하나요?" 박시니어 씨가 고개를 저었습니다.

"아니요, 기존 API를 MCP 서버로 감싸면 됩니다. 기존 자산을 그대로 활용할 수 있어요."

실전 팁

💡 - 기존 REST API가 있다면 MCP 래퍼로 감싸서 재사용하세요

  • 공개된 MCP 서버 목록은 GitHub의 awesome-mcp 저장소에서 확인할 수 있습니다

3. MCP 아키텍처 개요

"MCP가 좋다는 건 알겠는데, 실제로 어떻게 동작하는 거예요?" 김개발 씨가 물었습니다. 박시니어 씨는 화이트보드에 세 개의 박스를 그렸습니다.

"MCP 아키텍처는 생각보다 단순해요. 세 가지 구성 요소만 이해하면 됩니다."

MCP 아키텍처는 호스트(Host), 클라이언트(Client), 서버(Server) 세 가지 핵심 구성 요소로 이루어집니다. 호스트는 사용자가 상호작용하는 AI 애플리케이션이고, 클라이언트는 MCP 프로토콜을 구현한 연결 담당자이며, 서버는 실제 도구와 데이터를 제공하는 역할을 합니다.

다음 코드를 살펴봅시다.

// MCP 아키텍처의 세 가지 구성 요소

// 1. 호스트 (Host) - 사용자가 사용하는 AI 애플리케이션
// 예: Claude Desktop, VS Code + Copilot, 커스텀 챗봇

// 2. 클라이언트 (Client) - MCP 프로토콜 구현체
import { Client } from "@modelcontextprotocol/sdk/client";

const client = new Client({
  name: "my-ai-app",
  version: "1.0.0"
});

// 3. 서버 (Server) - 도구와 데이터 제공
import { Server } from "@modelcontextprotocol/sdk/server";

const server = new Server({
  name: "company-data-server",
  version: "1.0.0"
});

// 클라이언트와 서버가 연결되면 AI가 도구 사용 가능
await client.connect(transport);
const tools = await client.listTools();

박시니어 씨가 그린 그림을 보며 김개발 씨는 고개를 갸웃거렸습니다. "호스트와 클라이언트가 다른 건가요?" "좋은 질문이에요.

비유로 설명해드릴게요." 박시니어 씨가 말했습니다. **호스트(Host)**는 마치 호텔과 같습니다.

손님(사용자)이 머무는 공간이죠. Claude Desktop이나 VS Code 같은 AI 애플리케이션이 호스트입니다.

사용자가 직접 상호작용하는 대상입니다. **클라이언트(Client)**는 호텔의 컨시어지 서비스와 같습니다.

손님이 "저녁 예약 좀 해주세요"라고 요청하면 컨시어지가 대신 레스토랑에 연락합니다. 클라이언트도 마찬가지로, 호스트의 요청을 받아 서버와 통신하는 중개 역할을 합니다.

**서버(Server)**는 실제 서비스를 제공하는 레스토랑, 택시 회사, 관광지 같은 존재입니다. 데이터베이스 조회, 파일 읽기, 외부 API 호출 같은 실제 작업을 수행합니다.

중요한 점은 하나의 호스트에 여러 클라이언트가 있을 수 있고, 각 클라이언트는 하나의 서버와 연결된다는 것입니다. 마치 호텔에 여러 컨시어지가 있고, 각각 다른 분야를 담당하는 것과 같습니다.

위의 코드에서 Client와 Server를 각각 생성하는 것을 볼 수 있습니다. 클라이언트가 connect 메서드로 서버에 연결하면, listTools로 사용 가능한 도구 목록을 가져올 수 있습니다.

실무에서는 보통 이렇게 구성합니다. 회사에서 Claude를 사용한다면, Claude Desktop이 호스트가 됩니다.

여기에 데이터베이스 MCP 서버, 파일 시스템 MCP 서버, Slack MCP 서버 등 여러 서버를 연결합니다. 사용자가 "지난주 매출 데이터 알려줘"라고 하면, 적절한 MCP 서버가 데이터베이스에서 정보를 가져옵니다.

김개발 씨가 감탄했습니다. "마치 레고 블록처럼 필요한 서버를 끼워 넣으면 되는 거네요!"

실전 팁

💡 - 하나의 호스트에 여러 MCP 서버를 동시에 연결할 수 있습니다

  • 호스트와 클라이언트는 보통 하나의 애플리케이션 안에 함께 있습니다

4. 서버 클라이언트 모델

김개발 씨가 MCP 서버를 직접 만들어보기로 했습니다. "서버와 클라이언트가 어떻게 대화하는지 직접 코드로 보면 이해가 빠를 것 같아요." 박시니어 씨가 고개를 끄덕였습니다.

"좋아요, 실제로 돌아가는 예제를 만들어봅시다."

MCP의 서버-클라이언트 모델은 **요청(Request)**과 응답(Response) 패턴을 따릅니다. 클라이언트가 서버에 "어떤 도구가 있어?", "이 도구 실행해줘" 같은 요청을 보내면, 서버가 적절한 응답을 반환합니다.

이 통신은 JSON-RPC 2.0 형식을 사용하여 표준화되어 있습니다.

다음 코드를 살펴봅시다.

// MCP 서버 구현 예제
import { Server } from "@modelcontextprotocol/sdk/server";
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio";

const server = new Server({
  name: "weather-server",
  version: "1.0.0"
});

// 도구 목록 요청 처리
server.setRequestHandler("tools/list", async () => ({
  tools: [{
    name: "get_weather",
    description: "도시의 현재 날씨를 조회합니다",
    inputSchema: {
      type: "object",
      properties: { city: { type: "string" } },
      required: ["city"]
    }
  }]
}));

// 도구 실행 요청 처리
server.setRequestHandler("tools/call", async (request) => {
  const { name, arguments: args } = request.params;
  if (name === "get_weather") {
    const weather = await fetchWeather(args.city);
    return { content: [{ type: "text", text: weather }] };
  }
});

"자, 이제 실제 코드를 보면서 이해해봅시다." 박시니어 씨가 화면을 공유했습니다. MCP 서버-클라이언트 통신은 마치 식당 주문 시스템과 같습니다.

손님(클라이언트)이 "메뉴판 주세요"라고 하면 웨이터(서버)가 메뉴판을 가져다줍니다. 손님이 "짜장면 하나요"라고 주문하면 웨이터가 주방에 전달하고 음식을 가져옵니다.

MCP에서도 똑같은 일이 일어납니다. 클라이언트가 tools/list 요청을 보내면 서버가 사용 가능한 도구 목록을 반환합니다.

클라이언트가 tools/call 요청으로 특정 도구 실행을 요청하면 서버가 도구를 실행하고 결과를 반환합니다. 위의 코드를 자세히 살펴봅시다.

먼저 Server 인스턴스를 생성합니다. 이름과 버전은 클라이언트가 서버를 식별하는 데 사용됩니다.

setRequestHandler로 두 가지 요청을 처리합니다. tools/list는 도구 목록 요청입니다.

여기서 get_weather라는 도구를 정의하고, 이 도구가 어떤 입력을 받는지 inputSchema로 명시합니다. tools/call은 실제 도구 실행 요청입니다.

요청에서 도구 이름과 인자를 추출하고, 해당 도구의 로직을 실행한 뒤 결과를 반환합니다. 여기서 주목할 점은 **입력 스키마(inputSchema)**입니다.

AI 모델은 이 스키마를 보고 도구에 어떤 값을 전달해야 하는지 이해합니다. 사용자가 "서울 날씨 알려줘"라고 하면, AI가 스키마를 참고해 { city: "서울" } 형태로 인자를 구성합니다.

실무에서 주의할 점이 있습니다. 도구의 description은 AI가 언제 이 도구를 사용할지 판단하는 근거가 됩니다.

명확하고 구체적으로 작성해야 AI가 적절한 상황에서 도구를 호출합니다. 김개발 씨가 코드를 따라 치면서 물었습니다.

"에러 처리는 어떻게 하나요?" 박시니어 씨가 답했습니다. "좋은 질문이에요.

MCP는 JSON-RPC 2.0 표준을 따르기 때문에, 에러도 표준 형식으로 반환하면 됩니다."

실전 팁

💡 - 도구의 description은 AI가 도구 선택의 근거로 사용하므로 명확하게 작성하세요

  • inputSchema는 JSON Schema 형식을 따릅니다

5. 표준 프로토콜 이해

"MCP가 표준 프로토콜이라고 했는데, 구체적으로 어떤 표준을 따르는 건가요?" 김개발 씨의 질문에 박시니어 씨가 미소 지었습니다. "핵심은 JSON-RPC 2.0이에요.

이미 널리 쓰이는 검증된 표준이죠."

MCP는 JSON-RPC 2.0 프로토콜을 기반으로 합니다. JSON-RPC는 JSON 형식으로 원격 프로시저를 호출하는 경량 프로토콜입니다.

MCP는 여기에 AI 특화 기능을 추가하여, 도구(Tools), 리소스(Resources), 프롬프트(Prompts) 세 가지 핵심 기능을 정의합니다.

다음 코드를 살펴봅시다.

// JSON-RPC 2.0 형식의 MCP 메시지 구조

// 1. 요청 메시지 (클라이언트 → 서버)
const request = {
  jsonrpc: "2.0",
  id: 1,
  method: "tools/call",
  params: {
    name: "get_weather",
    arguments: { city: "서울" }
  }
};

// 2. 응답 메시지 (서버 → 클라이언트)
const response = {
  jsonrpc: "2.0",
  id: 1,
  result: {
    content: [{ type: "text", text: "서울의 현재 기온은 15도입니다." }]
  }
};

// 3. 에러 응답
const errorResponse = {
  jsonrpc: "2.0",
  id: 1,
  error: { code: -32600, message: "Invalid Request" }
};

박시니어 씨가 설명을 이어갔습니다. "JSON-RPC를 선택한 이유가 있어요." JSON-RPC 2.0은 마치 국제 표준 우편 양식과 같습니다.

어느 나라에서 보내든 같은 양식을 사용하면 전 세계 어디서든 이해할 수 있습니다. JSON-RPC도 마찬가지로, 어떤 프로그래밍 언어로 구현하든 같은 형식의 메시지를 주고받습니다.

위의 코드에서 요청 메시지의 구조를 살펴봅시다. jsonrpc는 프로토콜 버전을 나타냅니다.

id는 요청과 응답을 매칭하는 식별자입니다. method는 호출할 기능의 이름이고, params는 전달할 인자입니다.

응답 메시지는 같은 id를 가지고 있어서 어떤 요청에 대한 응답인지 알 수 있습니다. result에 실제 결과가 담깁니다.

에러가 발생하면 result 대신 error 필드가 포함됩니다. MCP는 JSON-RPC 위에 세 가지 핵심 기능을 정의합니다.

첫째, **Tools(도구)**입니다. AI가 실행할 수 있는 함수들입니다.

날씨 조회, 데이터베이스 검색, 이메일 발송 같은 작업을 수행합니다. 둘째, **Resources(리소스)**입니다.

AI가 읽을 수 있는 데이터입니다. 파일 내용, 데이터베이스 레코드, 웹페이지 같은 정보를 제공합니다.

도구와 달리 리소스는 읽기 전용입니다. 셋째, **Prompts(프롬프트)**입니다.

서버가 정의한 프롬프트 템플릿입니다. "코드 리뷰 해줘", "버그 찾아줘" 같은 미리 정의된 프롬프트를 재사용할 수 있습니다.

김개발 씨가 고개를 끄덕였습니다. "그러니까 도구는 행동, 리소스는 정보, 프롬프트는 템플릿인 거네요!" 박시니어 씨가 칭찬했습니다.

"정확해요. 이 세 가지를 조합하면 거의 모든 AI 연동 시나리오를 구현할 수 있어요."

실전 팁

💡 - 도구는 부작용(side effect)이 있는 작업, 리소스는 읽기 전용 작업에 사용하세요

  • JSON-RPC의 에러 코드는 표준이 정해져 있으니 공식 문서를 참고하세요

6. MCP 생태계

"MCP를 직접 다 만들어야 하나요?" 김개발 씨가 걱정스럽게 물었습니다. 박시니어 씨가 웃으며 답했습니다.

"다행히 이미 풍성한 생태계가 있어요. 많은 MCP 서버가 오픈소스로 공개되어 있고, 개발 도구도 잘 갖춰져 있습니다."

MCP 생태계는 공식 SDK, 커뮤니티 서버, 호환 클라이언트로 구성됩니다. TypeScript와 Python 공식 SDK가 있고, GitHub, Slack, PostgreSQL 등 다양한 서비스용 MCP 서버가 이미 공개되어 있습니다.

Claude Desktop, Cursor IDE 등 여러 AI 도구가 MCP를 지원합니다.

다음 코드를 살펴봅시다.

// 공개된 MCP 서버 설정 예제 (Claude Desktop)
// ~/Library/Application Support/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "filesystem": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-filesystem", "/Users/me/Documents"]
    },
    "github": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-github"],
      "env": { "GITHUB_TOKEN": "your-token-here" }
    },
    "postgres": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-postgres"],
      "env": { "DATABASE_URL": "postgresql://..." }
    }
  }
}

박시니어 씨가 브라우저를 열어 GitHub를 보여주었습니다. "MCP 공식 저장소를 한번 볼까요?" MCP 생태계는 마치 앱스토어와 같습니다.

필요한 앱을 직접 만들 수도 있지만, 이미 잘 만들어진 앱을 다운로드해서 사용하는 게 훨씬 효율적입니다. MCP도 마찬가지로, 이미 많은 서버가 공개되어 있어서 가져다 쓰면 됩니다.

공식 SDK부터 살펴봅시다. Anthropic에서 TypeScript SDK와 Python SDK를 제공합니다.

두 SDK 모두 클라이언트와 서버 구현에 필요한 모든 기능을 포함합니다. npm이나 pip로 간단히 설치할 수 있습니다.

공개 서버 목록은 점점 늘어나고 있습니다. 파일 시스템 접근용 서버, GitHub 연동 서버, PostgreSQL/MySQL 데이터베이스 서버, Slack/Discord 메시징 서버, Google Drive/Dropbox 클라우드 저장소 서버 등이 있습니다.

위의 코드는 Claude Desktop에서 MCP 서버를 설정하는 예제입니다. JSON 설정 파일에 사용할 서버를 나열하면 됩니다.

command는 서버를 실행하는 명령어이고, args는 인자, env는 환경 변수입니다. 호환 클라이언트도 다양합니다.

Claude Desktop은 기본적으로 MCP를 지원합니다. Cursor IDE, Zed 에디터 등 개발 도구들도 MCP 지원을 추가하고 있습니다.

VS Code 확장도 개발 중입니다. 김개발 씨가 설정 파일을 보며 물었습니다.

"이렇게 간단해요? npx로 바로 실행되나요?" 박시니어 씨가 답했습니다.

"네, 공식 서버들은 npm에 배포되어 있어서 npx로 바로 실행할 수 있어요. 별도 설치 없이요." 커뮤니티도 활발합니다.

awesome-mcp 저장소에는 커뮤니티가 만든 다양한 MCP 서버 목록이 정리되어 있습니다. Discord 채널에서는 개발자들이 활발히 정보를 공유합니다.

김개발 씨의 눈이 반짝였습니다. "그럼 저도 우리 회사용 MCP 서버를 만들어서 공유할 수 있겠네요!" 박시니어 씨가 고개를 끄덕였습니다.

"물론이죠. 그게 바로 오픈 생태계의 힘이에요."

실전 팁

💡 - 먼저 공식 서버로 시작해보고, 필요한 기능이 없으면 직접 개발하세요

  • awesome-mcp 저장소를 즐겨찾기해두면 새로운 서버를 쉽게 찾을 수 있습니다

이상으로 학습을 마칩니다. 위 내용을 직접 코드로 작성해보면서 익혀보세요!

#MCP#ModelContextProtocol#AI통합#서버클라이언트#표준프로토콜#Spring,AI,MCP

댓글 (0)

댓글을 작성하려면 로그인이 필요합니다.