by vivekVells (community) Claude Desktop, Claude Code, OpenCode, любой MCP-клиент, Python, Pandoc, Windows, macOS, Linux
MCP-сервер для конвертации форматов документов через Pandoc. AI-агент может конвертировать Markdown, HTML, PDF, DOCX, CSV, RST, LaTeX и другие форматы прямо в разговоре — без ручного запуска команд.
MCP-сервер для управления Blender через LLM. Создавай и редактируй 3D-объекты, материалы и сцены на естественном языке …
AI-агент для навигации и редактирования кода через MCP с семантическим анализом. Использует language server protocol для …
Python-фреймворк для быстрого создания MCP-серверов. Декораторы @mcp.tool, @mcp.resource, @mcp.prompt — минимальный бойлерплейт. Поддерживает HTTP/SSE и stdio …
MCP-сервер с 70+ профессиональными инструментами кибербезопасности: nmap, nuclei, sqlmap, hydra, hashcat, metasploit и другие. AI-агент сам …
# Claude Desktop — claude_desktop_config.json:
{ "mcpServers": { "mcp-pandoc": { "command": "uvx", "args": ["mcp-pandoc"] } } }
# Claude Code (CLI):
claude mcp add mcp-pandoc -- uvx mcp-pandoc
# OpenCode — ~/.config/opencode/opencode.json:
{ "mcp": { "mcp-pandoc": { "type": "local", "command": ["uvx", "mcp-pandoc"] } } }
Официально включён в проект открытого ПО Model Context Protocol servers. 🎉
Сервер протокола Context Model для преобразования форматов документов с использованием pandoc. Этот сервер предоставляет инструменты для преобразования содержимого между различными форматами документов с сохранением форматирования и структуры.
Обратите внимание, что mcp-pandoc находится на ранней стадии разработки. Поддержка PDF находится в процессе разработки, функциональность и доступные инструменты могут изменяться и расширяться по мере продолжения улучшения сервера.
Благодарности: Этот проект использует Pandoc Python package для преобразования документов, что составляет основу данного проекта.
Новичок в mcp-pandoc? Ознакомьтесь с 📖 ШПАРГАЛКОЙ.md для получения:
Идеально для быстрого поиска и скорого начала работы!
Скриншоты
Скоро будет больше...
convert-contentscontents (string): Исходное содержимое для преобразования (обязательно, если не предоставлен input_file)input_file (string): Полный путь к входному файлу (обязательно, если не предоставлен contents)input_format (string): Исходный формат содержимого (по умолчанию markdown)output_format (string): Целевой формат (по умолчанию markdown)output_file (string): Полный путь для выходного файла (обязателен для форматов pdf, docx, rst, latex, epub)reference_doc (string): Путь к эталонному документу для стилизации (поддерживается для выходного формата docx)defaults_file (string): Путь к файлу defaults для Pandoc (YAML), содержащему параметры преобразованияfilters (array): Список путей к фильтрам Pandoc для применения во время преобразованияИспользуйте файлы defaults для создания многоразовых шаблонов преобразования с единообразным форматированием:
# academic-paper.yaml
from: markdown
to: pdf
number-sections: true
toc: true
metadata:
title: "Academic Paper"
author: "Research Team"
Пример использования: "Преобразовать paper.md в PDF, используя defaults academic-paper.yaml, и сохранить как paper.pdf"
Применяйте пользовательские фильтры для расширенной обработки:
Пример использования: "Преобразовать docs.md в HTML с фильтрами ['/path/to/mermaid-filter.py'] и сохранить как docs.html"
💡 Для получения всеобъемлющих примеров и рабочих процессов см. ШПАРГАЛКУ.md
| Из\В | MD | HTML | TXT | DOCX | RST | LaTeX | EPUB | IPYNB | ODT | |
|---|---|---|---|---|---|---|---|---|---|---|
| Markdown | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| HTML | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| TXT | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| DOCX | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| RST | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| LaTeX | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| EPUB | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| IPYNB | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| ODT | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Этот инструмент использует pandoc для преобразований, что позволяет генерировать PDF-файлы из перечисленных выше форматов. Однако преобразование из PDF в другие форматы не поддерживается. Поэтому PDF следует рассматривать как формат только для вывода.
| Категория | Форматы | Требования |
|---|---|---|
| Базовые | MD, HTML, TXT, IPYNB, ODT | Нет |
| Расширенные | DOCX, PDF, RST, LaTeX, EPUB | Необходимо указать путь к output_file |
| Стилизованные | DOCX с эталонным документом | Поддержка пользовательских шаблонов ⭐ |
Примечание: Для расширенных форматов:
brew install texlive)ПРИМЕЧАНИЕ: Убедитесь, что вы выполнили установку необходимых пакетов, упомянутых ниже в разделе "Критические требования".
Для использования опубликованной версии
{
"mcpServers": {
"mcp-pandoc": {
"command": "uvx",
"args": ["mcp-pandoc"]
}
}
}
💡 Быстрый старт: См. ШПАРГАЛКУ.md для примеров копирования и вставки и типовых рабочих процессов.
pandoc — основной движок конвертации документовУстановка:
```bash
brew install pandoc
sudo apt-get install pandoc
```
pandoc --versionuv (включает команду uvx)Установка:
```bash
brew install uv
pip install uv ```
uvx --versionКоманды установки:
```bash
sudo apt-get install texlive-xetex
brew install texlive
```
✅ Правильное использование:
# Конвертация содержимого в PDF
"Convert this text to PDF and save as /path/to/document.pdf"
# Конвертация между форматами файлов
"Convert /path/to/input.md to PDF and save as /path/to/output.pdf"
# Конвертация в DOCX с использованием шаблона эталонного документа
"Convert input.md to DOCX using template.docx as reference and save as output.docx"
# Пошаговый процесс работы с эталонным документом
"First create a reference document: pandoc -o custom-reference.docx --print-default-data-file reference.docx" or if you already have one, use that
"Then convert with custom styling: Convert this text to DOCX using /path/to/custom-reference.docx as reference and save as /path/to/styled-output.docx"
❌ Неправильное использование:
# Отсутствует имя файла и расширение
"Save this as PDF in /documents/"
# Отсутствует полный путь
"Convert this to PDF"
# Отсутствует расширение
"Save as /documents/story"
Конвертация в PDF не удается
Конвертация файла не удается
/path/to/document.pdf вместо просто /path/to/Конвертация формата не удается
Проблемы с эталонным документом
pandoc -o reference.docx --print-default-data-file reference.docxopen ~/Library/Application\ Support/Claude/claude_desktop_config.json%APPDATA%/Claude/claude_desktop_config.jsonа) Только для локальной разработки и вклада в этот репозиторий
Конфигуляция для разработки/неопубликованных серверов
ℹ️ Замените на путь к вашему локально склонированному проекту
"mcpServers": {
"mcp-pandoc": {
"command": "uv",
"args": [
"--directory",
"<DIRECTORY>/mcp-pandoc",
"run",
"mcp-pandoc"
]
}
}
b) Конфигуляция опубликованных серверов - Пользователям следует использовать эту конфигурацию
"mcpServers": {
"mcp-pandoc": {
"command": "uvx",
"args": [
"mcp-pandoc"
]
}
}
Примечание: Для использования локально настроенного mcp-pandoc следуйте шагу «Конфигурация для разработки/неопубликованных серверов» выше.
Для запуска комплексного набора тестов и проверки всех поддерживаемых двусторонних конвертаций используйте следующую команду:
uv run pytest tests/test_conversions.py
Это обеспечивает обратную совместимость и проверяет основную функциональность инструмента.
Для подготовки пакета к распространению:
uv sync
uv build
Это создаст исходные и wheel дистрибутивы в каталоге dist/.
uv publish
Примечание: Вам нужно будет установить учетные данные PyPI через переменные окружения или флаги команды:
--token или UV_PUBLISH_TOKEN--username/UV_PUBLISH_USERNAME и --password/UV_PUBLISH_PASSWORDПоскольку серверы MCP работают через stdiо, отладка может быть затруднительной. Для наилучшего опыта отладки мы настоятельно рекомендуем использовать MCP Inspector.
Вы можете запустить MCP Inspector через npm с помощью этой команды:
npx @modelcontextprotocol/inspector uv --directory /Users/vivekvells/Desktop/code/ai/mcp-pandoc run mcp-pandoc
При запуске Inspector отобразит URL-адрес, который вы можете открыть в браузере для начала отладки.
Мы приветствуем вклад в развитие mcp-pandoc! Вот как вы можете присоединиться: