
Marchward
ai.marchwardPublished by marchward.aiv0.2.4Updated Oct 24, 2026
Runtime authority for AI agents: credential mediation, spend cap, approval gates, audit log.
Overview
Marchward is a local governor that sits in front of an AI agent's tool calls, enforcing policy decisions and writing a tamper-evident audit log.
- What you can do
- Marchward intercepts an agent's tool calls (MCP, HTTP, or SDK) and evaluates each against a user-defined policy before it runs, returning ALLOW, ESCALATE, or BLOCK. It mediates credentials so the agent holds only a Marchward key while the real service secret is injected at execution. It also enforces an inference spend cap and appends every decision to a hash-chained audit log that can be verified offline.
- When to use it
- Use it when running autonomous agents in production and you need to prevent runaway spend, stop irreversible actions from running unattended, or keep a verifiable record of every tool call. It is aimed at teams using LangGraph, LangChain, raw SDKs, or any MCP server.
- Requirements
- Runs as a local process via npm (@marchward/mcp-server) or the marchward-proxy CLI. Requires a Marchward API key (MARCHWARD_API_KEY) and a Marchward API base URL (MARCHWARD_API_URL). A fully local mode exists that needs no account or network call.
Installation
In SourceWeft
- Open Marchward in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
Marchward · runtime authority for AI agents
Marchward
Govern what your AI agents are allowed to do. Marchward is one open layer that sits in front of an agent's tool calls and enforces four controls before any action runs, then writes a tamper-evident record of every decision. Self-hostable, Apache-2.0, framework-agnostic.
- Credential mediation. The agent holds one Marchward key, never your real GitHub, Stripe, or database credentials. The real secret is injected at execution, and the agent never sees it.
- Inference spend cap. A hard ceiling on agent spend, so a runaway loop can't drain a budget.
- Approval gates. Irreversible actions pause for a human instead of running unattended.
- Tamper-evident audit. Every decision appends to a hash-chained log you can verify offline. Provable, not just logged.
Most tools in this space cover one of these. Marchward brings all four together in one place, open and self-hostable.
Output guardrails check what an agent says (toxicity, PII, topic). Marchward governs what an agent does (spend, delete, act). A check on the agent's output cannot stop an agent that still holds the keys and can make a different call. Marchward governs the action itself.
Built for teams already running agents in production (LangGraph, LangChain, raw SDKs, any MCP server, or one HTTP call from any runtime) who need an agent to be autonomous without being able to drain a budget, take an irreversible action unattended, or act without an audit trail.
Quickstart: govern an agent in 60 seconds (fully local, no account)
marchward-proxy wraps any MCP server as a child process and evaluates every tools/call against your policy before it runs (block, allow, or pause for human approval), entirely on your machine, with your own credentials.
Every tool call your agent makes now passes through policy first, and lands in a local tamper-evident (hash-chained) audit log you can verify offline. No account, no network call to us.
Prefer the SDK? pip install marchward and wrap calls with marchward.execute(). Point it at your own self-hosted setup, or at the managed plane (below).
What's open vs. what's hosted
The open packages in this repo are a fully functional self-host governor. Some operational features need shared state and run on the hosted plane (free tier, no card):
So: self-host this for execution control, credential mediation from your own local store, a local cost cap, and a local audit log; add the free hosted tier for the managed credential vault (rotation, team sharing), approval workflows, retained audit-as-a-service, and cross-agent enforcement. Same engine underneath. The proxy's --remote mode just points at the plane.
How it works
- Your agent makes a tool call (MCP, HTTP, or via the SDK).
- Marchward evaluates it against your policy. Risk is judged by the resolved action: any destructive operation (a
DELETE, a flagged destructivePOST) is gated regardless of what the tool is named, so a custom-named destructive tool cannot slip past. - The decision, ALLOW / ESCALATE / BLOCK, is enforced before the call runs and appended to a hash-chained audit log.
- Credential mediation means your agent holds only a Marchward key. The proxy injects the real service credential (from your own local store when self-hosted, or the managed vault on the hosted plane), so a rogue "different tool call" cannot misuse a credential the agent never held.
Packages
@marchward/engine: the deterministic decision engine + hash-chain audit primitive (zero dependencies).@marchward/proxy: the local governor (MCP + HTTP),--localor--remote.@marchward/sdk(TypeScript) andmarchward(Python, on PyPI): clients.
Project
- Contributing:
CONTRIBUTING.md(DCO sign-off,git commit -s) - Security:
SECURITY.md· Conduct:CODE_OF_CONDUCT.md· Governance:GOVERNANCE.md - Trademark:
TRADEMARK.md. The code is open (Apache-2.0); the name is not. - What's open vs. commercial:
OPEN-VS-COMMERCIAL.md· our licensing commitment (the engine stays open, no relicensing rug-pull). - License: Apache-2.0.
- Hosted free tier: https://app.marchward.ai/signup (500 decisions/mo, no card).
Source: README.md at commit c34cb0d
Tools
0Version history
1- v0.2.4LatestSep 16, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts