Omnara Agent Dashboard - MCP Server and Python SDK
Project description
Omnara - Mission Control for Your AI Agents ๐
๐ What is Omnara?
Omnara transforms your AI agents (Claude Code, Cursor, GitHub Copilot, and more) from silent workers into communicative teammates. Get real-time visibility into what your agents are doing, respond to their questions instantly, and guide them to success - all from your phone.
โจ Key Features
| Feature | Description |
|---|---|
| ๐ Real-Time Monitoring | See every step your AI agents take as they work |
| ๐ฌ Interactive Q&A | Respond instantly when agents need guidance |
| ๐ฑ Mobile-First Design | Full control from your phone, tablet, or desktop |
| ๐ Smart Notifications | Get alerted only when your input is needed |
| ๐ฏ Universal Dashboard | All your AI agents in one unified interface |
๐ฌ See It In Action
The moment your agent needs help, you're there. No more returning to failed jobs hours later.
๐ก Why Omnara?
We built Omnara because we were tired of:
- โ Starting long agent jobs and finding them stuck hours later
- โ Missing critical questions that blocked progress
- โ Having no visibility into what our AI was actually doing
- โ Being tied to our desks while agents worked
Now you can:
- โ Launch agents and monitor them from anywhere
- โ Get push notifications when input is needed
- โ Send real-time feedback to guide your agents
- โ Have confidence your AI workforce is productive
๐๏ธ Architecture Overview
Omnara provides a unified platform for monitoring and controlling your AI agents:
graph TB
subgraph "Your AI Agents"
A[๐ค AI Agents<br/>Claude Code, Cursor, etc.]
end
subgraph "Omnara Platform"
API[๐ API Server]
DB[(๐ PostgreSQL)]
NOTIFY[๐ Notification Service<br/>Push/Email/SMS]
end
subgraph "Your Devices"
M[๐ฑ Mobile App]
W[๐ป Web Dashboard]
end
A -->|Send updates| API
API -->|Store data| DB
API -->|Trigger notifications| NOTIFY
NOTIFY -->|Alert users| M
DB -->|Real-time sync| M
DB -->|Real-time sync| W
M -->|User responses| API
W -->|User responses| API
API -->|Deliver feedback| A
style A fill:#e3f2fd,stroke:#1976d2,stroke-width:3px
style API fill:#c8e6c9,stroke:#388e3c,stroke-width:2px
style DB fill:#ffccbc,stroke:#d84315,stroke-width:2px
style NOTIFY fill:#fff59d,stroke:#f57f17,stroke-width:2px
style M fill:#f8bbd0,stroke:#c2185b,stroke-width:3px
style W fill:#f8bbd0,stroke:#c2185b,stroke-width:3px
๐ How It Works
1. Connect Your Agent โ Install Omnara SDK or wrapper
2. Get Real-Time Updates โ See every step your agent takes
3. Respond Instantly โ Answer questions from anywhere
๐ Two Ways to Use Omnara
| Mode | Setup | How It Works |
|---|---|---|
| Real-Time Monitoring | omnara or uv run omnara |
Monitor your Claude session, forwards to Omnara |
| Remote Launch | omnara serve or uv run omnara serve |
Launch agents from phone, communicate via MCP |
๐ง Technical Stack
- Backend: FastAPI with separate read/write servers for optimal performance
- Frontend: React (Web) + React Native (Mobile)
- Protocol: Model Context Protocol (MCP) + REST API
- Database: PostgreSQL with SQLAlchemy ORM
- Auth: Dual JWT system (Supabase for users, custom for agents)
๐ Quick Start
Option 1: Monitor Your Claude Sessions
See what Claude is doing in real-time:
- Install Omnara:
# Using pip pip install omnara # Using uv (faster) uv tool install omnara
- Start monitoring:
# If installed with pip omnara # If installed with uv omnara
- Authenticate in your browser (opens automatically)
- See everything your agent does in the Omnara dashboard!
Option 2: Launch Agents Remotely
Trigger Claude from your phone:
- Start the server on your computer:
# Using pip pip install omnara omnara serve # Using uv (faster) uv tool install omnara omnara serve
- Set up your agent in the mobile app with the webhook URL shown
- Launch agents from anywhere - beach, coffee shop, bed!
For Developers
๐ ๏ธ Development Setup
Prerequisites: Docker, Python 3.10+, Node.js
Quick Start:
git clone https://github.com/omnara-ai/omnara
cd omnara
cp .env.example .env
python scripts/generate_jwt_keys.py
./dev-start.sh # Starts everything automatically
Stop services: ./dev-stop.sh
For detailed setup instructions, manual configuration, and contribution guidelines, see our Contributing Guide.
๐ง Advanced Usage (Without CLI)
Note: Most users should use the simple
omnaraoromnara servecommands shown above. These methods are for advanced users who need custom integrations or want to run the underlying scripts directly.
Method 1: Direct Wrapper Script
Run the monitoring wrapper directly (what omnara does under the hood):
# Basic usage
python -m integrations.cli_wrappers.claude_code.claude_wrapper_v3 --api-key YOUR_API_KEY
# With git diff tracking
python -m integrations.cli_wrappers.claude_code.claude_wrapper_v3 --api-key YOUR_API_KEY --git-diff
# Custom API endpoint (for self-hosted)
python -m integrations.cli_wrappers.claude_code.claude_wrapper_v3 --api-key YOUR_API_KEY --base-url https://your-server.com
Method 2: Manual MCP Configuration
For custom MCP setups, you can configure manually:
{
"mcpServers": {
"omnara": {
"command": "pipx",
"args": ["run", "--no-cache", "omnara", "mcp", "--api-key", "YOUR_API_KEY"]
}
}
}
Method 3: Python SDK
from omnara import OmnaraClient
import uuid
client = OmnaraClient(api_key="your-api-key")
instance_id = str(uuid.uuid4())
# Log progress and check for user feedback
response = client.send_message(
agent_type="claude-code",
content="Analyzing codebase structure",
agent_instance_id=instance_id,
requires_user_input=False
)
# Ask for user input when needed
answer = client.send_message(
content="Should I refactor this legacy module?",
agent_instance_id=instance_id,
requires_user_input=True
)
Method 4: REST API
curl -X POST https://api.omnara.ai/api/v1/messages/agent \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"content": "Starting deployment process", "agent_type": "claude-code", "requires_user_input": false}'
๐ค Contributing
We love contributions! Check out our Contributing Guide to get started.
Development Commands
make lint # Run code quality checks
make format # Auto-format code
make test # Run test suite
./dev-start.sh # Start development servers
๐ Pricing
| Plan | Price | Features |
|---|---|---|
| Free | $0/mo | 10 agents/month, Core features |
| Pro | $9/mo | Unlimited agents, Priority support |
| Enterprise | Contact Us | Teams, SSO, Custom integrations |
๐ Support
- ๐ฌ GitHub Discussions
- ๐ Report Issues
- ๐ง Email Support
- ๐ Documentation (coming soon)
๐ License
Omnara is open source software licensed under the Apache 2.0 License.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file omnara-1.5.3.tar.gz.
File metadata
- Download URL: omnara-1.5.3.tar.gz
- Upload date:
- Size: 112.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c67b1b3071410b5e5797885f70a946b2f7270dfb3e980a6acbaa233cb34652ed
|
|
| MD5 |
cd6d92fa399df63d033409e927cac4f2
|
|
| BLAKE2b-256 |
dcec6d1d634bf37da98e7c2dd54c55f11d71b1faf0a0f27576523433c1dd8c18
|
File details
Details for the file omnara-1.5.3-py3-none-any.whl.
File metadata
- Download URL: omnara-1.5.3-py3-none-any.whl
- Upload date:
- Size: 115.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5a2bff08aa4915c2f898e9bb2f948c935861cf262172ebfd7c0505c28cd24ec7
|
|
| MD5 |
5257f5409981beb1b6c5841dcda933c3
|
|
| BLAKE2b-256 |
f7199e48c0f9907e2c0af7e8ba297aff7665083be6fb37560a7cc1eee62896bf
|