Command Palette

Search for a command to run...

UnylyUnyly
Browse all

Harness Rs

FreeNot checked

MCP (Model Context Protocol) stdio server exposing the harness-rs tool registry to Claude Code, Cursor, and Codex.

GitHubEmbed

About

MCP (Model Context Protocol) stdio server exposing the harness-rs tool registry to Claude Code, Cursor, and Codex.

README

crates.io license

Agent = Model + Harness. This is the Harness — the scaffolding that turns an LLM into an autonomous agent. Any domain: research, ops, assistants, data, code.

A Rust framework for production agents. Compile-time type-safe, deterministic-first, observable, governance built in.

  • A loop, not a call — ReAct with tool dispatch, sensor feedback and auto-fix, under a budget; guards for stuck detection, acceptance, spill, deadlines.
  • Autonomy earned in stages — L1 report → L2 assisted (human gate) → L3 unattended (allowlist only). Graduate the agent as you build trust.
  • Honest isolation — macOS Seatbelt and Docker enforce; a git worktree isolates changes, not capability, and reports itself that way.
  • Memory that compounds — procedural, semantic and episodic, across sessions.
  • Code does what code can — lint · format · git run as Sensors and Hooks, not model turns. Measured, not asserted.

Quick start

use harness_core::Task;
use harness_loop::AgentLoop;
use harness_models::ApiKind;
use harness_tools_fs::{ListDir, ReadFile};
use std::sync::Arc;

// One model API: protocol family + base_url + model + key. No hardcoded URLs.
let model = ApiKind::OpenAI.build("https://api.deepseek.com", "deepseek-chat", key);
let task = Task { description: "What is the workspace name?".into(), source: None, deadline: None };
let outcome = AgentLoop::boxed(model)          // `boxed` takes Arc<dyn Model>
    .with_tool(Arc::new(ReadFile))
    .with_tool(Arc::new(ListDir))
    .run(task, &mut harness_context::default_world("."))
    .await?;

Register tools, skills, guides, sensors and hooks with #[harness::tool] / #[skill] / #[guide] / #[sensor] / #[hook] — they auto-register via inventory. Scaffold a project with harness new; harness code is an approval-gated coding REPL built on the framework (--yolo to unattend).

More

docs/guide.md — crates, composable layers, sandboxing, PII redaction, documents/OCR, telemetry, record/replay, grounded search, examples · docs/benchmarks.mdpass^k, guard ablation, cost · DESIGN.md · CHANGELOG.md · MIT

from github.com/liliang-cn/harness-rs

Installing Harness Rs

This server has no published package — it is built from source. Open the repository and follow its README.

▸ github.com/liliang-cn/harness-rs

FAQ

Is Harness Rs MCP free?

Yes, Harness Rs MCP is free — one-click install via Unyly at no cost.

Does Harness Rs need an API key?

No, Harness Rs runs without API keys or environment variables.

Is Harness Rs hosted or self-hosted?

Self-hosted: the server runs locally on your machine via the install command above.

How do I install Harness Rs in Claude Desktop, Claude Code or Cursor?

Open Harness Rs on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.

Related MCPs

Compare Harness Rs with

Not sure what to pick?

Find your stack in 60 seconds

Author?

Embed badge for your README

Browse similar

All development MCPs