Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| OLLAMA_URL | No | The URL of the Ollama server where local inference is performed. | http://localhost:11434 |
| RLM_DATA_DIR | Yes | The directory where RLM stores contexts and results. |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {
"tasks": {
"list": {},
"cancel": {},
"requests": {
"tools": {
"call": {}
},
"prompts": {
"get": {}
},
"resources": {
"read": {}
}
}
}
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| rlm_system_check | Check if system meets requirements for Ollama with gemma3:12b. Verifies: macOS, Apple Silicon (M1/M2/M3/M4), 16GB+ RAM, Homebrew installed. Use before attempting Ollama setup. |
| rlm_setup_ollama | Install Ollama via Homebrew (macOS). Requires Homebrew pre-installed. Uses 'brew install' and 'brew services'. PROS: Auto-updates, pre-built binaries, managed service. CONS: Requires Homebrew, may prompt for sudo on first Homebrew install. Args: install: Install Ollama via Homebrew (requires Homebrew) start_service: Start Ollama as a background service via brew services pull_model: Pull the default model (gemma3:12b) model: Model to pull (default: gemma3:12b). Use gemma3:4b or gemma3:1b for lower RAM systems. |
| rlm_setup_ollama_direct | Install Ollama via direct download (macOS). Downloads from ollama.com to ~/Applications. PROS: No Homebrew needed, no sudo required, fully headless, works on locked-down machines. CONS: Manual PATH setup, no auto-updates, service runs as foreground process. Args: install: Download and install Ollama to ~/Applications (no sudo needed) start_service: Start Ollama server (ollama serve) in background pull_model: Pull the default model (gemma3:12b) model: Model to pull (default: gemma3:12b). Use gemma3:4b or gemma3:1b for lower RAM systems. |
| rlm_ollama_status | Check Ollama server status and available models. Returns whether Ollama is running, list of available models, and if the default model (gemma3:12b) is available. Use this to determine if free local inference is available. Args: force_refresh: Force refresh the cached status (default: false) |
| rlm_load_context | Load a large context as an external variable. Returns metadata without the content itself. Args: name: Identifier for this context content: The full context content |
| rlm_inspect_context | Inspect a loaded context - get structure info without loading full content into prompt. Args: name: Context identifier preview_chars: Number of chars to preview (default 500) |
| rlm_chunk_context | Chunk a loaded context by strategy. Returns chunk metadata, not full content. Args: name: Context identifier strategy: Chunking strategy - 'lines', 'chars', or 'paragraphs' size: Chunk size (lines/chars depending on strategy) |
| rlm_get_chunk | Get a specific chunk by index. Use after chunking to retrieve individual pieces. Args: name: Context identifier chunk_index: Index of chunk to retrieve |
| rlm_filter_context | Filter context using regex/string operations. Creates a new filtered context. Args: name: Source context identifier output_name: Name for filtered context pattern: Regex pattern to match mode: 'keep' or 'remove' matching lines |
| rlm_sub_query | Make a sub-LLM call on a chunk or filtered context. Core of recursive pattern. Args: query: Question/instruction for the sub-call context_name: Context identifier to query against chunk_index: Optional: specific chunk index provider: LLM provider - 'auto', 'ollama', or 'claude-sdk'. 'auto' prefers Ollama if available (free local inference) model: Model to use (provider-specific defaults apply) |
| rlm_store_result | Store a sub-call result for later aggregation. Args: name: Result set identifier result: Result content to store metadata: Optional metadata about this result |
| rlm_get_results | Retrieve stored results for aggregation. Args: name: Result set identifier |
| rlm_list_contexts | List all loaded contexts and their metadata. |
| rlm_sub_query_batch | Process multiple chunks in parallel. Respects concurrency limit to manage system resources. Args: query: Question/instruction for each sub-call context_name: Context identifier chunk_indices: List of chunk indices to process provider: LLM provider - 'auto', 'ollama', or 'claude-sdk' model: Model to use (provider-specific defaults apply) concurrency: Max parallel requests (default 4, max 8) |
| rlm_auto_analyze | Automatically detect content type and analyze with optimal chunking strategy. One-step analysis for common tasks. Args: name: Context identifier content: The content to analyze goal: Analysis goal: 'summarize', 'find_bugs', 'extract_structure', 'security_audit', or 'answer:' provider: LLM provider - 'auto' prefers Ollama if available concurrency: Max parallel requests (default 4, max 8) |
| rlm_firewall_status | Check the status of the code execution firewall. Returns information about whether the firewall is enabled, the Ollama endpoint being used, and whether dangerous code patterns will be blocked. The firewall is auto-enabled when code-firewall-mcp is installed: pip install massive-context-mcp[firewall] Returns: { "enabled": bool, "package_installed": bool, "ollama_url": str, "embedding_model": str, "similarity_threshold": float, "ollama_reachable": bool, } |
| rlm_exec | Execute Python code against a loaded context in a sandboxed subprocess. Set result variable for output. Args: code: Python code to execute. User sets result variable for output. context_name: Name of previously loaded context timeout: Max execution time in seconds (default 30) Security: When RLM_FIREWALL_ENABLED=1, code is checked against known dangerous patterns before execution. Blocked code returns an error instead of executing. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |