har (os-factory/har) is an MCP server listed on the M8ven Trust Index. It scores 61 out of 100, grade C. It declares 23 tools. No publisher has claimed this listing.
HAR: open agent harness (CLI + MCP) for coding agents. Isolated worktrees, deterministic verify, software factory workflows for Claude Code, Cursor, and Codex.
Caution. Specific findings reduced this grade. They are listed on the page. Grades reflect the full trust pyramid: code, verification depth, and reputation. New projects cap at C until adoption is earned.
How we verified
Verified is a snapshot. Live keeps it current, and builds your track record.
⚡ Connect GitHub → continuous verification on every pushwhy connect →Who stands behind it
os-factory
Source: github_repo_search
Claim it to get a verified publisher badge, a free copy of our full audit findings, and direct contact for any high-priority issues we find. Or connect your repo for our deepest verification, Live Monitored: read-only, revoke anytime. What we access →
Install from
The grade above is for the source repository. Registries can serve a different version, so we mark the ones we were not able to read.
These names and descriptions are the publisher's own, read from the source code. We print them as written. Our assessment is the findings above, not this list.
har_describe_projectRead manifest, stack hints, available scripts, and harness stages for a repository.
har_init_harnessScaffold .har/ boilerplate for a coding agent to adapt. Docker is required (Mission Control container + harness infra); the response reports Docker availability.
har_maintainValidate .har/ against the bundled templates: returns validation issues, drift, and a maintenance bundle report. Pass finalize=true (optionally with summary) to record a completed manual adaptation in .har/manifest.json.
har_add_pluginInstall a verification plugin (bundled id, local path, npm package, or git URL) that registers stages in .har/stages.json.
har_launch_environmentStart a FRESH agent session from the main checkout HEAD (switch that checkout to main first for a new unrelated task). Run BEFORE editing any file: returns workDir — ALL edits go there, never the main checkout. Occupied slots always block: call har_get_status, then har_complete_environment or har_te…
har_add_work_unit_linkAppend a related external link (PR, mirrored issue, alternate tracker) to an existing work unit.
har_recover_environmentResume a failed or partial agent launch without replacing the worktree. Alias for har_launch_environment with resume=true.
har_preflight_environmentReadiness gate before launch: checks ports, foreign PM2, Docker conflicts, occupied slot, and untracked paths that will be missing from a session worktree. Returns canLaunch with actionable blockers and warnings. Call before har_launch_environment.
har_run_stageRun one generic harness stage by id or kind.
har_run_verificationRun the project verification pipeline for an agent slot. Returns status, timing, and failed-step output (passing steps omit logs; stdout is not the raw JSON dump).
har_doctorValidate the harness contract: harness.env schema, stages.json, stage scripts exist and are executable, lifecycle stages resolve, verificationStages ids resolve, port lanes are coherent, slot registry entries point at existing worktrees. Returns pass/fail with actionable findings.
har_get_statusReturn structured slot status for one agent or all slots (same source as har env status/--json). Call BEFORE har_launch_environment when a slot may already be in use — shows worktree path, dirty state, branch, and readiness.
har_get_logsReturn recent logs for a slot/process.
har_teardown_environmentStop a running agent environment slot. The session git branch is kept unless deleteBranch=true.
har_complete_environmentFinish a session when the work is done: reuses the last passing full validation for the current worktree (or re-runs verify when verify=true), tears the slot down, and KEEPS the session branch so the user can push it and open a PR.
har_list_artifactsList result JSON, screenshots, traces, reports, or other files under .har/artifacts/.
har_list_runsList persisted harness run records from .har/runs/.
har_get_runFetch one harness run record by runId.
har_control_upStart local Mission Control (a single self-contained Docker container backed by SQLite) and sync all harness repositories that were scaffolded with har onboard or har_init_harness.
har_line_createScaffold a project-owned factory line at .har/lines/<id>/ (manifest, program, optional gate stage, README). A line is a multi-station program, not a verification plugin.
har_add_lineInstall a factory line bundle (local id, path, npm package, or git URL). Registers the line's stages but NEVER adds them to verificationStages — default verify stays unchanged. Verification plugins use har_add_plugin instead.
har_line_statusStations, cumulative gate progress derived from .har/runs/ records, and slots in flight for installed factory lines. Pure read — writes no run records.
har_run_line_gateRun one station's cumulative gate: every gate stage tagged at that station or earlier. Runs through the normal stage runner and writes run records; does not call verify and does not widen the verify plan.
Disclosed vulnerabilities in this server's declared npm dependencies (via OSV). Whether each is reachable depends on the installed versions.
js-yaml: maxTotalMergeKeys does not limit CPU use for empty merge sources
js-yaml: YAML merge-key chains can force quadratic CPU consumption
JS-YAML: Quadratic CPU consumption in !!omap resolution (3.x and 4.x) — CVE-2026-59870 fix not backported
JS-YAML: Quadratic-complexity DoS in merge key handling via repeated aliases
esbuild enables any website to send any requests to the development server and read the response
API_URLBASE_URLDEVELOPER_DIRGOPATHGOROOTHAR_CLAUDE_PROJECTS_DIRHAR_CLOUD_API_KEYHAR_CLOUD_API_URLHAR_CODEX_SESSIONS_DIRHAR_CONTROL_API_URLHAR_CONTROL_BUILDHAR_CONTROL_DISABLEDHAR_CONTROL_IMAGEHAR_CONTROL_IMAGE_TAGHAR_CONTROL_REGISTRY_PATHHAR_CONTROL_SYNC_SELECTION_PATHHAR_CONTROL_VERBOSEHAR_CREDENTIALS_PATHHAR_EJECT_RUNTIME_SOURCEHAR_OTEL_HOOKS_HOMEHAR_PACKAGE_VERSIONHAR_PORTAL_SYNC_STATE_PATHHAR_PORTAL_TARGETS_PATHHAR_PORTAL_TOKENHAR_PORTAL_TRAJECTORYHAR_PORTAL_URLHAR_PREFERENCES_PATHHAR_ROOTHAR_SYNC_MAX_BATCH_BYTESHAR_SYNC_OVERLAP_MSHAR_TELEMETRYHAR_TELEMETRY_CONFIG_PATHHAR_WORKTREES_ROOTJAVA_HOMEPW_SCREENSHOTPYTHON_BINTool annotations
No tools have read-only/destructive annotations
Add readOnlyHint or destructiveHint annotations to every tool so hosts can warn users before invoking.
All four hints declared on every tool
23/23 tools missing one or more hints — har_describe_project (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); har_init_harness (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); har_maintain (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint), +20 more. OpenAI's directory rejects tools where any of the four hints are missing or non-boolean.
For every tool, set all four hints (readOnlyHint, destructiveHint, idempotentHint, openWorldHint) to explicit true/false values that match the handler’s actual behaviour.
Shell command execution
17 calls in production code run through a shell (src/core/cleanup-service.ts:74, src/core/cleanup-service.ts:381, src/core/control-port.ts:47)
Prefer library functions over shell-outs. If you must shell out, ensure all inputs are properly escaped.
No arbitrary install scripts
Has postinstall/preinstall script — runs arbitrary code on npm install
Remove postinstall/preinstall hooks unless they’re essential.
Production dependencies are patched
0 critical, 3 high severity in production deps — js-yaml@3.14.2 (high), js-yaml@3.14.2 (high)
Run npm audit fix, or upgrade the affected packages to a non-vulnerable version.
Domain consistency
npm scope @osfactory doesn't match GitHub owner os-factory
Use the same org name across GitHub, npm, and your homepage so users can verify the publisher.
Claim the listing to review these findings one by one and send us a correction where you disagree, straight to the team. Claiming also means we tell you when the grade moves, and reach you first if we find anything urgent.
[](https://m8ven.ai/mcp/os-factory/har)?variant=verified from the URL.Vetting this one by hand? Tool Check is an MCP that scores other MCPs. Add it once and ask Claude, ChatGPT, or any MCP client to grade a server, surface CVEs, check the publisher, and suggest safer alternatives — before you install.
https://m8ven.ai/api/mcp/tool-check