Files
mcp-server-dlya-upravleniya…/README.md
T

120 lines
3.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 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‑сервер для управления памятью агентов. 🚀