MCP server · Audited from source
javis-os MCP server
by blogminhquy/javis-osMIT licenceAudited 6 Oct 2026 · source 143ea0d464ea
Is it safe? No — BLOCK, grade F (24/100). It exposes 1 tool: 1 read, 0 write and 0 destructive. The audit recorded 79 findings (0 critical, 7 high, 18 medium, 39 low).
Cite
Cite this page
ModelsAtlas. “javis-os MCP server (blogminhquy/javis-os)”. Retrieved 6 Oct 2026. https://modelsatlas.com/mcp/blogminhquy/javis-os
Why this is BLOCK. The audit found 0 critical and 7 high findings; the most severe is Code injection at server/fastyaml.py:35. Each finding is listed below with its file and line.
Why this page is still public. People search for this server by name. Hiding it would leave them with the README's word alone; here they see what the code does. We list it so you can decide, and we do not show connect commands for BLOCK servers.
Trust audit
Audit 0.4.1 · full source read 6 Oct 2026
79 findings, listed below with the file and line each was found on. Grade A needs a sandboxed behavioural run too; this audit read the source only.
What the source does
- FilesystemDeclared12 observations
- NetworkDeclared14 observations
- ShellDeclared9 observations
- DependenciesNot pinnedSome ranges float
- SecretsNone foundNo keys in source
Findings (79)
Sorted by severity · the 25 most severe of 79 are listed
HIGHCode injectioncode.deserialize · server/fastyaml.py:35
return yaml.load(stream, Loader=_PyLoader)
- Why
- deserialises untrusted bytes into live objects
- Fix
- use json or yaml.safe_load
HIGHCode injectioncode.deserialize · server/fastyaml.py:37
return yaml.load(stream, Loader=_CLoader)
- Why
- deserialises untrusted bytes into live objects
- Fix
- use json or yaml.safe_load
HIGHCode injectioncode.deserialize · server/fastyaml.py:39
return yaml.load(stream, Loader=_PyLoader)
- Why
- deserialises untrusted bytes into live objects
- Fix
- use json or yaml.safe_load
HIGHCode injectioncode.eval_exec · dashboard/editor-cmds.js:174
if (c.mode() === "wys") exec(c, "createLink", u); else wrapTa(c, "[", "](" + u + ")", dich("ecmd.ph_text"));- Why
- evaluates text as code
- Fix
- remove; use a parser or a dispatch table
HIGHFilesystem / pathfs.credential_store · server/pack_install.py:77
_TEN_CAM = (".env", ".git", "id_rsa", "id_dsa", "id_ecdsa", "id_ed25519")- Why
- touches a credential store
- Fix
- —
HIGHFilesystem / pathfs.credential_store · server/pack_install.py:157
if thap in _TEN_CAM or thap.startswith("id_rsa"):- Why
- touches a credential store
- Fix
- —
HIGHObfuscation / stealthobf.rtl_override · server/chatbot_reply_policy.py:127
"[ᅟᅠ----ᅠ︀-︍"
- Why
- No further detail recorded for this rule.
- Fix
- —
MEDIUMInventory / provenanceinv.binary · server/data_phien_am/cmudict.txt.gz
cmudict.txt.gz
- Why
- a compiled or binary member cannot be reviewed from source
- Fix
- ship source, or explain the binary in the README
MEDIUMCode injectioncode.dynamic_import · server/channels/__init__.py:113
m = importlib.import_module(ten)
- Why
- No further detail recorded for this rule.
- Fix
- —
MEDIUMCode injectioncode.dynamic_import · server/lexicon/__init__.py:83
mod = importlib.import_module(f"lexicon.{ma}")- Why
- No further detail recorded for this rule.
- Fix
- —
MEDIUMCode injectioncode.dynamic_import · server/mcp_client.py:428
self.mod = importlib.import_module(_INTERNAL[name])
- Why
- No further detail recorded for this rule.
- Fix
- —
MEDIUMInsecure cryptocrypto.weak_random · dashboard/agent-avatar.js:70
const pick = o => Object.keys(o)[Math.floor(Math.random() * Object.keys(o).length)];
- Why
- No further detail recorded for this rule.
- Fix
- —
MEDIUMNetwork egressnet.beacon_words · server/learn.py:284
r"|exfiltrat|gửi\s+.{0,20}(ra\s+ngoài|tới\s+http)"- Why
- No further detail recorded for this rule.
- Fix
- —
MEDIUMNetwork egressnet.raw_ip · Dockerfile:142
CMD python -c "import urllib.request,os,sys; sys.exit(0 if urllib.request.urlopen('http://127.0.0.1:'+os.getenv('JAVIS_PORT','7777')+'/health',timeout=4).status==200 else 1)" || exit 1- Why
- No further detail recorded for this rule.
- Fix
- —
MEDIUMNetwork egressnet.raw_ip · JAVIS OS.bat:14
set "URL=http://127.0.0.1:%JAVIS_PORT%"
- Why
- No further detail recorded for this rule.
- Fix
- —
MEDIUMNetwork egressnet.raw_ip · Start JAVIS OS.command:6
echo "JAVIS OS is running at http://127.0.0.1:7777"
- Why
- No further detail recorded for this rule.
- Fix
- —
MEDIUMObfuscation / stealthobf.zero_width · server/chatbot_reply_policy.py:127
"[ᅟᅠ----ᅠ︀-︍"
- Why
- No further detail recorded for this rule.
- Fix
- —
MEDIUMObfuscation / stealthobf.zero_width · server/chatbot_reply_policy.py:128
"ᅠ-\U000e0000-\U000e007f\U000e0100-\U000e01ef]|[︎️]{2,}")- Why
- No further detail recorded for this rule.
- Fix
- —
MEDIUMObfuscation / stealthobf.zero_width · server/learn.py:297
return s[0] + "" + s[1:] # chèn zero-width space → vỡ pattern lệnh
- Why
- No further detail recorded for this rule.
- Fix
- —
MEDIUMObfuscation / stealthobf.zero_width · server/system_sync.py:83
t = (text or "").replace("\r\n", "\n").replace("", "")- Why
- No further detail recorded for this rule.
- Fix
- —
Tools it exposes
1 declared in source · 0 destructive
| Tool | What it does | Risk |
|---|---|---|
Notes | x | read |
Safer alternatives
All agent orchestration servers →heggria/taskflow
DAG runtime for coding-agent workflows with verification, resume, replay, and effect checks.
luckeyfaraday/athena-loops
MIT-licensed, backend-agnostic AI agent orchestration loop in Python: orchestrator→worker→reviewer as a deterministic harness. Drive coding-agent backends through an MCP server + CLI.
quentintou/agent-board
Open-source multi-agent task board for OpenClaw. Kanban + DAG dependencies + MCP server + auto-retry + audit trail. Built for autonomous AI agent teams.
Audit history
- ✕BLOCK F 24 / 100
Score 28 -> 24 ·
143ea0d464ea - ✕BLOCK F 28 / 100
First audit ·
ef70f247c32e
README badge
Badges show the current verdict, BLOCK included
A badge cannot be hidden by the maintainer while the verdict is BLOCK. Fix the findings, push, and the re-audit updates it.
Questions about javis-os MCP server
What tools does javis-os expose?
Is javis-os safe to connect to an agent?
What credentials does javis-os need?
How does javis-os run?
How current is this page?
I already installed javis-os. What should I do?
Can the verdict change?
Sources
- blogminhquy/javis-os on GitHub — the source we read, its licence, stars and activityObserved · 6 Oct 2026
- ModelsAtlas trust audit — BLOCK verdict for commit 143ea0d464eaObserved · 6 Oct 2026
Spotted something wrong? Report a correction · Methodology
Keep going in your AI
Opens with this page as the source. We add nothing else to the prompt.
- What tools does javis-os expose?
- Is javis-os safe to connect to an agent?
- What credentials does javis-os need?