MCP와 llms.txt 활용하기: 문서를 AI 지식 베이스로 만드는 방법
핵심 요약
- Model Context Protocol(MCP)을 사용하면 Claude 같은 AI 어시스턴트가 llms.txt 파일을 포함한 외부 소스에서 실시간으로 지식을 가져올 수 있습니다.
- llms-full.txt 파일을 MCP 서버에 연결하면 개발자가 에디터를 벗어나지 않고도 제품 관련 질문에 정확한 답변을 받을 수 있습니다.
npx를 사용해 10분 이내에 설정 가능하며, 별도로 서버를 관리할 필요가 없습니다.- 공개된
llms-full.txt가 있는 모든 사이트는 오늘 바로 MCP 지식 소스로 연결할 수 있습니다.
2024년 말 Anthropic이 발표한 Model Context Protocol(MCP)은 개발자 도구 분야에서 가장 실용적인 발전 중 하나로 자리잡았습니다. MCP GitHub 저장소에 따르면 이 프로토콜은 출시 6개월 만에 1,000개 이상의 커뮤니티 서버를 확보했습니다(Anthropic MCP, 2025). 이 생태계에서 떠오르고 있는 가장 유용한 패턴 중 하나는 llms-full.txt 파일을 AI 어시스턴트가 실시간으로 조회할 수 있는 지식 소스로 활용하는 것입니다.
Model Context Protocol(MCP)이란 무엇인가요?
MCP는 AI 어시스턴트가 표준화된 방식으로 외부 도구와 데이터 소스에 연결할 수 있도록 하는 오픈 프로토콜입니다. AI 통합을 위한 USB-C 표준이라고 생각하면 됩니다. 각 도구마다 커스텀 커넥터를 만들 필요 없이, MCP가 모든 호환 AI가 사용할 수 있는 단일 인터페이스를 제공합니다.
MCP를 사용하면 Claude Desktop이나 Cursor 안의 Claude 같은 AI 어시스턴트가 다음과 같은 작업을 수행할 수 있습니다:
- 파일 시스템의 파일 읽기
- 데이터베이스 조회
- 외부 API 호출
- URL에서 문서 가져오기 및 검색 — 여기서 llms.txt가 등장합니다
llms-full.txt가 MCP에 최적인 이유
llms-full.txt 파일은 가장 중요한 페이지의 전체 텍스트를 담은 단일 Markdown 형식 문서입니다. 기계가 읽기 쉽고 자체 완결적으로 설계되어 있어, MCP 서버가 제품 관련 질문에 답하는 데 필요한 정확히 그 형태입니다.
llms-full.txt를 MCP 서버에 연결하면 AI 어시스턴트에게 제품에 대한 선별된, 항상 최신인 지식 베이스를 제공하는 것과 같습니다. 임베딩 파이프라인도, 벡터 데이터베이스도, RAG 인프라도 필요 없습니다. URL과 몇 줄의 설정만 있으면 됩니다.
SEO용 llms.txt와 MCP용 llms.txt의 주요 차이점:
| 활용 사례 | 파일 | 사용 방식 |
|---|---|---|
| SEO / AI 검색 | /llms.txt | AI 시스템이 수동적으로 크롤링 |
| MCP 통합 | /llms-full.txt | AI 어시스턴트가 요청 시 능동적으로 가져옴 |
두 파일 모두 갖추는 것이 좋습니다. /llms.txt는 색인이고, /llms-full.txt는 전체 콘텐츠입니다.
llms-full.txt로 MCP 서버 설정하기
실제 예시를 살펴보겠습니다. Taiga UI 컴포넌트 라이브러리는 전체 문서를 llms-full.txt로 공개하고, 어떤 개발자든 연결할 수 있는 MCP 서버를 제공합니다:
{
"mcpServers": {
"taiga-ui": {
"command": "npx",
"args": [
"@taiga-ui/mcp@latest",
"--source-url=https://taiga-ui.dev/llms-full.txt"
]
}
}
}
이 설정은 Claude(또는 MCP 호환 AI)에게 npx로 로컬 MCP 서버를 실행해 Taiga UI 문서를 가져오고 검색하도록 지시합니다. 개발자는 “TuiInput 컴포넌트를 어떻게 사용하나요?”라고 물으면 라이브러리 자체 문서에서 출처가 명확한 정확한 답변을 받을 수 있습니다.
URL을 바꾸면 /next 버전 문서에도 동일하게 연결할 수 있습니다:
{
"mcpServers": {
"taiga-ui-next": {
"command": "npx",
"args": [
"@taiga-ui/mcp@latest",
"--source-url=https://taiga-ui.dev/next/llms-full.txt"
]
}
}
}
AI 도구에 설정 추가하기
Claude Desktop
Claude Desktop 설정 파일을 여세요:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
mcpServers 블록을 추가하세요. 파일에 이미 다른 서버가 있다면 기존 객체에 새 항목만 추가하면 됩니다:
{
"mcpServers": {
"my-product-docs": {
"command": "npx",
"args": [
"@taiga-ui/mcp@latest",
"--source-url=https://yourdomain.com/llms-full.txt"
]
}
}
}
Claude Desktop을 재시작하세요. 채팅 입력란에 도구 아이콘이 나타나면 MCP가 연결된 것입니다.
Cursor
Cursor에서 Settings > MCP로 이동해 서버 설정을 추가하세요. Cursor는 Claude Desktop과 동일한 MCP JSON 형식을 지원합니다.
VS Code (Copilot 또는 Claude 확장 사용 시)
워크스페이스의 .vscode/mcp.json 파일에 설정을 추가하세요:
{
"servers": {
"my-product-docs": {
"command": "npx",
"args": [
"@taiga-ui/mcp@latest",
"--source-url=https://yourdomain.com/llms-full.txt"
]
}
}
}
llms-full.txt용 자체 MCP 서버 만들기
서드파티 MCP 패키지에 의존하고 싶지 않다면 직접 만들 수 있습니다. 패턴은 단순합니다. llms-full.txt URL을 가져오고, Markdown 제목별로 섹션을 나누고, 키워드로 섹션을 필터링하는 검색 도구를 노출하면 됩니다.
공식 MCP TypeScript SDK를 사용한 최소한의 구조:
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
import { z } from "zod";
const server = new McpServer({ name: "my-docs", version: "1.0.0" });
server.tool("search_docs", { query: z.string() }, async ({ query }) => {
const res = await fetch("https://yourdomain.com/llms-full.txt");
const text = await res.text();
const sections = text.split(/^##+ /m);
const matches = sections.filter(s =>
s.toLowerCase().includes(query.toLowerCase())
);
return { content: [{ type: "text", text: matches.join("\n\n---\n\n") }] };
});
const transport = new StdioServerTransport();
await server.connect(transport);
프로덕션 구현에서는 캐싱(파일이 자주 바뀌지 않으므로), 큰 파일을 위한 페이지네이션, 퍼지 매칭을 추가합니다.
사용자에게 제공되는 가치
MCP로 문서를 연결하면 AI 코딩 어시스턴트를 사용하는 개발자가 다음을 얻습니다:
- 실제 문서에 기반한 정확한 답변 — 존재하지 않는 API 메서드를 만들어내지 않습니다
- 실시간 업데이트 — 요청할 때마다 MCP 서버가 최신 llms-full.txt를 가져옵니다
- 편리한 접근 — 에디터 안에서 해결되므로 브라우저 탭 전환이 필요 없습니다
- 컨텍스트 인식 코드 생성 — AI가 라이브러리의 정확한 문법으로 코드 스니펫을 생성합니다
여러 라이브러리에서 이 패턴을 테스트한 결과, 가장 큰 성과는 “환각된” API 답변을 없애는 것이었습니다. AI가 실제 llms-full.txt에 근거하면 존재하지 않는 메서드 시그니처를 만들어내는 일이 사라집니다.
이 기능을 사용하려면 llms-full.txt가 꼭 필요한가요?
그렇습니다. MCP 패턴은 색인이 아닌 문서의 전체 콘텐츠 파일이 필요합니다. /llms.txt만 있다면 탐색은 가능하지만 AI가 구체적인 질문에 답하기에는 정보가 부족합니다.
사이트의 llms-full.txt를 자동으로 생성하려면 LLMGenerator를 사용하세요. 사이트를 크롤링하고 두 파일을 한 번에 생성합니다.
자주 묻는 질문
llms-full.txt가 공개적으로 접근 가능해야 하나요? URL 기반 MCP 서버를 사용한다면 그렇습니다. 비공개 문서는 MCP 인수에 URL 대신 로컬 파일 경로를 전달하면 됩니다.
llms-full.txt의 최대 크기는 얼마인가요? 실질적인 한도는 AI의 컨텍스트 윈도우에 달려 있습니다. 200KB 이하 파일은 대부분의 모델에서 안정적으로 작동합니다. 더 큰 문서의 경우 섹션별로 나누고 여러 MCP 서버를 실행하는 것을 고려하세요.
MCP 호환 AI라면 어떤 것이든 이 패턴을 사용할 수 있나요? 그렇습니다. MCP 프로토콜은 오픈 소스이며 모델에 종속적이지 않습니다. MCP를 지원하는 모든 AI 도구(Claude, Cursor, Zed 등)에서 동일한 설정을 사용할 수 있습니다.
문서가 변경되면 llms-full.txt를 다시 게시해야 하나요? 이상적으로는 그렇습니다. 대부분의 MCP 서버는 요청마다 URL을 새로 가져오므로, 안정적인 URL에 파일만 있으면 됩니다. 배포 시 자동으로 재생성하도록 설정하면 MCP 통합이 항상 최신 상태를 유지합니다.
llms-full.txt와 MCP의 조합은 2026년에 문서를 개발자에게 실질적으로 유용하게 만드는 가장 실용적인 방법 중 하나입니다. 유지 관리가 적고, AI 인프라가 필요 없으며, AI 코딩 어시스턴트를 사용하는 모든 이에게 실질적인 가치를 제공합니다.
LLMGenerator로 llms-full.txt를 생성한 다음 Claude Desktop이나 Cursor에 MCP 설정을 추가하세요. 전체 과정이 15분 이내에 완료됩니다.