Mudabbir Native
The Mudabbir Native backend is a custom orchestrator that combines Anthropic’s SDK for reasoning with Open Interpreter for code execution.
Overview
This backend provides a balanced approach:
- Anthropic SDK handles conversation, reasoning, and tool selection
- Open Interpreter handles actual code execution
- Custom tools are registered through Mudabbir’s tool registry
- MCP tools are loaded via
_get_mcp_tools()and registered with the tool registry
Configuration
export MUDABBIR_AGENT_BACKEND="mudabbir_native"export MUDABBIR_ANTHROPIC_API_KEY="sk-ant-..."Using with Ollama
Mudabbir Native also works with local models via Ollama:
export MUDABBIR_AGENT_BACKEND="mudabbir_native"export MUDABBIR_LLM_PROVIDER="ollama"export MUDABBIR_OLLAMA_MODEL="qwen2.5:7b"See Ollama (Local LLMs) for full setup instructions.
How It Works
- The user message is sent to Claude via the Anthropic SDK
- Claude decides which tools to call based on the available tool definitions
- Tool calls are routed through Mudabbir’s
ToolRegistry - Code execution tools are delegated to Open Interpreter
- Results are sent back to Claude for the next reasoning step
- The cycle continues until Claude produces a final response
Tool Registration
The native backend registers all tools from Mudabbir’s tool registry:
# Built-in tools (web_search, image_gen, etc.)tools = registry.get_tool_definitions(format="anthropic")
# MCP tools (loaded from configured MCP servers)mcp_tools = await _get_mcp_tools()tools.extend(mcp_tools)MCP tools are named with the pattern mcp_<server>__<tool> to avoid naming conflicts.
Tool Policy
The tool policy system filters available tools. The native backend respects the same profiles and allow/deny lists as the Claude Agent SDK backend.
When to Use
Choose Mudabbir Native when:
- You want more control over the tool execution pipeline
- You need to customize how tools are registered and executed
- You want to combine Anthropic’s reasoning with Open Interpreter’s execution capabilities
Installation
curl -fsSL https://mudabbir.fly.dev/install.sh | sh
# Or add the native extra manuallypip install mudabbir[native]This installs Open Interpreter as an optional dependency.
Was this page helpful?