본문 바로가기

인공지능

OpenAI Agents SDK, MCP 공식 지원! AI 모델과 도구 연결이 더 쉬워진다

728x90
반응형

AI 모델이 현실적인 애플리케이션에서 활용되려면 다양한 데이터 소스 및 도구와의 연결이 필수적입니다. 그러나 각기 다른 API와 인터페이스를 직접 구현하는 것은 많은 시간과 노력이 필요합니다.

이 문제를 해결하기 위해 OpenAI가 Agents SDK에서 MCP(Model Context Protocol)를 공식 지원하기 시작했습니다!

💡 이제 OpenAI Agents SDK를 사용하면, 복잡한 통합 과정 없이 다양한 외부 도구와 AI 모델을 손쉽게 연결할 수 있습니다.

이번 글에서는 MCP의 개념, OpenAI Agents SDK에서의 MCP 지원 방식, 그리고 이를 활용하는 방법을 집중적으로 살펴보겠습니다.

반응형

🔹 MCP(Model Context Protocol)란?

📌 MCP의 개념과 역할

MCP(Model Context Protocol)는 AI 모델과 외부 데이터 소스, 도구들을 연결하는 표준 프로토콜입니다. 쉽게 말해, AI 모델이 파일 시스템, API, 데이터베이스 등과 쉽게 연동될 수 있도록 돕는 "표준 인터페이스" 역할을 합니다.

🖥️ AI 모델과 외부 시스템을 연결하는 "USB-C 포트" 같은 존재!

이제 OpenAI의 Agents SDK에서 MCP를 공식적으로 지원하면서, AI 애플리케이션 개발이 더욱 쉬워졌습니다.

📌 OpenAI가 MCP를 공식 지원하는 이유

  1. AI 모델의 데이터 접근성 향상
    • 파일, API, 데이터베이스 등의 데이터를 쉽게 활용 가능
    • 기존 대비 더 빠르고 표준화된 데이터 연동 가능
  2. 개발 복잡도 감소
    • OpenAI Agents SDK에서 MCP 서버를 자동으로 인식 및 활용 가능
    • 개별적인 API 연동 코드 작성 없이 즉시 사용 가능
  3. 확장성 강화
    • 새로운 MCP 서버를 쉽게 추가하여 AI 모델의 기능 확장 가능
    • OpenAI 기반 AI 솔루션 개발에 더욱 유리한 환경 제공

🔹 OpenAI Agents SDK에서 MCP 서버 활용 방법

1️⃣ OpenAI Agents SDK에서 MCP 서버 추가하기

OpenAI Agents SDK에서는 다양한 MCP 서버를 쉽게 추가할 수 있습니다.

MCP 서버 추가 코드 예제

from openai import Agent
from openai.mcp import MCPServerStdio, MCPServerSse

# MCP 서버 설정 (로컬 및 원격)
mcp_server_1 = MCPServerStdio(params={"command": "npx", "args": ["@modelcontextprotocol/server-filesystem"]})
mcp_server_2 = MCPServerSse(url="https://example.com/mcp-server")

# OpenAI Agents SDK에서 MCP 서버 활용
agent = Agent(
    name="Assistant",
    instructions="Use the tools to achieve the task",
    mcp_servers=[mcp_server_1, mcp_server_2]
)

MCP 서버 활용 포인트

  • 로컬(MCPServerStdio) 또는 원격(MCPServerSse) MCP 서버를 등록 가능
  • OpenAI Agents SDK가 자동으로 MCP 서버의 도구 목록을 가져옴
  • 개발자는 복잡한 API 연동 없이 바로 AI 모델을 MCP와 연결 가능

🔹 MCP 서버의 종류와 OpenAI 지원 방식

OpenAI Agents SDK는 아래 두 가지 MCP 서버를 공식적으로 지원합니다.

1️⃣ stdio 서버 (로컬 MCP 서버 지원)

  • 애플리케이션의 하위 프로세스로 실행
  • 로컬에서 빠르게 실행 가능
  • 파일 시스템 접근, 로컬 데이터 분석 등에 적합

예제 코드

async with MCPServerStdio(
    params={"command": "npx", "args": ["@modelcontextprotocol/server-filesystem", "samples_dir"]}
) as server:
    tools = await server.list_tools()

2️⃣ HTTP over SSE 서버 (원격 MCP 서버 지원)

  • 네트워크를 통해 원격 MCP 서버에 연결
  • 클라우드 기반 애플리케이션에 적합
  • OpenAI Agents SDK가 직접 원격 MCP 서버와 통신 가능

예제 코드

async with MCPServerSse(url="https://example.com/mcp-server") as server:
    tools = await server.list_tools()

OpenAI MCP 지원의 핵심 장점

  • OpenAI Agents SDK에서 MCP 서버의 도구 목록을 자동으로 관리
  • 개발자는 복잡한 API 연동 없이 바로 사용 가능
  • OpenAI 기반 AI 모델이 더욱 유연한 데이터 소스 활용 가능

🔹 성능 최적화를 위한 MCP 활용 팁

1️⃣ 캐싱(cache_tools_list) 활성화

OpenAI Agents SDK에서 list_tools()를 호출할 때마다 네트워크 지연이 발생할 수 있습니다. 이를 방지하려면 MCP 서버의 도구 목록을 캐싱하는 것이 좋습니다.

캐싱 활성화 코드

mcp_server = MCPServerSse(url="https://example.com/mcp-server", cache_tools_list=True)

효과

  • 서버 호출 횟수를 줄여 성능 최적화
  • 불필요한 네트워크 트래픽 절감

2️⃣ 캐시 무효화(invalidate_tools_cache) 방법

MCP 서버의 도구 목록이 변경될 경우, 기존 캐시를 삭제하고 최신 데이터로 업데이트해야 합니다.

캐시 무효화 코드

mcp_server.invalidate_tools_cache()

효과

  • 항상 최신 MCP 도구 목록 유지 가능
  • 동적인 환경에서도 정확한 데이터 활용 가능
728x90

🔹  OpenAI MCP 공식 지원이 주는 의미

OpenAI Agents SDK가 MCP를 공식 지원하면서 AI 모델과 외부 도구 연결이 더욱 쉬워짐
복잡한 API 연동 없이도 OpenAI AI 모델이 MCP를 통해 다양한 데이터 소스를 활용 가능
로컬 및 원격 MCP 서버 지원으로 AI 애플리케이션 확장성 강화
캐싱 등 성능 최적화를 통해 더욱 효율적인 AI 서비스 운영 가능

🎯 이제 OpenAI 기반 AI 애플리케이션을 개발할 때, MCP 지원을 적극 활용해 보세요! 🚀

https://openai.github.io/openai-agents-python/mcp/

 

Model context protocol (MCP) - OpenAI Agents SDK

Model context protocol (MCP) The Model context protocol (aka MCP) is a way to provide tools and context to the LLM. From the MCP docs: MCP is an open protocol that standardizes how applications provide context to LLMs. Think of MCP like a USB-C port for AI

openai.github.io

728x90
반응형