# MCP‑сервер для управления памятью агента ## Описание MCP‑сервер (Model Context Protocol) – это самостоятельный сервис, который предоставляет API для работы с памятью агентов через стандартизированный протокол. Сервис поддерживает **namespaces** и хранит данные в JSON‑файле, позволяя агентам сохранять, обновлять и получать информацию независимо от их локального окружения. - **FastMCP** – быстрый HTTP‑сервер для MCP. - **Pydantic** – валидатор данных (не используется напрямую в примере, но готов к расширению). - **python-dotenv** – загрузка переменных окружения из `.env`. ## Предварительные требования | Пакет | Версия | |-------|--------| | Python | 3.10+ | | pip | любой | Установите зависимости через `pip`: ```bash pip install -r requirements.txt ``` Файл `requirements.txt` содержит: ``` fastmcp>=0.1.0 pydantic>=2.0 python-dotenv>=1.0 ``` ## Установка Клонируйте репозиторий и установите зависимости: ```bash git clone https://github.com/your-org/memory-mcp.git cd memory-mcp pip install -r requirements.txt ``` Создайте файл `.env` в корне проекта (если понадобится): ```dotenv MEMORY_FILE=memory_data.json PORT=8000 ``` ## Запуск Запустите сервер: ```bash python memory_server.py ``` Сервер будет слушать на порту, указанном в переменной `PORT` (по умолчанию 8000). ### Пример использования клиента ```python # memory_client.py from fastmcp import FastMCPClient import json client = FastMCPClient("Memory-Server", host="localhost", port=8000) # Сохранить запись response = client.post("/memory/namespace1/item1", data={"value": 42}) print(response.json()) # Получить запись response = client.get("/memory/namespace1/item1") print(response.json()) ``` Запустите клиент в отдельном терминале: ```bash python memory_client.py ``` ## Пример работы 1. **Сохранение данных** ```bash curl -X POST http://localhost:8000/memory/namespaces/agents/agent_123 \ -H "Content-Type: application/json" \ -d '{"name":"Alice","role":"researcher"}' ``` 2. **Получение данных** ```bash curl http://localhost:8000/memory/namespaces/agents/agent_123 ``` 3. **Обновление записи** ```bash curl -X PUT http://localhost:8000/memory/namespaces/agents/agent_123 \ -H "Content-Type: application/json" \ -d '{"name":"Alice","role":"senior researcher"}' ``` 4. **Удаление записи** ```bash curl -X DELETE http://localhost:8000/memory/namespaces/agents/agent_123 ``` ## Структура проекта ``` memory-mcp/ ├── memory_server.py # Сервер MCP ├── memory_client.py # Пример клиента ├── requirements.txt └── .env (опционально) ``` --- **Готово!** Теперь у вас есть работающий MCP‑сервер для управления памятью агентов. 🚀