Skip to main content
Glama

PDF Reader MCP Server

by sylphxltd

Сервер MCP для чтения PDF-файлов (@sylphlab/pdf-reader-mcp)

Предоставьте своим ИИ-агентам (например, Cline) возможность безопасно считывать и извлекать информацию (текст, метаданные, количество страниц) из PDF-файлов в контексте вашего проекта с помощью единого гибкого инструмента.

Установка

Использование npm (рекомендуется)

Установите как зависимость в вашей среде хоста MCP или проекте:

pnpm add @sylphlab/pdf-reader-mcp # Or npm install / yarn add

Настройте свой хост MCP (например, mcp_settings.json ) для использования npx :

{ "mcpServers": { "pdf-reader-mcp": { "command": "npx", "args": ["@sylphlab/pdf-reader-mcp"], "name": "PDF Reader (npx)" } } }

(Убедитесь, что хост установил правильный cwd для целевого проекта)

Использование Докера

Вытяните изображение:

docker pull sylphlab/pdf-reader-mcp:latest

Настройте свой хост MCP для запуска контейнера, смонтировав каталог проекта в /app :

{ "mcpServers": { "pdf-reader-mcp": { "command": "docker", "args": [ "run", "-i", "--rm", "-v", "/path/to/your/project:/app", // Or use "$PWD:/app", "%CD%:/app", etc. "sylphlab/pdf-reader-mcp:latest" ], "name": "PDF Reader (Docker)" } } }

Локальная сборка (для разработки)

  1. Клон: git clone https://github.com/sylphlab/pdf-reader-mcp.git
  2. Установить: cd pdf-reader-mcp && pnpm install
  3. Сборка: pnpm run build
  4. Настройте хост MCP:
    { "mcpServers": { "pdf-reader-mcp": { "command": "node", "args": ["/path/to/cloned/repo/pdf-reader-mcp/build/index.js"], "name": "PDF Reader (Local Build)" } } }
    (Убедитесь, что хост установил правильный cwd для целевого проекта)

Быстрый старт

Предположим, что сервер запущен и настроен на вашем хосте MCP:

Запрос MCP (получить метаданные и текст страницы 2 из локального PDF-файла):

{ "tool_name": "read_pdf", "arguments": { "sources": [ { "path": "./documents/my_report.pdf", "pages": [2] } ], "include_metadata": true, "include_page_count": false, // Default is true, explicitly false here "include_full_text": false // Ignored because 'pages' is specified } }

Ожидаемый фрагмент ответа:

{ "results": [ { "source": "./documents/my_report.pdf", "success": true, "data": { "page_texts": [ { "page": 2, "text": "Text content from page 2..." } ], "info": { ... }, "metadata": { ... } // num_pages not included as requested } } ] }

Почему стоит выбрать этот проект?

  • 🛡️ Безопасность: ограничивает доступ к файлам строго корневым каталогом проекта.
  • 🌐 Гибкость: обрабатывает как локальные относительные пути, так и публичные URL-адреса.
  • 🧩 Объединение: один инструмент read_pdf удовлетворяет нескольким потребностям извлечения (полный текст, определенные страницы, метаданные, количество страниц).
  • ⚙️ Структурированный вывод: возвращает данные в предсказуемом формате JSON, который легко анализируется агентами.
  • 🚀 Простая интеграция: разработан для бесперебойного использования в средах MCP через npx или Docker.
  • ✅ Надежность: использует pdfjs-dist для надежного анализа и Zod для проверки входных данных.

Преимущества производительности

Первоначальные тесты с использованием Vitest на примере PDF-файла демонстрируют эффективную обработку различных операций:

СценарийОпераций в секунду (Гц)Относительная скорость
Обработать несуществующий файл~12,933Самый быстрый
Получить полный текст~5,575
Получить определенную страницу (страница 1)~5,329
Получить определенные страницы (страницы 1 и 2)~5,242
Получить метаданные и количество страниц~4,912Самый медленный

(Более высокая частота указывает на лучшую производительность. Результаты могут различаться в зависимости от сложности PDF-файла и среды.)

Более подробную информацию и планы на будущее см. в документации по производительности .

Функции

  • Прочитайте полный текст содержимого PDF-файлов.
  • Прочитайте текстовое содержимое определенных страниц или диапазонов страниц.
  • Чтение метаданных PDF-файла (автор, название, дата создания и т. д.).
  • Получите общее количество страниц в PDF-файле.
  • Обработка нескольких источников PDF-файлов (локальных путей или URL-адресов) в одном запросе.
  • Безопасно работает в пределах определенного корня проекта.
  • Предоставляет структурированный вывод JSON через MCP.
  • Доступно через npm и Docker Hub.

Философия дизайна

Сервер отдает приоритет безопасности посредством ограничения контекста, эффективности посредством структурированной передачи данных и простоте для легкой интеграции в рабочие процессы агентов ИИ. Он нацелен на минимальные зависимости, полагаясь на надежную библиотеку pdfjs-dist .

Ознакомьтесь с полной документацией по философии дизайна .

Сравнение с другими решениями

По сравнению с прямым доступом к файлам (часто невозможным) или общими инструментами файловой системы этот сервер предлагает возможности анализа, специфичные для PDF. В отличие от внешних инструментов CLI (например, pdftotext ), он предоставляет безопасный, интегрированный интерфейс MCP со структурированным выводом, повышая надежность и простоту использования для агентов ИИ.

См. полную документацию по сравнению .

Планы на будущее (дорожная карта)

  • Документация:
    • Доработать все разделы документации (Руководство, API, Дизайн, Сравнение).
    • Решить проблему TypeDoc и создать документацию API.
    • Добавьте больше примеров и расширенных моделей использования.
    • Реализовать поддержку PWA и мобильную оптимизацию для сайта документации.
    • Добавьте кнопки «Поделиться» и показатели роста на сайт документации.
  • Сравнительный анализ:
    • Проведите комплексное тестирование различных PDF-файлов (размер, сложность).
    • Измерение использования памяти.
    • Сравните производительность URL и локальных файлов.
  • Основная функциональность:
    • Изучите потенциальные возможности оптимизации для очень больших PDF-файлов.
    • Изучите варианты извлечения изображений или аннотаций (в долгосрочной перспективе).
  • Тестирование:
    • Увеличьте охват тестированием до 100%, где это возможно.
    • Добавляйте тесты времени выполнения, как только это станет возможным.

Документация

Подробную информацию об использовании, справку по API и руководства можно найти на веб-сайте полной документации (ссылка будет обновлена после развертывания).

Сообщество и поддержка

  • Нашли ошибку или хотите запросить функцию? Пожалуйста, откройте вопрос на GitHub Issues .
  • Хотите внести свой вклад? Мы приветствуем вклады! Пожалуйста, посетите CONTRIBUTING.md .
  • Звезда и наблюдение: Если вы считаете этот проект полезным, пожалуйста, рассмотрите возможность поставить звездочку ⭐ и следить за 👀 репозиторием на GitHub , чтобы продемонстрировать свою поддержку и оставаться в курсе событий!

Лицензия

Данный проект лицензирован по лицензии MIT .

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Позволяет агентам ИИ безопасно считывать и извлекать информацию (текст, метаданные, количество страниц) из PDF-файлов в контексте проекта с помощью гибкого инструмента MCP.

  1. Установка
    1. Использование npm (рекомендуется)
    2. Использование Докера
    3. Локальная сборка (для разработки)
  2. Быстрый старт
    1. Почему стоит выбрать этот проект?
      1. Преимущества производительности
        1. Функции
          1. Философия дизайна
            1. Сравнение с другими решениями
              1. Планы на будущее (дорожная карта)
                1. Документация
                  1. Сообщество и поддержка
                    1. Лицензия

                      Related MCP Servers

                      • A
                        security
                        A
                        license
                        A
                        quality
                        AiDD MCP Server provides a secure interface for AI agents to perform file system operations and code analysis, enhancing AI-assisted development workflows across multiple programming languages.
                        Last updated -
                        29
                        60
                        Python
                        Apache 2.0
                        • Apple
                        • Linux
                      • -
                        security
                        F
                        license
                        -
                        quality
                        A server providing PDF form manipulation tools via MCP's API, allowing users to find PDFs across directories, extract form field information, and visualize form fields in documents.
                        Last updated -
                        Python
                      • A
                        security
                        F
                        license
                        A
                        quality
                        An MCP server that provides a tool to extract text content from local PDF files, supporting both standard PDF reading and OCR capabilities with optional page selection.
                        Last updated -
                        1
                        5
                        Python
                        • Apple
                      • -
                        security
                        A
                        license
                        -
                        quality
                        An MCP server that provides multiple file conversion tools for AI agents, supporting various document and image format conversions including DOCX to PDF, PDF to DOCX, image conversions, Excel to CSV, HTML to PDF, and Markdown to PDF.
                        Last updated -
                        3
                        Python
                        MIT License
                        • Linux
                        • Apple

                      View all related MCP servers

                      MCP directory API

                      We provide all the information about MCP servers via our MCP API.

                      curl -X GET 'https://glama.ai/api/mcp/v1/servers/sylphxltd/pdf-reader-mcp'

                      If you have feedback or need assistance with the MCP directory API, please join our Discord server