Argus
Provides Arm-native diagnostic and optimization for ROS 2, including hardware profiling, tier assessment, and generation of ROS 2 configuration artifacts such as DDS configs, build flags, and install scripts.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Argusprofile hardware for ROS 2 on my Raspberry Pi 5"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Deploying ROS 2 on Arm is a guessing game. Developers don't know:
Which ROS 2 variant fits their board (ros-desktop, ros-base, micro-ros, zenoh-pico)
Optimal DDS configuration for their specific CPU cache topology and RAM
Compiler flags that unlock Arm ISA capabilities (NEON, LSE, SVE)
Kernel/sysctl tuning for real-time robotic workloads
Result: Suboptimal performance, wasted resources, failed deployments.
๐ก The Solution: Argus
Argus is an Arm-native, MCP-enabled diagnostic and optimization platform for ROS 2 that bridges the gap between Arm hardware capabilities and ROS 2 deployment decisions.
Name origin: Argus Panoptes โ the all-seeing giant of Greek mythology with 100 eyes. Argus sees every detail of your Arm hardware.
Related MCP server: ROS2 MCP Server
โจ Features
๐ Hardware Profiling
Cross-platform: macOS (sysctl), Linux (/proc, /sys, vcgencmd)
Deep detection: CPU topology (P/E cores), cache hierarchy, ISA features (NEON, SVE, SVE2, LSE), RAM, thermal zones
Fingerprinting: SHA-256 hardware identity for reproducibility
Compiler target mapping:
-mcpu=cortex-a72,apple-m4,neoverse-v2, etc.
๐ ROS 2 Tier Assessment
5-tier scoring (0โ100):
ros-desktopโros-base-fullโros-baseโmicro-rosโzenoh-picoWeighted breakdown: RAM (30), Compute (20), ISA (15), Cache (10), Thermal (10), RT (15)
Recommendations: RMW (CycloneDDS/FastDDS/Zenoh), DDS profile, warnings
โ๏ธ Config Generation (7 Artifacts)
Artifact | Purpose |
| FragmentSize aligned to cache line, watermarks scaled to RAM |
| SHM+UDP transport, buffer sizes scaled to RAM |
| When to switch from DDS to Zenoh |
| Network buffers, VM dirty ratios, scheduler tuning |
|
|
| OS-specific ROS 2 install + RMW setup |
| Fingerprint, tier, score, artifact manifest |
๐ก๏ธ Safety & Governance
Blast-radius gatekeeper: NONE/LOW โ auto-approve, MEDIUM โ prompt, HIGH โ warn + prompt, CRITICAL โ deny
Blocklist:
rm -rf /,sudo,dd,mkfs, pipe-to-shell, fork bombsAudit trail: Every permission decision logged with reason
๐ค MCP Integration โ AI-Native by Design
Argus exposes all capabilities via MCP (Model Context Protocol) โ making any AI agent (OpenCode, Claude Code, Gemini CLI, Cursor) hardware-aware on Arm.
// ~/.opencode/mcp.json (or claude_desktop_config.json)
{
"mcpServers": {
"argus": {
"command": "argus",
"args": ["mcp", "serve", "--transport", "stdio"]
},
"argus-pi4": {
"command": "ssh",
"args": ["pi@raspberrypi.local", "argus", "mcp", "serve", "--transport", "stdio"]
}
}
}๐งฐ 14 MCP Tools
Category | Tools |
Discovery |
|
Profiling |
|
Assessment |
|
Generation |
|
Project |
|
๐ 10 MCP Resources
URI | Content |
| Full hardware profile |
| CPU topology, cache, ISA |
| RAM usage, available |
| Live thermal readings |
| Latest stress test results |
| Generated CycloneDDS XML |
| Generated FastDDS XML |
| Generated sysctl.conf |
| Latest assessment scorecard |
| Latest diagnostic report |
๐ฌ 4 MCP Prompts
Prompt | Description |
| Full ROS 2 optimization workflow |
| Profile Arm SoC and explain results |
| Analyze hardware + generate optimal DDS config |
| Run thermal stress + analyze throttling risk |
๐ฅ๏ธ Hardware Support
Platform | SoC | CPU | RAM | Cache Line | Tier | Configs |
Raspberry Pi 4 | BCM2711 | 4ร Cortex-A72 | 2/4/8 GB | 64 B |
| โ 7 files |
Raspberry Pi 5 | BCM2712 | 4ร Cortex-A76 | 4/8 GB | 64 B |
| โ 7 files |
Apple M1 | M1 | 4P+4E | 8/16 GB | 128 B |
| โ 7 files |
Apple M2 | M2 | 4P+4E | 8/24 GB | 128 B |
| โ 7 files |
Apple M3 | M3 | 4P+4E | 8/24 GB | 128 B |
| โ 7 files |
Apple M4 | M4 | 4P+6E | 24/48 GB | 128 B |
| โ 7 files |
Jetson Orin | T234 | 12ร Cortex-A78AE | 8/32 GB | 64 B |
| ๐ |
Generic Arm | Any | Any | Any | 64 B | Auto | ๐ |
Pre-generated configs in
configs/for instant deployment โ no profiling needed on known boards.
๐ Quick Start
Installation
# From PyPI (when published)
pip install argus
# Or from source (hackathon)
git clone https://github.com/roniejosephv-star/argus.git
cd argus
pip install -e .Basic Usage
# Full hardware profile
argus diagnose --detailed
# Stress test (CPU + memory + thermal)
argus stress --duration 30
# Full ROS 2 assessment + config generation
argus assess --output-dir ./my-robot-configs
# Start MCP server for AI agents
argus mcp serve --transport stdioExample Output
Hardware Profile: Raspberry Pi 4 Model B Rev 1.5
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโณโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Property โ Value โ
โกโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฉ
โ OS / Arch โ Linux / aarch64 โ
โ Model โ BCM2711 (Pi 4) โ
โ Cores โ 4 (P:4 E:0) โ
โ RAM โ 1.8 GB total, 1.4 GB available โ
โ Cache Line โ 64 bytes โ
โ NEON / LSE / SVE โ โ / โ / โ โ
โ Compiler Target โ cortex-a72 โ
โ Fingerprint โ a1b2c3d4e5f6... โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
ROS 2 Assessment Scorecard
โโโโโโโโโโโโโโโโโโโณโโโโโโโโโโโโโโโโโโโ
โ Metric โ Score โ
โกโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฉ
โ Total Score โ 33/100 โ
โ Tier โ micro-ros โ
โ Recommended RMW โ cyclonedds โ
โ DDS Profile โ low-memory โ
โโโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโ๐๏ธ Architecture
argus/
โโโ cli.py # Click commands: diagnose, stress, assess, mcp
โโโ core/
โ โโโ profiler.py # Hardware detection (macOS + Linux)
โ โโโ assess.py # 5-tier scoring algorithm
โ โโโ optimizer.py # 7 config generators
โ โโโ stresser.py # CPU/mem/thermal stress (multiprocessing + numpy)
โ โโโ ram_sampler.py # Process/system RAM sampling
โ โโโ toolbox.py # 14-tool registry + dispatcher
โ โโโ models.py # Pydantic models (HardwareProfile, Scorecard, etc.)
โโโ safety/
โ โโโ blast_radius.py # NONE/LOW/MEDIUM/HIGH/CRITICAL
โ โโโ blocklist.py # Destructive command patterns
โ โโโ gatekeeper.py # Auto/ask/deny permission flow
โโโ mcp/
โ โโโ server.py # FastMCP server, 14 tools + resources + prompts
โ โโโ resources.py # 10 resource URIs
โ โโโ auth.py # Bearer token middleware (HTTP)
โ โโโ transports.py # stdio + HTTP config
โโโ state/
โ โโโ report.py # Report, Diff, Lesson models
โ โโโ report_store.py # Persistence + diff engine
โ โโโ knowledge.py # Lesson extraction from diffs
โโโ safety/ # Blast radius + blocklist
โโโ state/ # Reports, diffs, lessons
โโโ cli.py # Click CLI๐งช Testing
# Run all tests
pytest tests/ -v
# Run with coverage
pytest --cov=argus --cov-report=html
# Run specific module
pytest tests/test_core.py::test_pi4_cpu_part_mapping -vCurrent Status: 9/9 core tests passing โ
๐ Project Structure
argus/
โโโ .github/workflows/ci.yml # CI/CD pipeline
โโโ .gitignore
โโโ LICENSE # MIT
โโโ pyproject.toml # Build config (excludes configs/ from package)
โโโ .gitignore
โโโ argus/
โ โโโ __init__.py
โ โโโ __main__.py
โ โโโ cli.py
โ โโโ core/ # Business logic
โ โโโ safety/ # Blast radius + blocklist
โ โโโ mcp/ # FastMCP server
โ โโโ state/ # Reports + knowledge
โโโ configs/ # Pre-generated configs (excluded from package)
โ โโโ raspberry-pi-4/ # 2GB Pi 4 โ micro-ros tier
โ โโโ raspberry-pi-5/ # 8GB Pi 5 โ ros-base tier
โ โโโ apple-m4/ # 24GB M4 โ ros-desktop tier
โ โโโ raspberry-pi-5/ # Alias for bcm2712
โโโ docs/ # 8 documentation files
โโโ scripts/
โ โโโ pi4_profile_collector.sh # Auto-profile Pi via SSH
โโโ tests/
โ โโโ test_core.py # 9 tests
โ โโโ fixtures/ # Pi 4, Pi 5, Jetson, Apple fixtures
โโโ scripts/
โโโ pyproject.toml๐ Documentation
Document | Description |
System architecture diagrams | |
Full CLI + MCP tool reference | |
Pi deployment, ROS 2 install, systemd | |
Blast radius, blocklist, threat model | |
Test strategy, fixtures, CI | |
End-user guide | |
CLI/UX design decisions | |
Pydantic model schemas |
Planning & Analysis (for judges)
Document | Purpose |
| Product Requirements Document |
| Project Requirements Specification |
| Consolidated technical spec |
| 35-day build plan |
| 47 edge cases catalogued |
| 7 key decisions (D1โD7) |
| Explanations for each decision |
| Full self-hosted dev loop architecture |
| Pi 4 specific analysis |
๐ค Contributing
We welcome contributions! See CONTRIBUTING.md for guidelines.
Development Setup
git clone https://github.com/roniejosephv-star/argus.git
cd argus
python -m venv .venv && source .venv/bin/activate
pip install -e .[dev]
pre-commit installCode Quality
ruff check . # Linting
ruff format . # Formatting
mypy argus/ # Type checking
pytest # Tests๐ Hackathon Highlights
Category | Achievement |
Innovation | First Arm-native ROS 2 optimizer with MCP integration |
Completeness | Full stack: profiler โ assessor โ generator โ MCP server |
Hardware Coverage | 4 platforms pre-configured, extensible to any Arm |
AI-Native | 14 MCP tools + 10 resources + 4 prompts for AI agents |
Safety-First | Blast-radius gatekeeper + destructive command blocklist |
Self-Hosted Dev | OpenCode on Mac โ SSH โ Pi โ Argus builds/tests itself |
Production Ready | Pre-generated configs for Pi 4, Pi 5, Apple M4 |
๐ License
MIT License โ see LICENSE for details.
๐ Acknowledgments
FastMCP โ Excellent MCP server framework
Pydantic โ Data validation & serialization
Click โ Beautiful CLI interfaces
Rich โ Beautiful terminal output
NumPy โ High-performance stress testing
psutil โ Cross-platform system profiling
ROS 2 Community โ Inspiration & documentation
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/roniejosephv-star/argus'
If you have feedback or need assistance with the MCP directory API, please join our Discord server