Skip to main content
Glama

MCP Context Provider

LEARNING_GUIDE.md13.7 kB
# Phase 3: Intelligent Learning System Guide ## Overview Phase 3 introduces the **Synergistic Integration with Intelligent Learning** system, transforming the MCP Context Provider from a static configuration tool into an intelligent, self-improving context evolution platform. This system learns from usage patterns, optimizes contexts automatically, and provides proactive suggestions for workflow improvement. ## Table of Contents 1. [Core Concepts](#core-concepts) 2. [Architecture Overview](#architecture-overview) 3. [Learning Engine Components](#learning-engine-components) 4. [Memory Service Integration](#memory-service-integration) 5. [Available Tools](#available-tools) 6. [Usage Examples](#usage-examples) 7. [Configuration](#configuration) 8. [Best Practices](#best-practices) ## Core Concepts ### Intelligent Context Evolution Traditional context management requires manual updates and optimization. Phase 3 introduces **intelligent context evolution** where contexts automatically improve based on: - **Usage Patterns**: How frequently contexts are accessed and modified - **Effectiveness Metrics**: Success rates and performance indicators - **Memory Analysis**: Historical data from the integrated memory service - **Proactive Intelligence**: Suggestions for missing contexts and optimizations ### Learning-Driven Optimization The system continuously learns from: - Context creation and modification patterns - Session initialization performance - Memory service interactions - User workflow behaviors This learning data drives automatic context optimization and proactive suggestions. ## Architecture Overview ``` ┌─────────────────────────────────────────────────────────────┐ │ Phase 3 Learning System │ ├─────────────────────────────────────────────────────────────┤ │ ┌─────────────────┐ ┌─────────────────────────────────┐ │ │ │ ContextProvider │ │ ContextLearningEngine │ │ │ │ │◄──►│ │ │ │ │ • Session Init │ │ • Pattern Recognition │ │ │ │ • Context Mgmt │ │ • Effectiveness Analysis │ │ │ │ • Auto Learning │ │ • Optimization Suggestions │ │ │ └─────────────────┘ │ • Proactive Recommendations │ │ │ │ └────────────────────────────────┘ │ │ ▼ ▲ │ │ ┌─────────────────┐ │ │ │ │ Memory Service │◄───────────────────┘ │ │ │ Integration │ │ │ │ │ │ │ │ • mcp-memory- │ │ │ │ service │ │ │ │ • sqlite_vec │ │ │ │ • Persistent │ │ │ │ Learning Data │ │ │ └─────────────────┘ │ └─────────────────────────────────────────────────────────────┘ ``` ## Learning Engine Components ### 1. Context Effectiveness Analysis **Purpose**: Analyzes how effective each context has been based on usage patterns and memory data. **Metrics Tracked**: - Total interactions with the context - Creation and update frequency - Pattern additions and modifications - Last activity timestamp **Effectiveness Score Calculation**: - Base score (0.3) for having interactions - Active use score (0.4) for regular updates - Evolution score (0.3) for pattern additions - Normalized to 0-1 range ### 2. Optimization Suggestions **Global Analysis**: Examines all contexts to identify optimization opportunities: - Most active contexts (potential templates) - Low-usage contexts (candidates for review) - Missing common tool contexts - Workflow automation opportunities ### 3. Session Pattern Learning **Performance Analysis**: Learns from session initialization patterns: - Execution time monitoring - Action success rates - Error pattern analysis - Performance optimization insights ### 4. Proactive Context Suggestions **Intelligence-Driven Recommendations**: - Missing tool contexts for common development environments - Workflow context suggestions for multi-context scenarios - Memory integration enhancement recommendations - Context combination opportunities ## Memory Service Integration ### Real mcp-memory-service Connection Phase 3 replaces the simulation layer with actual `mcp-memory-service` integration: ```json { "mcpServers": { "memory": { "command": "/Users/username/.local/bin/uv", "args": ["--directory", "/path/to/mcp-memory-service", "run", "memory"], "env": { "MCP_MEMORY_STORAGE_BACKEND": "sqlite_vec", "MCP_MEMORY_SQLITE_PATH": "/path/to/memory/sqlite_vec.db" } } } } ``` ### Learning Data Storage All learning activities are automatically stored in memory: **Context Changes**: ```json { "content": "Context created: example_context - New context file created", "tags": ["context_change", "created", "example_context"], "metadata": { "operation": "create", "context_name": "example_context", "timestamp": "2025-09-17T..." } } ``` **Session Learning**: ```json { "content": "Session learning: Executed 5 actions in 0.045s with 0 errors", "tags": ["session_learning", "performance", "initialization"], "metadata": { "execution_time": 0.045, "actions_count": 5, "errors_count": 0 } } ``` **Optimization Events**: ```json { "content": "Context optimized: example_context - Applied preference tuning", "tags": ["context_change", "optimized", "example_context"], "metadata": { "optimization_type": "preference_tuning", "improvements": ["Updated 2 preferences"] } } ``` ## Available Tools ### Core Learning Tools #### 1. `analyze_context_effectiveness` Analyzes the effectiveness of a specific context. **Parameters**: ```json { "context_name": "terraform" } ``` **Response**: ```json { "context_name": "terraform", "effectiveness_score": 0.7, "usage_stats": { "total_interactions": 15, "creation_count": 1, "update_count": 5, "pattern_additions": 3 }, "recommendations": [ "High-usage context - consider creating specialized variants", "Context shows healthy usage patterns" ] } ``` #### 2. `suggest_context_optimizations` Provides global optimization suggestions across all contexts. **Response**: ```json [ { "context_name": "global", "optimization_type": "global_analysis", "priority": "medium", "description": "Most active context: terraform - consider creating templates based on it" } ] ``` #### 3. `get_proactive_suggestions` Offers proactive suggestions for new contexts and improvements. **Parameters**: ```json { "current_contexts": ["terraform", "azure", "git"] } ``` **Response**: ```json [ { "suggested_context": "Create docker_context.json for docker development", "reason": "docker is commonly used but no context exists", "confidence": 0.5, "type": "missing_tool_context", "priority": "medium" } ] ``` #### 4. `auto_optimize_context` Automatically optimizes a context based on learning engine recommendations. **Parameters**: ```json { "context_name": "terraform", "optimization_data": { "type": "preference_tuning", "preferences": { "default_provider": "aws", "enable_validation": true } } } ``` **Response**: ```json { "success": true, "context_name": "terraform", "optimization_type": "preference_tuning", "optimizations_applied": [ "Updated preference default_provider", "Updated preference enable_validation" ], "backup_file": "/path/to/backup_terraform_context_20250917.json" } ``` ## Usage Examples ### Example 1: Analyzing Context Effectiveness ```bash # Analyze how effective your terraform context has been curl -X POST http://localhost:8000/mcp \ -H "Content-Type: application/json" \ -d '{ "method": "tools/call", "params": { "name": "analyze_context_effectiveness", "arguments": { "context_name": "terraform" } } }' ``` ### Example 2: Getting Optimization Suggestions ```bash # Get global optimization suggestions curl -X POST http://localhost:8000/mcp \ -H "Content-Type: application/json" \ -d '{ "method": "tools/call", "params": { "name": "suggest_context_optimizations", "arguments": {} } }' ``` ### Example 3: Auto-Optimizing a Context ```bash # Automatically optimize a context based on usage patterns curl -X POST http://localhost:8000/mcp \ -H "Content-Type: application/json" \ -d '{ "method": "tools/call", "params": { "name": "auto_optimize_context", "arguments": { "context_name": "terraform", "optimization_data": { "type": "rule_refinement", "syntax_rules": { "resource_naming": { "patterns": ["^[a-z][a-z0-9_]*$"], "description": "Resource names must be lowercase with underscores" } } } } } }' ``` ## Configuration ### Environment Variables ```bash # Enable automatic context loading export AUTO_LOAD_CONTEXTS=true # Set context configuration directory export CONTEXT_CONFIG_DIR=./contexts # Memory service integration (configured via .mcp.json) ``` ### Memory Service Setup Ensure `mcp-memory-service` is properly configured in your `.mcp.json`: ```json { "mcpServers": { "memory": { "command": "/path/to/uv", "args": ["--directory", "/path/to/mcp-memory-service", "run", "memory"], "env": { "MCP_MEMORY_STORAGE_BACKEND": "sqlite_vec", "MCP_MEMORY_SQLITE_PATH": "/path/to/memory.db" } }, "context-provider": { "command": "python", "args": ["context_provider_server.py"], "cwd": "/path/to/MCP-Context-Provider", "env": { "CONTEXT_CONFIG_DIR": "./contexts", "AUTO_LOAD_CONTEXTS": "true" } } } } ``` ## Best Practices ### 1. Regular Effectiveness Analysis - Analyze context effectiveness monthly - Review low-scoring contexts for relevance - Optimize high-usage contexts for better performance ### 2. Memory Service Monitoring - Monitor memory service storage for learning insights - Review session learning patterns for performance optimization - Use memory data to identify context usage trends ### 3. Proactive Context Management - Regularly check proactive suggestions - Create missing tool contexts for your development stack - Implement workflow contexts for common patterns ### 4. Optimization Strategy - Start with preference tuning for quick wins - Use pattern improvement for frequently used contexts - Apply rule refinement based on actual usage patterns ### 5. Backup and Recovery - All optimizations create automatic backups - Store backups in version control for team sharing - Test optimizations in development before production use ## Troubleshooting ### Common Issues **Memory Service Not Available**: - Check `.mcp.json` configuration - Verify `mcp-memory-service` is running - Ensure proper environment variables are set **Learning Data Not Persisting**: - Check memory service connection status - Verify sqlite_vec database path is writable - Review memory service logs for errors **Optimization Failures**: - Check context file permissions - Verify backup directory is writable - Ensure context data passes validation ### Debug Commands ```bash # Check memory service status python -c " from context_provider_server import ContextProvider import asyncio async def check(): provider = ContextProvider() stats = await provider.memory_service.get_memory_stats() print(stats) asyncio.run(check()) " # Test learning engine python test_phase3_learning.py # Verify context effectiveness python -c " from context_provider_server import ContextProvider import asyncio async def analyze(): provider = ContextProvider() result = await provider.learning_engine.analyze_context_effectiveness('terraform') print(result) asyncio.run(analyze()) " ``` ## Next Steps With Phase 3 complete, consider: 1. **Team Knowledge Propagation**: Share optimized contexts across team members 2. **Enterprise Analytics**: Monitor context effectiveness across projects 3. **Custom Learning Patterns**: Develop organization-specific optimization rules 4. **Integration Workflows**: Incorporate learning insights into CI/CD pipelines The intelligent learning system provides a foundation for continuous improvement and team knowledge sharing, making context management a collaborative and automated process.

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/doobidoo/MCP-Context-Provider'

If you have feedback or need assistance with the MCP directory API, please join our Discord server