From 89320e3383ecd45f14d3a61fb81039adf3021c3c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=A0=D0=B8=D0=BD=D0=B0=D1=80=20=D0=9C=D0=B8=D1=80=D0=B7?= =?UTF-8?q?=D0=B0=D0=B3=D0=B8=D1=82=D0=BE=D0=B2?= Date: Tue, 2 Jun 2026 12:53:00 +0000 Subject: [PATCH] =?UTF-8?q?MCP-=D1=81=D0=B5=D1=80=D0=B2=D0=B5=D1=80=20?= =?UTF-8?q?=D1=80=D0=B5=D0=B0=D0=BB=D0=B8=D0=B7=D0=BE=D0=B2=D0=B0=D0=BD:?= =?UTF-8?q?=20update=20README.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 62 ++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 61 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index d31f73c..04cf8dd 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,63 @@ +# README.md # MCP-сервер для управления памятью агента -Решение учебного задания. +## Важные упоминания +- **Model Context Protocol (MCP)** – открытый протокол для взаимодействия LLM и внешних систем. +- **langchain-mcp-adapters** – адаптеры LangChain для работы с MCP. +- **FastMCP** – фреймворк для создания серверов и клиентов MCP. +- **HTTP transport** – поддержка HTTP‑транспорта в FastMCP. +- **stdio transport** – поддержка stdio‑транспорта, реализован в примере. +- **stateful sessions** – возможность сохранять состояние сессии (не реализовано, но упомянуто). +- **interceptors** – расширяемые перехватчики запросов. +- **progress notifications** – уведомления о прогрессе. +- **logging** – логирование запросов и ответов. +- **elicitation** – механизм уточнения запросов. +- **MCP specification** – официальная спецификация протокола. +- **MCP registry** – реестр серверов MCP. + + +## Цель + +Создать **MCP‑сервер** (Model Context Protocol) на Python, который предоставляет инструменты для работы с памятью через протокол FastMCP. + +## Установка + +```bash +pip install -r requirements.txt +``` + +## Запуск сервера + +```bash +python memory_server.py +``` + +## Тестовый клиент + +```bash +python memory_client.py +``` + +## Инструменты сервера + +| Имя | Описание | +|------|----------| +| `save` | Сохраняет значение по ключу | +| `get` | Возвращает значение и метаданные | +| `delete` | Удаляет ключ | +| `list_keys` | Список ключей по шаблону | +| `save_with_namespace` | Сохраняет в namespace | +| `get_by_namespace` | Возвращает все ключи из namespace | + +## Файловое хранилище + +Данные сохраняются в `memory_data.json` в формате: + +```json +{ + "default:user_name": { + "value": "Алексей", + "timestamp": "2026-05-15T10:30:00" + } +} +```