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 |
Tags
- frontend
- React
- DP
- InfluxDB
- MCP
- 알고리즘
- dfs
- LLM
- AI
- VectoreStore
- rag
- typescript
- OpenAI
- Two Pointer
- chroma
- 파이썬
- Algorithm
- backend
- 코딩테스트
- 프로그래머스
- 완전탐색
- retriever
- modbus
- 스택/큐
- queue
- javascript
- BFS
- javascirpt
- heapq
- python
Archives
- Today
- Total
DM Log
[AI 실습 #2] MCP 소개와 FastMCP 실습 본문
AI 도구 - IDE 연결 표준
- AI 모델을 활용 시 단순 프롬프트 입력 → 답변 출력으로 끝나는 경우는 많지 않음
- IDE(Coding 환경), 지식 베이스, 외부 API 등과 연결하여 실질적 업무 도구 활용
- MCP는 AI 모델과 외부 애플리케이션(IDE, 도구, 데이터 소스)을 표준화된 방식으로 연결해 주는 프로토콜
MCP 란?
- Model Context Protocol의 약자
- AI모델이 외부 도구(tool)를 호출하거나, 데이터 소스에 접근할 수 있도록 해주는 규격
- 대표 지원 사례:
- Cursor IDE → MCP 서버를 연결해 맞춤형 개발 도구 사용
- Claude → MCP 도구를 통해 특정 데이터베이스 / 문서 검색 가능
👉 MCP는 LLM + 외부 세계 연결을 위한 표준 인터페이스
FastMCP 소개
MCP 서버를 직접 구현하려면 복잡, fastmcp 라이브러리를 사용하면 간단히 MCP 서버 구축 가능
특징:
- Python 기반
- 데코레이터(@tcp.tool())로 함수 등록
- stdin/stout 기반 통신
FastMCP로 간단한 MCP 서버 만들기
1. 라이브러리 설치
pip install mcp
2. MCP 서버 코드 작성
import logging
from mcp.server.fastmcp import FastMCP
# MCP 서버 인스턴스 생성
mcp = FastMCP("HelloMCP")
# 간단한 도구 함수 등록
@mcp.tool()
def greet(name: str) -> str:
"""입력한 이름을 이용해 인사말을 반환합니다."""
logging.info(f"Received name: {name}")
return f"안녕하세요, {name}님! MCP 서버가 동작 중입니다."
# MCP 서버 실행
if __name__ == "__main__":
mcp.run(transport="stdio")
3. 동작 원리
- FastMCP("HelloMCP"): 이름이 "HelloMCP"인 MCP 서버 생성
- @mcp.tool(): 함수 greet를 MCP 도구로 등록
- mcp.run(transport="stdio"): 표준 입출력 방식으로 서버 실행
- 외부 애플리케이션(Cursor, Claude 등)에서 MCP 서버를 연결하면 greet 도구를 호출 가능
실행 및 테스트
1. 코드를 hello_mcp.py로 저장
2. 터미널 실행:
python hello_mcp.py
3. MCP 클라이언트에서 서버를 등록 후:
/mcp greet name="홍길동"
실행 시
안녕하세요, 홍길동님! MCP 서버가 동작 중입니다.
MCP의 장점
- 표준화: Cursor, Claude 등 다양한 클라이언트에서 동일하게 동작
- 확장성: 원하는 함수를 바로 도구로 등록 가능
- 안전성: 모델이 무분별하게 시스템 리소스를 건들지 않고, 허용 도구만 사
(부록) 용어 정리
- MCP: Model Context Protocol, AI ↔ 외부 도구 연결 표준
- FastMCP: Python용 간편 MCP 서버 구현 라이브러리
- @mcp.tool(): MCP 도구 등록 데코레이터
- stdio transport: 표준 입출력을 통한 클라이언트-서버 통신 방식
'개발공부 > AI' 카테고리의 다른 글
[AI 실습 #4] 다중 PDF RAG 확장하기 (0) | 2025.09.13 |
---|---|
[AI 실습 #3] PDF 단일 파일 RAG 만들기 (0) | 2025.09.13 |
[AI 실습 #1] Chroma 실습: 벡터DB를 활용한 문서 검색 (0) | 2025.09.13 |
[AI 개념 및 이해 #5] RAG: 검색과 생성을 결합하는 기술 (0) | 2025.09.07 |
[AI 개념 및 이해 #4] LangChain: LLM 오케스트레이션 프레임워크 (0) | 2025.09.07 |