Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | |||
| 5 | 6 | 7 | 8 | 9 | 10 | 11 |
| 12 | 13 | 14 | 15 | 16 | 17 | 18 |
| 19 | 20 | 21 | 22 | 23 | 24 | 25 |
| 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- nestjs시큐리티
- VectorDB
- expo go 오류
- expo 버전 오류
- jotai
- 리액트 네이티브
- langchain tools
- langchain react agent
- 상태관리
- 타입스크립트상태관리
- 이미지처리
- expo 51 버전
- expo 아이폰 오류
- langgraph mcp
- langchain
- expo 51 오류
- 크로마DB
- 랭체인 툴
- 네스트시큐리티
- 자바공부
- react
- expo 안드로이드
- AI
- comfyui
- langgraph
- 리액트 네이티브 오류
- rnn gnsfus
- expo 아이폰
- 스프링 공부
- vllmmcp
Archives
- Today
- Total
영리의 테크블로그
[Agent 연습] Claude MCP 알아보기 본문
Claude MCP

최근 Anthropic이 개발한 오픈 소스 표준 Claude MCP(Model Context Protocol)를 공부하였다.
MCP는 AI 모델이 외부 데이터 소스 및 다양한 도구와 연결되도록 하는 프로토콜 (Like USB-C 포트) 임
원래는 function calling 기법으로 프로젝트를 기획했지만 이번에 MCP 방식으로 마이그래이션하기로 결정
MCP 개요 및 구성
MCP는 AI 모델과 외부 시스템이 원활하게 통신할 수 있도록 설계되었음.
1. MCP Host
- Claude Desktop, IDE, LangGraph 에이전트 등 MCP를 활용하는 주체.
- 사용자 요청을 MCP 형식으로 변환.
2. MCP Server
- 파일 시스템, 데이터베이스, API 등 특정 기능을 제공하는 프로그램.
- 표준화된 인터페이스를 통해 도구 실행을 지원.
3. MCP Client
- Host와 Server 간 통신을 중개하는 프로토콜 변환.
- SSE(실시간 스트리밍)와 Stdio(표준 입출력) 등 다양한 전송 방식을 지원함.
LangGraph와의 통합 진행
MCP는 LangChain-MCP Adapters를 통해 LangGraph 에이전트와 쉽게 통합됨.
MCP 서버 설정 예시
수학 연산 서버 예시
# math_server.py
from mcp.server.fastmcp import FastMCP
mcp = FastMCP("Math")
@mcp.tool()
def add(a: int, b: int) -> int:
return a + b
mcp.run(transport="stdio")
위 코드를 통해 간단한 수학 연산 기능을 MCP 서버에 탑재 가능
LangGraph 에이전트 구성 예시
아래와 같이 LangGraph 에이전트에 MCP 클라이언트를 연결
from langchain_mcp_adapters.client import MultiServerMCPClient
from langgraph.prebuilt import create_react_agent
async with MultiServerMCPClient({
"math": {"command": "python", "args": ["math_server.py"], "transport": "stdio"}
}) as client:
agent = create_react_agent(model, client.get_tools())
response = await agent.ainvoke({"messages": "3+5*2 계산해줘"})
이 방식을 사용하여 JSON 설정으로 실시간 도구 추가 및 제거를 쉽게 관리 가능
실제 적용 사례
MCP 도입 후 활용 사례는 다양하게 진행됨.
- 자동화 워크플로우
Git 리포지토리 분석 → README 자동 생성 → Slack 알림 전송 등의 작업을 자동화함. - 데이터 분석
Postgres DB 쿼리 수행 → 데이터 시각화 생성 → 보고서 작성 등 단계를 연계하여 진행함. - 실시간 협업
다중 MCP 서버(예: ChatGPT와 Claude)를 LangGraph로 오케스트레이션하여 실시간 협업 환경을 구성함.
function calling 방식에서 MCP 방식으로 마이그래이션 결정
초기에는 vllm function calling 기법을 사용하여 프로젝트를 진행할 계획이었음.
그러나 도구 연동의 복잡성과 설정 관리의 어려움을 경험함. 이에 따라 보다 표준화되고 유연한 MCP 방식을 도입하기로 결정함.
MCP 방식의 주요 장점은 아래와 같음.
- 표준화된 인터페이스 제공: 다양한 서버와 클라이언트, 도구를 일관된 방식으로 연결함.
- 설정 시간 절감: JSON 기반의 도구 관리 덕분에 설정 및 배포 시간이 대폭 단축됨.
- 혼합 전송 방식 지원: SSE와 Stdio를 혼용하여 실시간 스트리밍과 기본 입출력 모두 지원함.
- 확장성 및 신뢰성: 엔터프라이즈 시스템 연동에 대해 이미 검증됨.
마무리
MCP 방식으로의 마이그래이션을 통해 기존의 vllm 방식에서 벗어나, 더욱 표준화된 도구 통합 시스템을 구축 가능하다!
초기 설정은 복잡할 수 있으나, 한 번 구축해두면 다양한 외부 도구와의 연동 및 AI 모델 기능 확장이 원활하다!!
'dev > AI' 카테고리의 다른 글
| 마리오카트 RNN 학습 (1) | 2025.05.18 |
|---|---|
| 소설 캐릭터 정보 추출 & 대화 토이프로젝트 (Book Buddy) (0) | 2024.11.24 |
| Agent 만들기 [8] - 분신 성격 업데이트: LLM과 상호작용 분석을 활용한 페르소나 발전 (1) | 2024.11.21 |