Перейти к содержимому
Выберите тему

llms.txt и MCP

Чем llms.txt отличается от Model Context Protocol (MCP): файл, который агент читает, и протокол с вызовом инструментов. Мост mcpdoc, безопасность и что выбрать

Две независимые системы

llms.txt

что есть на сайте

Документация сайтаllms.txt

  • Статический файл в формате Markdown
  • Нужен любой HTTP-клиент
  • Только чтение
  • Делается за 15 минут

MCP

дай мне данные и выполни действие

Клиент MCPСервер MCP

  • Протокол поверх JSON-RPC 2.0
  • Нужны клиент и сервер
  • Чтение, запись и инструменты
  • Нужна разработка сервера

Необязательный мост

Отдельный сервер MCP, которому пользователь сам даёт список файлов llms.txt. Пример - mcpdoc.

llms.txtсервер-мостассистент в редакторе

Model Context Protocol - открытый протокол для связи языковых моделей с внешними данными и инструментами. Его создала компания Anthropic в ноябре 2024 года. В декабре 2025 года протокол передан в Agentic AI Foundation при Linux Foundation.

Через MCP модель может читать файлы и базы данных, вызывать API, запускать инструменты и получать контекст из внешних источников.

llms.txt MCP
Что это файл протокол
Формат Markdown JSON-RPC 2.0
Как получают один запрос GET сеанс между клиентом и сервером
Что нужно любой HTTP-клиент клиент и сервер MCP
Что можно читать читать, писать, вызывать инструменты
Риски как у любой публичной страницы подмена инструментов, внедрение инструкций
Как llms.txt попадает к ассистенту через MCP
  1. Сайтпубликует llms.txt
  2. GETllms.txtsvelte.dev/llms.txt
  3. Сервер-мостmcpdocпользователь сам даёт список файлов
  4. MCPАссистентполучает страницы как инструмент

mcpdoc (langchain-ai) - отдельный сервер MCP. Репозиторий переведён в архив и больше не развивается; пример ниже показывает принцип.

  1. Сайт публикует llms.txt

    svelte.dev/llms.txt
    # Svelte Documentation
    > Svelte is a UI framework that compiles components into efficient JavaScript.
    ## Docs
    - [Overview](https://svelte.dev/docs/svelte/overview): What Svelte is and how it works
    - [SvelteKit introduction](https://svelte.dev/docs/kit/introduction): The application framework
  2. Пользователь подключает мост в настройках ассистента

    mcp.json
    {
    "mcpServers": {
    "docs": {
    "command": "uvx",
    "args": [
    "--from", "mcpdoc",
    "mcpdoc",
    "--urls",
    "Svelte:https://svelte.dev/llms.txt",
    "Stripe:https://docs.stripe.com/llms.txt",
    "--transport", "stdio"
    ]
    }
    }
    }
  3. Ассистент запрашивает документацию

    Он получает список ссылок из llms.txt, загружает нужные страницы и отвечает по свежей документации.

Другой инструмент того же рода - mcp-llms-txt-explorer: сервер MCP для навигации по llms.txt любого сайта.

MCP вводит угрозы, которых у статического файла нет.

Угроза MCP llms.txt
Подмена инструментов вредоносный сервер внедряет опасные инструкции не применимо: инструментов нет
Внедрение инструкций данные сервера меняют поведение модели возможно, как на любой странице
Смена поведения после доверия сервер меняется после подключения файл может измениться, но действий не выполняет
Утечка данных через вызовы инструментов не применимо

Что известно о безопасности llms.txt

Подтверждено

  • В корпусе Common Crawl из 584 тысяч файлов найдено 10 с классическим внедрением инструкций и 3 793 файла, которые мягко направляют модель.
  • llms.txt действий не выполняет: это текст.

Не доказано

  • Что файл безопасен сам по себе. В тексте proposal раздела о безопасности нет, вопрос обсуждается в репозитории.

Чего это не означает

  • «Только чтение» не значит «можно доверять». Агент должен считать содержание файла недоверенным, как любой текст из сети.
  • Нужно, чтобы агент нашёл документацию и прочитал её, - хватит llms.txt.
  • Нужно, чтобы модель выполняла действия или получала закрытые данные, - нужен MCP.
  • Документация уже описана в llms.txt, а ассистент работает только через MCP, - подойдёт мост.

Сайты, где есть и llms.txt, и материалы про MCP: