Skip to main content
Glama

Сервер MCP — Протоколы собраний

Empresa S.A. | Внутреннее использование и конфиденциально

Сервер MCP, построенный на Azure Functions Python. Предоставляет инструменты MCP для управления полным потоком захвата протоколов, валидации, генерации черновика, редактирования, утверждения и финального преобразования в Word.


Доступные инструменты

Tool

Описание

ActaWizard

Управляет созданием сессий, захватом данных, сохранением ответов и следующими вопросами.

ValidateActa

Проверяет, что обязательные поля протокола заполнены.

GenerateDraft

Генерирует черновик протокола в Markdown, используя захваченные данные.

UpdateDraft

Позволяет изменить черновик до его утверждения.

ApproveDraft

Регистрирует формальное утверждение черновика.

GenerateDocx

Преобразует утверждённый черновик в документ Word (возвращается в base64).

Бизнес-поток

ActaWizard → ValidateActa → GenerateDraft → Показать черновик → UpdateDraft (0 или более раз) → ApproveDraft → GenerateDocx


Related MCP server: office-mcp-server

Предварительные требования

  • Python 3.10+ (рекомендуется 3.12)

  • Azure Functions Core Tools v4

  • Azurite (эмулятор Storage — требуется даже локально, расширение MCP использует его для транспорта SSE)

  • azure-functions>=1.24.0 (с более старыми версиями mcp_tool_trigger не работает)


1. Установка зависимостей

python3 -m venv .venv
. .venv/bin/activate       # en Windows: .venv\Scripts\activate
pip install --upgrade pip
pip install -r requirements.txt

2. Запуск тестов (без необходимости поднимать сервер)

Тесты в tests/test_tools.py напрямую вызывают логику каждого инструмента, минуя среду выполнения Azure Functions и Azurite. Это самый быстрый способ проверить, что бизнес-логика работает:

pytest -v

Должно пройти 5 тестов, которые покрывают: создание сессии, полный поток до генерации DOCX, валидацию с отсутствующими полями, и то, что утверждённый черновик нельзя редактировать.

3. Запуск реального сервера MCP

# En otra terminal, arrancar el emulador de storage:
azurite --silent --location .azurite --debug .azurite/debug.log
# o, en VS Code: Ctrl+Shift+P -> "Azurite: Start"

func start

Сервер MCP предоставляет вебхук по адресу:

http://localhost:7071/runtime/webhooks/mcp

4. Тестирование инструментов end-to-end

Два способа:

a) MCP Inspector (рекомендуется, использует реальный протокол):

npx @modelcontextprotocol/inspector

Подключиться к http://localhost:7071/runtime/webhooks/mcp/sse, просмотреть список инструментов и вызывать их по одному, наблюдая JSON-ответ.

b) Postman: импортировать tests/Actas_MCP_Postman.json и выполнить запросы по порядку (с 01 по 07). Первые два запроса автоматически сохраняют session_id и draft_id как переменные коллекции для последующих.


Важные замечания

  • local.settings.json находится в .gitignore. Не загружайте учётные данные в репозиторий.

  • Состояние (сессии, черновики) сохраняется в .data/*.json рядом с проектом. Этого достаточно для локальной разработки, но не подходит для продакшена: в Azure Functions локальная файловая система не является постоянной и не разделяется между экземплярами. Перед развёртыванием с более чем одним экземпляром замените tools/storage.py на Azure Table Storage, Cosmos DB или Blob Storage.

  • В host.json установлено system.webhookAuthorizationLevel: "Anonymous" для упрощения локального тестирования. Перед развёртыванием в Azure измените его на "Function" или "System", чтобы требовать ключ mcp_extension.

  • UpdateDraft интерпретирует инструкции на испанском с простыми правилами (заменить/удалить/добавить); неоднозначные инструкции добавляются в конец черновика вместо точного применения. Это известное ограничение, а не ошибка.


Быстрые советы

  • ActaWizard возвращает sessionId, status, nextField и question.

  • ValidateActa возвращает complete и missingFields.

  • GenerateDraft создаёт черновик с draftId и draftMarkdown.

  • UpdateDraft не может редактировать утверждённый черновик.

  • GenerateDocx работает только если черновик утверждён, и возвращает файл как fileBase64 (декодировать для получения .docx).

Related MCP Connectors

Related MCP Servers

  • -
    license
    Not graded
    quality
    Not graded
    maintenance
    An MCP server that automates extraction of structured financial data from investment memorandums and generates standardized PowerPoint presentations through a RESTful API.
    -
  • A
    license
    Not graded
    quality
    C
    maintenance
    MCP server that converts videos, audio, and meeting recordings into structured transcripts and summaries with multi-backend ASR and automatic fallback.
    MIT
  • F
    license
    A
    quality
    B
    maintenance
    MCP server providing governed access to board meeting data, with tools to query meetings, motions, and documents, automatically applying anonymity policies before returning answers.
    6
    -