6.4 KiB
6.4 KiB
Xilope Production Environment - MCP Browser Guide
Welcome to Xilope's production MCP Browser setup! This environment provides integrated access to both MCP tools and the Claude Memory (cmem) system.
Production Architecture
Memory Storage Integration
- Local Storage:
/mnt/data/claude/claude/.mcp-memory/ - cmem Integration: Bidirectional sync via
/mnt/data/claude/claude/bin/cmem - Identity-Based: Each project gets separate memory space
- Persistent: Memory survives across AI assistant sessions
Built-in Servers Available
-
Memory Server (
builtin:memory::):task_add,task_list,task_update- Task management with cmem syncdecision_add- Decision tracking with reasoningpattern_add,pattern_resolve- Learning pattern managementknowledge_add,knowledge_get- Fact storage and retrievalproject_switch- Switch between project contextsmemory_summary- Get overview of stored information
-
Screen Server (
builtin:screen::):create_session,execute,peek- GNU screen managementlist_sessions,kill_session- Session lifecycleenable_multiuser,attach_multiuser,add_user- Collaboration
-
Pattern Server (
builtin:patterns::):add_pattern,list_patterns- Auto-response pattern managementtest_pattern,execute_pattern- Pattern execution
-
Onboarding Server (
builtin:onboarding::):onboarding- Identity-aware instructionsonboarding_list,onboarding_delete,onboarding_export- Management
Production Workflows
Starting a Session
# Check what servers are available
mcp_discover(jsonpath="$.servers[*].name")
# List all memory tools for task management
mcp_discover(jsonpath="$.tools[?(@.name =~ /memory|task/)]")
# Check current project context
mcp_call(
method="tools/call",
params={
"name": "builtin:memory::memory_summary",
"arguments": {}
}
)
Task Management with cmem Sync
# Add a new task (automatically syncs to cmem)
mcp_call(
method="tools/call",
params={
"name": "builtin:memory::task_add",
"arguments": {
"content": "Implement feature X",
"priority": "high",
"assignee": "next-ai"
}
}
)
# List active tasks
mcp_call(
method="tools/call",
params={
"name": "builtin:memory::task_list",
"arguments": {"status": "pending"}
}
)
# Update task status (syncs completion to cmem)
mcp_call(
method="tools/call",
params={
"name": "builtin:memory::task_update",
"arguments": {
"task_id": "abc123",
"status": "completed"
}
}
)
Decision and Pattern Management
# Record important decisions (synced to cmem)
mcp_call(
method="tools/call",
params={
"name": "builtin:memory::decision_add",
"arguments": {
"choice": "Use Docker for deployment",
"reasoning": "Simplifies environment management",
"alternatives": ["Native install", "VM deployment"]
}
}
)
# Add learning patterns (synced to cmem)
mcp_call(
method="tools/call",
params={
"name": "builtin:memory::pattern_add",
"arguments": {
"pattern": "Always test before commit",
"description": "Run full test suite before any git commit",
"priority": "high"
}
}
)
Screen Session Management
# Create a development session
mcp_call(
method="tools/call",
params={
"name": "builtin:screen::create_session",
"arguments": {
"session_name": "development",
"working_directory": "/mnt/data/claude/claude"
}
}
)
# Execute commands in session
mcp_call(
method="tools/call",
params={
"name": "builtin:screen::execute",
"arguments": {
"session_name": "development",
"command": "git status"
}
}
)
# Peek at session output
mcp_call(
method="tools/call",
params={
"name": "builtin:screen::peek",
"arguments": {"session_name": "development"}
}
)
Project Context Switching
# Switch to different project memory space
mcp_call(
method="tools/call",
params={
"name": "builtin:memory::project_switch",
"arguments": {"project_name": "mcp-browser"}
}
)
# Use onboarding for project-specific instructions
mcp_call(
method="tools/call",
params={
"name": "builtin:onboarding::onboarding",
"arguments": {
"identity": "mcp-browser",
"instructions": "Focus on context optimization and AI-first development"
}
}
)
cmem Integration Details
Memory Storage Structure
/mnt/data/claude/claude/.mcp-memory/
├── default/ # Default project space
│ ├── tasks.json # Task storage
│ ├── decisions.json # Decision history
│ ├── patterns.json # Learning patterns
│ └── knowledge.json # Knowledge base
├── mcp-browser/ # Project-specific space
└── [other-projects]/ # Additional projects
cmem Wrapper
- Location:
/mnt/data/claude/claude/bin/cmem - Function: Wraps
/usr/local/bin/cmemwith proper directory context - Integration: Automatic bidirectional sync with MCP memory server
- Commands:
cmem handoff,cmem task add,cmem pattern add, etc.
Sync Behavior
- Automatic: All memory operations sync to cmem in background
- Graceful: If cmem unavailable, operations continue locally
- Identity-Aware: Each project gets separate cmem context
- Bidirectional: Changes in either system propagate to the other
Production Best Practices
- Always check memory summary at start of session
- Use task management to track work across AI sessions
- Record decisions with reasoning for future reference
- Create patterns to capture effective approaches
- Switch project contexts when working on different codebases
- Use screen sessions for persistent development environments
Error Handling
If cmem sync fails:
- Operations continue with local storage
- Sync retries automatically when cmem becomes available
- No data loss occurs during temporary cmem unavailability
This production setup ensures seamless AI assistant transitions while maintaining full project context and memory across sessions.