Skip to main content
Glama

MCP DOCX Template Server

Портативный MCP-сервер, который клонирует стилизованный шаблон Microsoft Word и заполняет его содержимым из другого документа, сохраняя изображения, макет, шрифты, цвета и стили абзацев.

Инструменты

Сервер предоставляет три инструмента:

  • analyze_template — Проверяет .docx-шаблон и возвращает его структуру абзацев, изображения, стили и схему содержимого. Также записывает файл-дескриптор <template>.docx.md рядом с шаблоном, чтобы повторные обращения (например, через промпт map_content_to_template) не требовали повторного анализа.

  • extract_content — Извлекает редактируемые текстовые блоки из .docx-файла с содержимым.

  • fill_template — Клонирует шаблон и заменяет его редактируемый текст, используя сопоставление меток с текстом. При необходимости преобразует результат в PDF.

Related MCP server: Word MCP Server

Промпты

  • map_content_to_template — При наличии template_path и content_path читает дескриптор .docx.md шаблона (анализируя и записывая его, если он ещё не существует), а также извлечённое содержимое, и возвращает инструкционное сообщение для построения content_mapping. Ассистенту предписывается напрямую спрашивать пользователя, когда сопоставление неоднозначно, а затем вызывать fill_template.

Установка

pip install .

Или для разработки с тестами:

pip install -e ".[dev]"

Использование с Claude Desktop

Добавьте сервер в конфигурацию Claude Desktop (claude_desktop_config.json):

{
  "mcpServers": {
    "docx-template": {
      "command": "mcp-docx-template-server"
    }
  }
}

Сервер использует транспорт stdio. После настройки Claude может вызывать analyze_template, extract_content и fill_template.

Пример процесса

  1. Анализ шаблона:

{
  "template_path": "/path/to/SSIT_Template.docx"
}
  1. Извлечение содержимого из исходного документа:

{
  "content_path": "/path/to/NetApp_Content.docx"
}
  1. Заполнение шаблона:

{
  "template_path": "/path/to/SSIT_Template.docx",
  "content_mapping": {
    "overview": "NetApp Cutover Dependency Mapper",
    "business_challenge": "Business Challenge",
    "body_1": "Long body paragraph...",
    "solution_item_1": "Title\nBody text..."
  },
  "output_path": "/path/to/output.docx",
  "convert_to_pdf": true
}

Разработка

Запустите тесты:

pytest

Лицензия

MIT

Related MCP Connectors

Related MCP Servers