mcp-context-engineering
Version:
The intelligent context optimization system for AI coding assistants. Built with Cole's PRP methodology, Context Portal knowledge graphs, and production-ready MongoDB architecture.
200 lines (199 loc) • 7.66 kB
JavaScript
import { ObjectId } from 'mongodb';
import { z } from 'zod';
// Cole's PRP Methodology Schema (Verified structure)
export const PRPMethodologySchema = z.object({
// Research phase (Cole's verified approach)
research: z.object({
codebase_analysis: z.array(z.string()),
external_research: z.array(z.string()),
documentation_urls: z.array(z.string()),
existing_patterns: z.array(z.string()),
potential_challenges: z.array(z.string())
}),
// Implementation blueprint (Cole's template structure)
implementation: z.object({
goal: z.string(),
business_value: z.string(),
technical_requirements: z.array(z.string()),
pseudocode: z.string(),
task_breakdown: z.array(z.object({
task: z.string(),
order: z.number(),
dependencies: z.array(z.string()),
validation: z.string()
})),
error_handling_strategy: z.string(),
integration_points: z.array(z.string())
}),
// Validation framework (Cole's quality approach)
validation: z.object({
syntax_checks: z.array(z.string()),
unit_test_commands: z.array(z.string()),
integration_tests: z.array(z.string()),
confidence_score: z.number().min(1).max(10),
quality_checklist: z.array(z.string())
})
});
// Context Portal Knowledge Graph Schema (Enhanced with verified patterns)
export const DecisionSchema = z.object({
id: z.string(),
title: z.string(),
description: z.string(),
rationale: z.string(),
implementation_details: z.string().optional(),
consequences: z.array(z.string()),
status: z.enum(['proposed', 'accepted', 'rejected', 'deprecated']),
tags: z.array(z.string()).optional(),
date: z.date(),
workspace_id: z.string(),
auto_linked_progress: z.array(z.string()).optional()
});
export const ProgressEntrySchema = z.object({
id: z.string(),
task: z.string(),
status: z.enum(['todo', 'in_progress', 'completed', 'blocked']),
progress_notes: z.string(),
parent_id: z.string().optional(), // Hierarchical relationships
date: z.date(),
workspace_id: z.string(),
linked_decisions: z.array(z.string()).optional()
});
export const SystemPatternSchema = z.object({
id: z.string(),
pattern_name: z.string(),
description: z.string(),
usage_examples: z.array(z.string()),
benefits: z.array(z.string()),
drawbacks: z.array(z.string()),
implementation_details: z.string().optional(),
workspace_id: z.string()
});
export const ContextLinkSchema = z.object({
source_item_type: z.string(),
source_item_id: z.string(),
target_item_type: z.string(),
target_item_id: z.string(),
relationship_type: z.enum(['implements', 'related_to', 'depends_on', 'enables', 'conflicts_with', 'relates_to_progress']),
description: z.string().optional(),
workspace_id: z.string(),
timestamp: z.date()
});
export const KnowledgeGraphSchema = z.object({
// Core entities (Context Portal verified structure)
decisions: z.array(DecisionSchema),
progress_entries: z.array(ProgressEntrySchema),
system_patterns: z.array(SystemPatternSchema),
// Knowledge graph relationships (explicit linking)
context_links: z.array(ContextLinkSchema),
// Flexible custom data with categories
custom_data: z.record(z.any()),
// Workspace context
workspace_context: z.object({
workspace_id: z.string(),
project_id: z.string(),
active_context: z.record(z.any()).optional(),
product_context: z.record(z.any()).optional()
}),
// Legacy relationships (for backwards compatibility)
relationships: z.object({
depends_on: z.array(z.string()),
enables: z.array(z.string()),
conflicts_with: z.array(z.string()),
related_patterns: z.array(z.string())
})
});
// Agent-specific optimization schema
export const AgentOptimizationSchema = z.object({
cursor: z.object({
format: z.enum(['concise', 'detailed']),
focus: z.array(z.string()),
effectiveness_score: z.number().min(0).max(10),
preferred_sections: z.array(z.string()),
avoid_patterns: z.array(z.string())
}),
windsurf: z.object({
format: z.enum(['step_by_step', 'overview']),
focus: z.array(z.string()),
effectiveness_score: z.number().min(0).max(10),
preferred_sections: z.array(z.string()),
avoid_patterns: z.array(z.string())
}),
claude_code: z.object({
format: z.enum(['full_prp', 'summary']),
focus: z.array(z.string()),
effectiveness_score: z.number().min(0).max(10),
preferred_sections: z.array(z.string()),
avoid_patterns: z.array(z.string())
}),
generic: z.object({
format: z.literal('balanced'),
focus: z.array(z.string()),
effectiveness_score: z.number().min(0).max(10),
preferred_sections: z.array(z.string()),
avoid_patterns: z.array(z.string())
})
});
// Effectiveness tracking schema
export const EffectivenessMetricsSchema = z.object({
overall_success_rate: z.number().min(0).max(1),
implementation_success_count: z.number().nonnegative(),
usage_count: z.number().nonnegative(),
last_used: z.date(),
improvement_suggestions: z.array(z.string()),
feedback_history: z.array(z.object({
score: z.number().min(0).max(10),
feedback: z.string(),
agent_type: z.string(),
timestamp: z.date(),
implementation_success: z.boolean()
}))
});
// Main Universal Context Pattern Schema
export const UniversalContextPatternSchema = z.object({
_id: z.instanceof(ObjectId).optional(),
// Cole's PRP methodology structure (verified)
prp_methodology: PRPMethodologySchema,
// Context Portal knowledge graph structure (verified)
knowledge_graph: KnowledgeGraphSchema,
// Embedding vectors for semantic search (English text)
embeddings: z.object({
methodology_vector: z.array(z.number()), // Cole's English methodology description
context_vector: z.array(z.number()), // Context Portal English descriptions
query_vector: z.array(z.number()) // User query matching vector
}),
// Universal agent optimization
agent_optimizations: AgentOptimizationSchema,
// Learning and effectiveness tracking
effectiveness_metrics: EffectivenessMetricsSchema,
// Metadata
metadata: z.object({
pattern_type: z.string(),
complexity: z.enum(['low', 'medium', 'high']),
project_types: z.array(z.string()),
tech_stacks: z.array(z.string()),
tags: z.array(z.string()),
created_at: z.date(),
updated_at: z.date(),
version: z.number()
})
});
// Enhanced collection structure (Context Portal + MongoDB best practices)
export const COLLECTIONS = {
// Core pattern storage
CONTEXT_PATTERNS: 'context_patterns',
// Knowledge graph entities (separate collections for better performance)
DECISIONS: 'decisions',
PROGRESS_ENTRIES: 'progress_entries',
SYSTEM_PATTERNS: 'system_patterns',
CONTEXT_LINKS: 'context_links',
// Project and workspace management
PROJECT_CONTEXTS: 'project_contexts',
WORKSPACES: 'workspaces',
// Version control and history (Context Portal pattern)
CONTEXT_HISTORY: 'context_history',
// Agent and effectiveness tracking
AGENT_PROFILES: 'agent_profiles',
EFFECTIVENESS_TRACKING: 'effectiveness_tracking',
// Vector embeddings (MongoDB Atlas Vector Search)
EMBEDDINGS: 'embeddings'
};