Atlas / MCP servers / masterz1311 / Rheo

RheoBLOCK

mcp/masterz1311/rheo

Sovereign local-first AI voice studio. Neural speech synthesis, zero-shot voice cloning, zero-latency dictation, and MCP agent voice I/O. Built with Tauri & FastAPI.

Verdict
BLOCK
Grade
F
Trust score
39 /100
Exposed tools
5 5r · 0w · 0d
Transport
streamable-http
License
AGPL-3.0
Stars
0
01

Overview

From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.

Rheo

Sovereign Local-First AI Voice Studio & Neural Speech Engine Zero-shot neural voice cloning, multi-engine speech synthesis, system-wide zero-latency dictation, and Model Context Protocol (MCP) voice integration. 100% private, offline-capable, and running directly on your own hardware.

Origin • Overview • Capabilities • Engines • Quickstart •

Read from source at commit 2085cdf1be19OBSERVED · 2026-10-11
02

Connect

Built from this server's own package name, version and transport as found in its source — not copied from anyone's documentation, so it cannot drift against a page we do not control. Replace the environment placeholders with a token scoped to the least it needs.

claude-code
claude mcp add web --env HF_TOKEN=${HF_TOKEN} --env RHEO_API_KEY=${RHEO_API_KEY} -- npx -y @rheo/[email protected]
claude-desktop
{
  "mcpServers": {
    "web": {
      "command": "npx",
      "args": [
        "-y",
        "@rheo/[email protected]"
      ],
      "env": {
        "HF_TOKEN": "${HF_TOKEN}",
        "RHEO_API_KEY": "${RHEO_API_KEY}"
      }
    }
  }
}
03

Exposed tools (5)

5 read · 0 write · 0 destructive.

ToolRiskDescription
FireshipreadRapid-fire, deadpan tech humor with zero filler
JarvisreadDry, composed
MorganreadWarm, measured
ScarlettreadBright, conversational
ZendayareadRelaxed, modern delivery with effortless cool
04

Trust audit

BLOCKgrade F · trust 39/100 Do not install this without reading the findings. The audit found something that could harm you or your machine.

LayerWhat it checksResult
L0Provenance & inventoryWARN
L1Static analysis of the codeFAIL
L2Instruction surface (what it tells the agent)FAIL
L3Class-specific surfacePASS
L4Behavioural (sandbox)SKIPPED

What the source does

Filesystem
declared (9 observation(s))
Network
declared (16 observation(s))
Shell
declared (4 observation(s))
Dependencies
not all pinned
Secrets in source
none-found

Findings (25)

HIGHCode injection · code.eval_exec · CWE-78, CWE-94, CWE-95
backend/pyi_rth_torch_compiler_disable.py:335
exec(compile(patched, filename, "exec"), module.__dict__)
Why it matters. evaluates text as code
Fix. remove; use a parser or a dispatch table
HIGHCode injection · code.eval_exec · CWE-78, CWE-94, CWE-95
backend/pyi_rth_torch_compiler_disable.py:461
exec(bytecode, module.__dict__)
Why it matters. evaluates text as code
Fix. remove; use a parser or a dispatch table
HIGHPrompt injection · prompt.zero_width · CWE-94, CWE-1427
landing/src/posts/introducing-rheo.md:1
---
Why it matters. invisible characters in instruction text
Fix. strip non-printing characters
MEDIUMInventory / provenance · inv.binary · CWE-1104
app/src/assets/sounds/marimba_start.wav
marimba_start.wav
Why it matters. a compiled or binary member cannot be reviewed from source
Fix. ship source, or explain the binary in the README
MEDIUMInventory / provenance · inv.binary · CWE-1104
app/src/assets/sounds/marimba_stop.wav
marimba_stop.wav
Why it matters. a compiled or binary member cannot be reviewed from source
Fix. ship source, or explain the binary in the README
MEDIUMInventory / provenance · inv.binary · CWE-1104
app/src/assets/sounds/pop_start.wav
pop_start.wav
Why it matters. a compiled or binary member cannot be reviewed from source
Fix. ship source, or explain the binary in the README
MEDIUMInventory / provenance · inv.binary · CWE-1104
app/src/assets/sounds/pop_stop.wav
pop_stop.wav
Why it matters. a compiled or binary member cannot be reviewed from source
Fix. ship source, or explain the binary in the README
MEDIUMInventory / provenance · inv.binary · CWE-1104
landing/public/audio/fireship.webm
fireship.webm
Why it matters. a compiled or binary member cannot be reviewed from source
Fix. ship source, or explain the binary in the README
MEDIUMCode injection · code.dynamic_import · CWE-78, CWE-94, CWE-95
backend/pyi_rth_rocm_sdk.py:51
py_module = importlib.import_module(py_package_name)
MEDIUMNetwork egress · net.beacon_words · CWE-200, CWE-319
app/src/components/RheoStudioBar.tsx:29
{/* Live Engine Beacon */}
MEDIUMNetwork egress · net.beacon_words · CWE-200, CWE-319
backend/services/cloud.py:61
def start_login(callback_url: str, device_name: str) -> str:
MEDIUMNetwork egress · net.beacon_words · CWE-200, CWE-319
backend/services/cloud.py:71
params = urlencode({"redirect_uri": callback_url, "state": state, "name": device_name})
MEDIUMNetwork egress · net.raw_ip · CWE-200, CWE-319
app/src/components/ServerSettings/ConnectionForm.tsx:80
<Input placeholder="http://127.0.0.1:17493" {...field} />
MEDIUMNetwork egress · net.raw_ip · CWE-200, CWE-319
app/src/components/ServerTab/GeneralPage.tsx:150
<Input placeholder="http://127.0.0.1:17493" {...field} />
MEDIUMNetwork egress · net.raw_ip · CWE-200, CWE-319
app/src/stores/serverStore.ts:31
const fallback = 'http://127.0.0.1:17493';
MEDIUMNetwork egress · net.raw_ip · CWE-200, CWE-319
backend/app.py:204
"http://127.0.0.1:5173",
MEDIUMNetwork egress · net.raw_ip · CWE-200, CWE-319
backend/app.py:206
"http://127.0.0.1:17493",
MEDIUMObfuscation / stealth · obf.zero_width · CWE-506, CWE-94
app/src/components/Onboarding/UserNameModal.tsx:1
import { useEffect, useState } from 'react';
LOWInventory / provenance · inv.hidden_file · CWE-1104
.biomeignore
.biomeignore
Why it matters. hidden member outside the usual dotfiles
Fix. review its purpose
LOWInventory / provenance · inv.hidden_file · CWE-1104
.bumpversion.cfg
.bumpversion.cfg
Why it matters. hidden member outside the usual dotfiles
Fix. review its purpose
LOWInsecure crypto · crypto.weak_hash · CWE-327, CWE-338
backend/services/profiles.py:612
combination_hash = hashlib.md5(sample_ids_str.encode()).hexdigest()[:12]
LOWInsecure crypto · crypto.weak_hash · CWE-327, CWE-338
backend/utils/cache.py:44
return hashlib.md5(combined).hexdigest()
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
app/src/components/RheoStudioBar.tsx:4
import { version } from '../../package.json';
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
docs/components/ai/page-actions.tsx:4
import { cn } from '../../lib/cn';
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
docs/components/ui/popover.tsx:4
import { cn } from '../../lib/cn';

Gates applied: no_behavioural_pass.

Audited 2026-10-11 · audit v0.4.1 · source sha 2085cdf1be19full audit observations/trust-audit/mcp-server/masterz1311__rheo.json · Report an issue / request a re-scan
05

Audit history

Every audit this server has had. A grade with a past is a grade somebody is still checking.

DateSourceVerdictGradeScoreChange
2026-10-112085cdf1be19BLOCKF39first audit
06

Questions

What is the Rheo MCP server?

Sovereign local-first AI voice studio. Neural speech synthesis, zero-shot voice cloning, zero-latency dictation, and MCP agent voice I/O. Built with Tauri & FastAPI.

What tools does Rheo expose?

5 in total: 5 read-only, 0 that write, and 0 that can delete or overwrite. Every one is listed on this page with its risk.

Is Rheo safe to connect to an agent?

No — not without reading the findings first. The audit graded it F (39/100) and found 3 critical or high issues in the source. Each one is listed on this page with the file and line it is on.

What credentials does Rheo need?

It reads HF_TOKEN and RHEO_API_KEY from the environment. Give it a token scoped to the least it needs — an agent that can be talked into calling a tool can be talked into calling it with your credentials.

How does Rheo run?

It speaks streamable-http, so it runs as a service you connect to over the network. It is published on npm as @rheo/web at 0.1.0.

How current is this page?

The grade is for one exact copy of the source (2085cdf1be19), read on 2026-10-11. The repository is watched and re-audited when it changes.

Advertisement