Skip to main content
Glama

Мой собственный MCP на основе проекта создания протоколов совещаний

Это учебный локальный MCP-пакет для просмотра неструктурированных заметок совещаний, создания промптов для написания протоколов, проверки черновиков и сохранения после одобрения пользователем.

Названия компаний, имена людей, расписания, инциденты, цифры и высказывания в этом пакете — синтетические данные, созданные исключительно для обучения.

Учебные цели

После завершения практики обучающийся сможет:

  1. Объяснять роли Host, Server и Tool в MCP.

  2. Запускать локальный STDIO MCP-сервер на Python.

  3. Реализовывать и модифицировать Tool для чтения неструктурированных данных.

  4. Проектировать записывающий Tool с границами проверки и одобрения.

  5. Настраивать MCP под собственный формат протоколов совещаний.

  6. Подключать сервер к Codex или Claude Desktop и демонстрировать его работу.

  7. Проектировать описания инструментов, схемы, ответы и ошибки с точки зрения harness-инжиниринга.

Related MCP server: Local Knowledge Desk

Состав пакета

  • 3 синтетические неструктурированные заметки совещаний разного уровня сложности

  • Работающий сервер FastMCP: 11 инструментов, 3 ресурса, 1 промпт

  • Стандартный шаблон протокола совещания

  • Сохранение на основе токена одобрения и обнаружение перезаписи

  • Проверка соответствия исходному тексту (grounding)

  • 5 практических заданий для обучающихся

  • 1 пример правильных ответов для преподавателя

  • Модульные тесты домена, grounding и harness-конвенций, а также STDIO smoke-тест

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

Требования: Python 3.11 или новее, uv

uv sync --extra dev
uv run pytest -q
uv run python scripts/smoke_stdio.py

Чтобы использовать MCP Inspector, выполните следующее:

uv run mcp dev src/meeting_mcp/server.py

Предоставляемые инструменты

Рекомендуемый порядок работы указан ниже, а поле next_actions в каждом ответе подсказывает следующий шаг.

DISCOVER → READ → GROUND → DRAFT → CHECK → PREVIEW → [사용자 승인] → SAVED

Этап

Tool

Чтение/запись

Роль

DISCOVER

list_dummy_notes

чтение

Просмотр 3 синтетических заметок

READ

read_meeting_note

чтение

Просмотр исходного текста. Поддержка указания диапазона строк и цитатных якорей L14

GROUND

extract_note_facts

чтение

Извлечение кандидатов в решения, дат и неподтверждённых формулировок с номерами строк

DRAFT

build_minutes_prompt

чтение

Объединение шаблона и исходного текста

CHECK

validate_minutes_draft

чтение

Проверка структуры. Предоставляет rule_id·severity·line·fix (шлюз сохранения)

CHECK

check_minutes_grounding

чтение

Сверка людей, дат и чисел с исходным текстом (консультативно, не блокирует сохранение)

PREVIEW

diff_minutes_against_saved

чтение

Проверка отличий от ранее сохранённой версии

PREVIEW

preview_save_minutes

чтение

Объединённый показ проверки, grounding и diff, выдача токена одобрения

SAVED

save_approved_minutes

запись

Сохранение только при совпадении токена одобрения (единственный записывающий инструмент)

OBSERVE

list_saved_minutes

чтение

Список сохранённых протоколов

OBSERVE

read_minutes_audit_log

чтение

Просмотр журнала аудита сохранений

Ресурсы и промпты

Тип

URI или имя

Роль

Resource

note://{note_id}

Исходный текст заметки совещания

Resource

template://minutes

Стандартный шаблон протокола

Resource

minutes://{note_id}

Сохранённый протокол

Prompt

write_minutes

Рабочий процесс написания протокола, включая границу одобрения

Проектирование harness

Этот сервер рассматривает как объект проектирования не только функциональность, но и способ, которым модель использует инструменты. Подробнее см. в практике 5.

  • Каждый ответ содержит stage и next_actions, поэтому модель выбирает следующий инструмент, глядя только на ответ.

  • Ошибки возвращаются вместе с кодом причины, способом восстановления и доступными значениями.

  • Схемы аргументов остаются плоскими ({"note_id": "..."}). Если использовать Pydantic-модель в качестве типа аргумента, она будет вложена как {"params": {...}}, что изменит форму вызова.

  • Возвращаемые значения являются Pydantic-моделями, поэтому outputSchema создаётся автоматически.

  • Только надёжные проверки (структура) блокируют сохранение, а эвристические проверки (grounding) лишь выводят предупреждения.

  • Все инструменты помечены readOnlyHint / destructiveHint, чтобы различать записывающие инструменты.

Подключение к Codex

Выполните следующую команду в корне пакета:

codex mcp add personal-meeting -- uv --directory "$PWD" run python src/meeting_mcp/server.py
codex mcp list

В приложении Codex также можно добавить сервер через Settings → MCP servers → Add server как STDIO-сервер. Согласно официальной документации OpenAI, приложение Codex, CLI и расширение IDE используют общую конфигурацию MCP одного хоста.

Подключение к Claude Desktop

Замените ABSOLUTE_PROJECT_PATH в config/claude_desktop_config.example.json на абсолютный путь к этой папке и примените настройку в конфигурации Claude Desktop. После этого необходимо полностью закрыть и заново запустить приложение.

Рекомендуемые промпты для практики

personal-meeting MCP에서 사용 가능한 더미 회의 메모를 보여주세요.
training_design 메모를 읽고, 제공된 회의록 템플릿에 맞춰 초안을 작성하세요.
원문에 없는 담당자와 기한은 추정하지 마세요.
incident_review 메모에서 extract_note_facts로 ambiguity_flags를 먼저 확인하고,
확정되지 않은 항목은 전부 '미정'으로 남긴 회의록을 작성하세요.
작성한 회의록을 validate_minutes_draft와 check_minutes_grounding으로 검증하고,
통과하면 preview_save_minutes까지만 실행하세요. 저장은 아직 하지 마세요.

Порядок обучения

  1. START_HERE.md

  2. Практика 1: данные и инструменты

  3. Практика 2: промпт и шаблон протокола

  4. Практика 3: проверка и одобрение

  5. Практика 4: подключение клиента

  6. Практика 5: harness-инжиниринг

Команды проверки

uv run pytest -q
uv run python scripts/smoke_stdio.py
uv run python scripts/validate_package.py

Принципы проектирования

  • MCP не вызывает отдельный LLM API.

  • Codex или Claude выполняют обобщение, а MCP отвечает за данные, проверку и сохранение.

  • Информация, не подтверждённая в исходном тексте, не генерируется; проверка grounding сверяет это механически.

  • Для окончательного сохранения требуются и токен одобрения, выданный при предпросмотре, и явное одобрение пользователя.

  • Токен одобрения — это хэш (note_id, текст), поэтому одобренное содержимое не может отличаться от сохраняемого.

  • Доменная логика (core, grounding) отделена от конвенций инструментов (server, harness).

  • В реальном обучении данные о клиентах, сотрудниках и контрактах не используются.

Ссылки

Install Server
A
license - permissive license
A
quality
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

View all related MCP servers

Related MCP Connectors

  • MCP server for generating rough-draft project plans from natural-language prompts.

  • Markdown-based note-taking with a hosted MCP server. Your notes serve you and your AI.

  • MCP-native collaborative markdown editor with real-time AI document editing

View all MCP Connectors

Latest Blog Posts

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/minsik102/fileanalyzer_mcp_testmode'

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