Реализация MCP-сервера с независимым хранением контекста и целеполагания
Архитектурные паттерны декомпозиции когнитивных функций агента: разделение памяти и вектора целей в контексте Model Context Protocol.
В современной архитектуре автономных агентов на базе LLM ключевым вызовом становится управление состоянием. Если сервер для хранения памяти (Memory Server) уже реализован и функционирует стабильно, следующим логическим шагом является создание выделенного модуля для целеполагания (Goal Management). Это решение соответствует принципу единой ответственности (SRP) и позволяет масштабировать систему.
1. Концептуальная модель: Память vs Цели
Критически важно провести четкую границу между ретроспективной памятью и проспективным целеполаганием. Память отвечает на вопрос «Что произошло?», тогда как модуль целей отвечает на вопрос «Что должно произойти?».
Memory Server (Существующий)
- Хранение фактов и событий
- Векторный поиск по контексту
- Долгосрочная семантика
Goal Server (Новый)
- Управление состоянием задач
- Приоритизация и зависимости
- Критерии завершения (DoD)
2. Архитектура MCP-сервера целей
Для реализации сервера целей в рамках Model Context Protocol (MCP) необходимо определить структуру данных, отличную от векторных эмбеддингов памяти. Цели — это структурированные объекты с жизненным циклом.
interface Goal {
id: string;
title: string;
description: string;
status: 'PENDING' | 'IN_PROGRESS' | 'BLOCKED' | 'COMPLETED';
priority: number; // 1-10
dependencies: string[]; // IDs of parent goals
context_snapshot: string; // Ссылка на Memory Server ID
created_at: Date;
}
«Разделение контекста исполнения (память) и вектора направления (цели) позволяет агенту переключаться между задачами без потери накопленного опыта.»
Реализация инструментов (Tools)
MCP-сервер должен экспонировать набор инструментов для взаимодействия с хранилищем целей. Основные операции включают:
- 1 create_goal: Инициализация новой цели с привязкой к текущему контексту памяти.
- 2 update_status: Изменение состояния задачи и проверка условий завершения.
- 3 get_active_goals: Выборка актуальных целей, отсортированных по приоритету.
3. Интеграция и Синхронизация
Ключевой аспект — взаимодействие между вашим существующим Memory Server и новым Goal Server. При создании цели агент должен автоматически делать снимок текущего контекста из памяти и сохранять ссылку (ID) в объекте цели. Это обеспечивает воспроизводимость: если агент вернется к задаче через неделю, он сможет восстановить контекст через эту ссылку.
Шаг 1: Инициализация
Агент запрашивает у Memory Server актуальный контекст диалога.
Шаг 2: Декомпозиция
LLM разбивает запрос пользователя на подзадачи и отправляет их в Goal Server.
Шаг 3: Исполнение
Агент выполняет действия, записывая результаты обратно в Memory Server.
Заключение
Реализация независимого сервера целеполагания превращает вашу систему из реактивного чат-бота в проактивного агента. Разделение ответственности между хранением прошлого (Memory) и планированием будущего (Goals) является фундаментом для создания масштабируемых автономных систем.
Оценка приоритета задачи
Используйте этот инструмент для расчета веса задачи перед сохранением в Goal Server.