Skip to main content

Multi-model MCP routing fabric for local and cloud LLMs

Project description

AuraRouter: The AuraXLM-Lite Compute Fabric

Current Status: Production Prototype v3 (Feb 2026)
Maintainer: Steven Siebert / AuraCore Dynamics

Overview

AuraRouter implements a simplified role-based configurable xLM (SLM/TLM/LLM) prompt routing as an MCP server. AuraRouter is designed to orchestrate local and cloud resources for AuraCore development. It acts as an intelligent middleware for an MCP Client (ie Gemini CLI), allowing you to route code generation tasks to local hardware while maintaining a cloud safety net.

It implements an Intent -> Plan -> Execute loop:

  1. Router: A fast local model classifies the task (Simple vs. Complex).
  2. Architect: If complex, a reasoning model generates a sequential execution plan.
  3. Worker: A coding model executes the plan step-by-step.

Architecture

graph TD
    User[Gemini CLI] -->|Task| Router{Intent Analysis}
    Router -->|Simple| Worker[Coding Node]
    Router -->|Complex| Architect[Reasoning Node]
    Architect -->|Plan JSON| Worker
    
    subgraph Compute Fabric [auraconfig.yaml]
        Worker -->|Try| Node1[Local RTX 3070]
        Node1 -->|Fail| Node2[Cloud Fallback]
    end

Prerequisites

  • Python 3.12+
  • Ollama (Running locally with qwen2.5-coder:7b or similar)
  • Google AI Studio Key (For cloud fallback/reasoning)

Installation

1. Environment Setup

Create the isolated environment with the required dependencies.

conda env create -f environment.yaml
conda activate aurarouter

2. Pull Local Models

We recommend the Qwen 2.5 series for consumer hardware speed/stability.

ollama pull qwen2.5-coder:7b

3. Configuration

Edit auraconfig.yaml to define your nodes and paste your API keys.

models:
  local_3070:
    provider: ollama
    endpoint: http://localhost:11434/api/generate
    model_name: qwen2.5-coder:7b

  cloud_gemini:
    provider: google
    model_name: gemini-2.0-flash
    api_key: "AIzaSy..." # Paste key here

4. Auto-Registration

Run the installer to inject AuraRouter into your Gemini CLI settings.

python aurarouter.py --install

Follow the prompts to auto-detect your settings.json.

Usage

Restart your Gemini CLI. You can now use natural language to trigger the fabric.

The "Fast Lane" (Local Only):

"Write a python function to calculate Fibonacci." (Routes directly to Local Qwen)

The "Heavy Lane" (Cloud Plan + Local Build):

"Create a distributed lock manager in C# with an interface and unit tests." (Routes to Cloud Architect for planning, then Local Qwen for execution)

Scaling Guide

When you add new on-prem xLM resources:

  1. Open auraconfig.yaml.
  2. Uncomment the local_3090_deepseek block under models.
  3. Add it to the top of the reasoning role list.
  4. Restart the router. No code changes required.

Troubleshooting

  • "Empty response received": The local model is likely OOMing or timing out. Check the timeout setting in auraconfig.yaml.
  • "Model not found": Ensure the model_name in YAML matches ollama list exactly.
  • Installer fails: Manually add the mcpServers block to your ~/.geminichat/settings.json pointing to the aurarouter.py absolute path.

License

Copyright 2026 AuraCore Dynamics Inc.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

aurarouter-0.1.0.tar.gz (8.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

aurarouter-0.1.0-py3-none-any.whl (7.7 kB view details)

Uploaded Python 3

File details

Details for the file aurarouter-0.1.0.tar.gz.

File metadata

  • Download URL: aurarouter-0.1.0.tar.gz
  • Upload date:
  • Size: 8.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for aurarouter-0.1.0.tar.gz
Algorithm Hash digest
SHA256 1637415a50eeb9731cfba196a70195d7543a5a6d85a79b2ee904c7678e42458d
MD5 3c9c2a4a0a2b63f3423dd591c1dd7afd
BLAKE2b-256 15e32413fd63efc1bc73ebfa55829183b292e69b13674053dd092beb6e810846

See more details on using hashes here.

Provenance

The following attestation bundles were made for aurarouter-0.1.0.tar.gz:

Publisher: publish.yml on AuraCoreDynamics/aurarouter

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file aurarouter-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: aurarouter-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 7.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for aurarouter-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f220a5a4b0f7624ce323896a11e3b219d05019a838ee81190b52db076c0fce47
MD5 ec2383894bf980ee44039c752844c046
BLAKE2b-256 8551697f2b93f5260edf44354946b25559cf7fcebd8dcafc957ff73ff900be75

See more details on using hashes here.

Provenance

The following attestation bundles were made for aurarouter-0.1.0-py3-none-any.whl:

Publisher: publish.yml on AuraCoreDynamics/aurarouter

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page