Skip to main content
Glama
BenzyTAi

mcp-thread-persistence-demo

by BenzyTAi

Демонстрация сохранения состояния потока MCP

Минимальный MCP-сервер (Model Context Protocol), который сохраняет заметки потока чата в SQLite, с реальным клиентом, который использует его через фактический stdio-транспорт (а не просто вызывает базовые функции напрямую).

Создано как учебный пример, повторяющий реальный паттерн фриланс-задачи: «исправить/реализовать вызовы MCP-инструментов, которые сохраняют состояние потока чата в базу данных, с семантикой upsert (создать, если новый, обновить, если существующий, без дублирующихся строк на поток)».

Что здесь

  • server.py — MCP-сервер, предоставляющий три инструмента:

    • save_note(user_id, thread_id, content) — upsert в SQLite, ключ — (user_id, thread_id). Второй вызов для того же потока обновляет существующую строку вместо создания дубликата.

    • get_note(user_id, thread_id) — чтение сохранённой заметки.

    • list_threads(user_id) — список всех потоков для пользователя.

  • test_client.py — реальный MCP-клиент, который подключается к server.py через stdio, вызывает list_tools, затем последовательно использует все три инструмента (включая двойной вызов save_note для одного и того же потока, чтобы убедиться, что upsert не создаёт дублирующуюся строку).

Related MCP server: teamshare-server

Запуск

python3.12 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt

python test_client.py

Примечания

Ограничено mcp<2 намеренно: в релизе 2.x SDK mcp переименовал FastMCP в MCPServer и изменил другие API. Большинство существующих учебников и кодовых баз в мире по-прежнему ориентированы на API FastMCP версии 1.x, поэтому этот проект тоже нацелен на него.

Maintenance

ActivityStale
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    B
    maintenance
    Enables coding agents on a team to publish short context notes that are automatically surfaced at the start of every teammate's next session, with read receipts and SQLite-backed persistent storage over MCP.
    -
  • A
    license
    A
    quality
    B
    maintenance
    Enables MCP-compatible agents to remember, recall, link, and forget durable notes across devices, with local SQLite storage and optional libSQL/Turso sync.
    4
    25 PyPI
    1
    MIT