최신 AI 모델을 활용하더라도 지식 마감일(cut-off date)로 인해 최신 정보를 반영하지 못하는 경우가 많습니다. 예를 들어, Claude 3 Sonnet 모델의 경우 2024년 10월 말이 지식 마감일입니다. 이러한 한계를 극복하기 위해 RAG(Retrieval-Augmented Generation) 기술이 활용됩니다. Cluade 3 Sonnet cut-off date 이미지 출처: https://assets.anthropic.com/m/785e231869ea8b3b/original/claude-3-7-sonnet-system-card.pdf 본 가이드에서는 RAG를 직접 구축하는 방법 외에도, MCP(Model Context Protocol) 도구를 활용하여 간편하게 최신 정보를 기반으로 답변하는 AI 시스템을 구축하는 방법을 소개합니다. MCP(Model Context Protocol)란? MCP(Model Context Protocol)는 LLM(Large Language Model)과 외부 시스템 간의 컨텍스트를 관리하기 위한 새로운 표준 프로토콜입니다. MCP를 사용하면 LLM은 외부 도구 및 리소스에 액세스하여 최신 정보, 전문 지식 및 실시간 데이터로 답변을 강화할 수 있습니다. Context7 MCP: 최신 라이브러리 문서 활용 Context7 MCP는 Upstash에서 제공하는 도구로, 최신 버전의 라이브러리 문서와 코드 예제를 LLM 프롬프트에 제공합니다. Context7 MCP를 통해 오래된 데이터나 잘못된 API 정보로 인한 문제를 해결하고, 정확하고 최신의 답변을 얻을 수 있습니다. Context7 MCP는 약 720개의 최신 문서를 제공합니다. 설정 방법은 다음과 같습니다. { "mcpServers": { "context7": { "command": "npx", "args": ["-y", "@upstash/context7-mcp"] } } } Context7 MCP는 다음 도구를 제공합니다. resolve-library-id: 라이브러리 이름을 Context7 호환 ID로 변환합니다. get-library-docs: 특정 주제나 토픽에 맞춘 라이브러리 문서를 검색합니다. LLM은 resolve-library-id와 get-library-docs 도구를 사용하여 질문에 대한 컨텍스트를 가져와 답변에 활용합니다. 사용 방법 예시 1 사용 방법 예시 2 Context7 MCP에서 문서를 제공하지 않는 경우에는 다음 도구를 활용할 수 있습니다. GitMCP: GitHub 리포지토리 활용 GitMCP를 사용하면 모든 GitHub 리포지토리에 대한 Remote MCP 서버를 즉시 만들 수 있습니다. GitHub 리포지토리 URL에서 github.com을 gitmcp.io로 변경하여 LLM에 AI 컨텍스트를 제공할 수 있습니다. 예를 들어, Zustand 깃헙 리포지토리 URL https://github.com/pmndrs/zustand에서 github.com만 gitmcp.io로 변경하면 됩니다. ⇢ https://gitmcp.io/pmndrs/zustand 예시에서는 zustand 깃헙 리포지토리를 사용해 보겠습니다. 설정 방법은 다음과 같습니다. { "mcpServers": { "zustand Docs": { "url": "https://gitmcp.io/pmndrs/zustand" } } } GitMCP 도구를 사용하면 해당 리포지토리의 문서를 가져와 답변에 활용할 수 있습니다. 사용 방법 예시 GitHub 리포지토리가 아닌 웹페이지의 경우에는 다음 방법을 사용할 수 있습니다. Firecrawl MCP Server: 웹 페이지 크롤링 및 자동 탐색 Firecrawl MCP Server는 웹 페이지를 크롤링하는 도구입니다. firecrawl.dev에서 API Key를 발급받아야 합니다. Firecrawl은 오픈 소스이므로 셀프 호스팅하여 무료로 사용할 수도 있습니다. 설정 방법은 다음과 같습니다. { "mcpServers": { "firecrawl-mcp": { "command": "npx", "args": ["-y", "firecrawl-mcp"], "env": { "FIRECRAWL_API_KEY": "YOUR-API-KEY" } } } } 셀프 호스팅하는 경우: { "mcpServers": { "firecrawl-mcp": { "command": "npx", "args": ["-y", "firecrawl-mcp"], "env": { "FIRECRAWL_API_URL": "http://localhost:3002" } } } } 사용 방법 예시 Firecrawl은 웹 페이지 문서를 크롤링하여 가져오므로, 질문 시 해당 문서 기반으로 답변을 제공합니다. 문서에 관련 내용이 없는 경우, 링크를 자동으로 탐색하고 크롤링하여 관련 내용을 찾아서 답변합니다. RAG 직접 구축: 더 많은 제어 및 최적화 위에서 소개한 방법 외에도 RAG를 직접 구축하여 AI 시스템을 더욱 세밀하게 제어하고 최적화할 수 있습니다. RAG를 직접 구축하면 검색된 문서 전체를 LLM으로 전달하는 대신, 필요한 정보만 추출하여 토큰 소모를 줄일 수 있습니다. Wanted LaaS 플랫폼을 사용하면 간단하게 RAG 시스템을 구축할 수 있습니다. 또는 오픈 소스 도구인 Dify, N8N, Khoj, Anything LLM 등을 활용할 수도 있습니다.