Hermes Plant — Agent Commerce Assurance

io.github.JesseGdotIOPublished by GitHub account JesseGdotIOv2.0.2Updated Oct 25, 2026

Preflight, approve, and prove consequential agent actions with signed evidence and x402 tools.

VerifiedStreamable HTTPWeb executableFinanceSecurity & MonitoringBusiness & Commerce

Overview

AI-generated overview

Hermes Plant lets an assistant preflight risky agent actions, check x402 payment policy, and buy deterministic finance and risk scoring calls per use.

What you can do
  • Score a consequential command or action for safety, run the full DestructGuard workflow with a signed receipt, and route high-risk cases to a review queue
  • Check x402 payment policy, verify evidence bundles, and create or verify HMAC-signed assurance records for payments and tool calls
  • Score MCP server manifests, wallet risk context, and portfolios from caller-supplied data
  • Run deterministic finance math: deal underwriting, cashflow NPV/IRR, LP/GP waterfalls, option pricing with Greeks, and bond or loan analytics
  • Validate single emails or batches of up to 20 contacts for quality and deliverability
  • Browse the product catalog, read checkout policies, and start Stripe checkout or x402 purchases
When to use it
Use it when an agent is about to take a consequential action or spend money and you want a cheap preflight check plus tamper-evident evidence. It also suits agents that need deterministic financial or risk calculations instead of model estimates.
Requirements
Remote Streamable HTTP endpoint; no local runtime needed. An optional X-API-Key header gives a free tier of 250 calls per month. Paid tools otherwise return an x402 payment challenge requiring a funded Base mainnet wallet with USDC and ETH for gas, plus a locally signed payment signature.
Before you install
Most tools cost money per call, from about a cent up to two dollars, settled in USDC on-chain. Paid flows require signing a payment authorization with a wallet private key, so keep keys out of the agent's reach and cap spend. Review-queue triage is explicitly not human approval, and WalletGuard does no chain lookup or sanctions screening. Checkout and purchase tools can create real orders.

Installation

In SourceWeft

  1. Open Hermes Plant — Agent Commerce Assurance in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.github.JesseGdotIO%2Fhermes-plant/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "hermes-plant-agent-commerce-assurance": {
      "type": "http",
      "url": "https://mcp.hermesplant.com/mcp"
    }
  }
}

README

Hermes Plant MCP Server

[Glama score] [CI]

Runnable MCP server and integration examples for Hermes Plant, the Agent Commerce Assurance layer that lets AI agents preflight, approve, and prove consequential actions. Start with a one-cent action-safety check, route only high-risk actions into signed review evidence, and pay per call over x402.

What's here: a runnable stdio MCP bridge for registry crawlers and local clients, plus drop-in examples in curl, TypeScript, Python, CrewAI, LangChain, and MCP client configs for Claude Desktop / Cline / Cursor.

Review one workflow before launch

An agent receives approval for one action, its arguments change, and a retry after a timeout may execute it twice. What binds approval to the final action, prevents duplicates, and proves whether execution completed?

The sample findings memo walks through a synthetic example of these gaps, the available evidence, and a ranked fix plan. It is a demonstration, not a client result.

For technical founders and automation agencies with a working or near-launch agent, the $300 workflow review covers one workflow, a workflow map, ranked findings, and a practical fix plan. The three-hour cap includes calls, preparation, the memo, and one clarification round. We agree scope and timing in writing before billing. Implementation and production access require a separate agreement.

Install the Action Safety skill

Install the public, fail-closed Action Safety skill for Codex, Claude Code, Cursor, and other Agent Skills-compatible clients:

bash
npx [email protected] add JesseGdotIO/hermesplant-mcp-server --skill protect-agent-action

The skill calls the one-cent quick gate before an exact consequential action, binds the result to that unchanged action, and escalates high or critical risk only when the additional $0.25 is authorized. Review triage is never treated as human approval and the skill never expands the caller's permissions.

Source: skills/protect-agent-action · Install guide and trust boundary

Use the hosted MCP connector

For the complete production tool surface, use the canonical Hermes Plant — Agent Commerce Assurance connector on Glama. It exposes Action Safety, Spend Assurance, signed evidence, payment-policy checks, and the component x402 tools through the live Streamable HTTP endpoint.

This repository is the portable, no-secret discovery bridge. It lets registry crawlers and local clients inspect the live catalog and payment contracts without signing a wallet message or spending funds. The hosted connector is the buyer-facing path for invoking the production tools.

Glama registry

[Hermes Plant MCP Server Glama card]

This repo is arranged for Glama to build and inspect the MCP server without secrets or funded wallets:

  • glama.json declares the GitHub maintainer.
  • The root Dockerfile starts the stdio MCP server in mcp-server/.
  • npm run smoke:mcp lists all local MCP tools and fetches the live x402 manifest.
  • GitHub Actions validates the MCP server, Docker image, shell examples, and no-spend TypeScript/Python client contracts with their real dependencies.

A Glama release is still an account-side action, not a GitHub release. After claiming the server in Glama, use the Dockerfile admin page to deploy the build, wait for the build test to pass, then publish a Glama release version. That release unlocks Glama's Server Coherence and Tool Definition Quality scoring.

Complementary MCP servers

Hermes Plant governs consequential actions and payments; these independent servers cover adjacent layers of an agent stack:

  • SINT Protocol — capability authorization and policy enforcement before execution.
  • AgentPay MCP — non-custodial wallet execution with spend limits and approval queues.
  • Agent Security Scanner MCP — repository, package, prompt, and skill security scanning.

These links describe functional complementarity, not partnerships or endorsements.

Start with an assurance workflow

WorkflowUse it forTracked entrypoint
Action SafetyPreflight shell, Git, SQL, deploy, x402, and MCP actions; escalate high-risk work into review plus a signed receipt.Open workflow
Spend AssuranceCheck payment policy, wallet context, and evidence before an agent spends.Open workflow
Investment EvidenceRun deterministic underwriting and return verifiable evidence in one paid call.Open workflow

Use the free API key for up to 250 calls/month, the $29/month Agent API Pass for regular volume, or per-call USDC on Base. Public proof and machine-readable contracts are available at hermesplant.com/proof and hermesplant.com/openapi.json.

Component catalog

Nineteen hosted x402 endpoints remain available as composable utilities:

EndpointUse it forHosted path
DealAnalyzerDCF, IRR, XIRR, NPV/agent-services/dealanalyzer
WaterfallLP/GP private-equity distribution waterfalls/agent-services/waterfall
OptionsBlack-Scholes pricing + Greeks/agent-services/options
BondYield, duration, convexity/agent-services/bond
CashflowLensCash-flow projection + sensitivity/agent-services/cashflowlens
PortfolioGuardPortfolio risk scoring/agent-services/portfolioguard
WalletGuardWallet AML + sanctions screening/agent-services/walletguard
EmailGuardEmail reputation + risk/agent-services/emailguard
DestructGuardBlock destructive AI-agent commands/agent-services/destructguard
MCP riskScore MCP server risk before connecting/agent-services/mcp-risk
EvidenceEvidence bundle for paid calls/agent-services/evidence
Payment policyInspect/score an x402 payment policy/agent-services/payment-policy
ReviewQueueHuman-in-the-loop approval routing/agent-services/reviewqueue

Agents discover endpoints through OpenAPI, llms.txt, the x402 manifest, the API catalog, MCP metadata, or agent skills. The workflow links above identify this GitHub repository as their source; actual Glama placements use separate registry tags. Source tags are observational and do not establish buyer identity or a completed purchase.

How an x402 call works

text
Client                    Hermes Plant                 Facilitator  |                            |                            |  | POST /endpoint             |                            |  |--------------------------->|                            |  | 402 Payment Required       |                            |  | + PAYMENT-REQUIRED         |                            |  |<---------------------------|                            |  | sign payment locally       |                            |  | POST /endpoint             |                            |  | + PAYMENT-SIGNATURE        |                            |  |--------------------------->| verify signature           |  |                            |--------------------------->|  |                            | ok                         |  |                            |<---------------------------|  | 200 OK + result            | settle payment             |  |<---------------------------|--------------------------->|
  1. Client makes an HTTP request.
  2. Server replies with 402 Payment Required plus a PAYMENT-REQUIRED header carrying the price, network, asset, recipient, and timeout.
  3. Client parses the challenge, signs a USDC transfer authorization locally, and replays the request with a PAYMENT-SIGNATURE header.
  4. Server verifies the signature via the facilitator, runs the work, settles the payment on-chain, and returns 200 OK with the result plus a PAYMENT-RESPONSE header.

The full spec lives at github.com/x402-foundation/x402.

Discovery surfaces

These let any agent or human self-onboard without help:

MCP tools in this repo

The runnable stdio server exposes five read-only discovery tools:

ToolPurpose
hermesplant_x402_manifestFetch the live x402 manifest before paid calls.
hermesplant_llms_catalogFetch the agent-readable llms.txt catalog.
hermesplant_api_catalogFetch the machine-readable API catalog.
hermesplant_mcp_server_cardFetch the hosted MCP server descriptor.
hermesplant_list_hosted_toolsIntrospect the hosted Streamable HTTP MCP endpoint and list its advertised tools.

These local tools do not sign wallet messages, approve transactions, call paid endpoints, or spend USDC. They expose the discovery layer that clients need before invoking paid hosted tools.

Quickstart

Pick the runtime that matches your stack:

RuntimeFolderNotes
curl / Bashcurl/Pure shell; useful for inspecting the 402 handshake
TypeScripttypescript/Uses @x402/fetch + @modelcontextprotocol/sdk
Pythonpython/Uses the x402 package
CrewAIcrewai/Finance-agent crew calling Hermes endpoints
LangChainlangchain/LangChain Tool wrapping Hermes
MCP configmcp-config/One-paste config for Claude Desktop / Cline / Cursor
MCP servermcp-server/Runnable stdio MCP bridge for discovery, server-card inspection, and hosted-tool listing

Run the MCP server locally

bash
npm installnpm run smoke:mcpnpm start

MCP server registry build

This repo includes a root glama.json and root Dockerfile for MCP registry crawlers:

bash
docker build -t hermesplant-mcp-server .docker run --rm -i hermesplant-mcp-server

The container starts the stdio MCP bridge in mcp-server/, which exposes Hermes Plant discovery tools and hosted MCP metadata without requiring API keys.

Example source labels

The curl, TypeScript, Python, CrewAI, and LangChain CashflowLens examples send x-hermes-channel: github-mcp-repo, x-hermes-medium: repository, and x-hermes-campaign: first-workflow. x-hermes-content identifies the runtime. The paid clients pass these headers into the x402 request so the SDK retains them when retrying after a 402 challenge. Curl only inspects the unpaid challenge.

If you publish an example in another placement, replace these labels with that placement's source and campaign. Labels are caller-declared observations; they do not verify buyer identity, revenue, or an unaffiliated customer. Owner QA must also send x-hermes-probe: 1 so it is excluded from acquisition reporting.

Wallet setup

The guarded paid-call examples require:

  • A funded wallet on Base mainnet with chain id 8453.
  • Enough USDC for the selected endpoint and a small amount of ETH for gas.
  • EVM_PRIVATE_KEY plus the explicit opt-in HERMES_ALLOW_PAYMENT=1.

The included CashflowLens clients cap payment requirements at $0.20 USDC and register only Base mainnet. Leave the opt-in unset for imports and tests. Never commit a private key. These production examples do not claim testnet support; use an x402 test resource server for testnet integration work.

Status

These examples target the production deployment at hermesplant.com. Endpoint signatures may evolve, so cross-reference openapi.json and the /.well-known/x402 manifest before going to production.

Contributing

Issues and PRs welcome. New runtime? New framework? Open a PR with one working example and a tight README.

License

MIT - see LICENSE.

Source: README.md at commit 0ec180e

Tools

25

freetier_status

Free-tier key status

Check a free API key's remaining monthly quota, reset date, and upgrade path. Pass your hp_free_ key as apiKey. No key yet? POST an email to https://hermesplant.com/api/keys/free (250 calls/mo, no wallet).

ParametersapiKeyrequired

list_products

List products

List active products from the Hermes Plant catalog

Takes no parameters.

get_product

Get product

Get a single product by slug

Parametersslugrequired

get_checkout_policies

Get checkout policies

Return legal policy URLs required before checkout

Takes no parameters.

get_x402_manifest

Get x402 manifest

Return the live x402 manifest with paid endpoint prices, Bazaar metadata, and buyer policy checks

Takes no parameters.

start_checkout

Start checkout

Start a Stripe checkout session for a product slug

Parametersslugrequired

purchase_with_x402

Purchase with x402

Purchase a one-time product via x402 (returns 402 challenge or fulfillment JSON). Call get_x402_manifest first, verify method/path/network/amount/payTo, then sign and retry with PAYMENT-SIGNATURE.

ParametersslugrequiredemailpayerapiKeychannelcampaignxPaymentactorTypesyntheticpaymentSignaturepaymentIdentifier

action_safety_quick_gate

Action Safety - one-cent preflight

AI agent action safety quick gate ($0.01 over x402 or free-tier quota). Deterministically scores a consequential action and returns the exact next call: proceed, request full DestructGuard evidence, or run the complete Action Safety workflow.

ParameterscwdrepoactorpayerapiKeybranchintentchannelcommandrequiredcampaigndiffStatxPayment+4 more

action_safety_run

Action Safety - complete workflow

Complete AI agent action safety workflow ($0.25 over x402 or free-tier quota): DestructGuard evidence, conditional ReviewQueue triage for high or critical risk, an honest decision, signed receipt, and 30-day status record. Triage does not imply human approval.

ParameterscwdrepoactorpayerapiKeybranchintentchannelcommandrequiredcampaigndiffStatxPayment+4 more

submit_reviewqueue_request

ReviewQueue — submit for risk triage

Submit a command/action to the x402-paid ReviewQueue agent service. Call get_x402_manifest first, verify the ReviewQueue price and buyer policy, then retry the 402 challenge with an x402 payment signature.

ParametersrepoactorpayerapiKeybranchreasonchannelcommandrequiredcampaigndiffStatxPaymentactorType+3 more

score_destructguard_command

DestructGuard — score command risk

Score a command/action with the x402-paid DestructGuard service. Call get_x402_manifest first, verify the DestructGuard price and buyer policy, then retry the 402 challenge with an x402 payment signature.

ParameterscwdrepoactorpayerapiKeyintentchannelcommandrequiredcampaigndiffStatxPaymentactorType+3 more

dealanalyzer_analyze

DealAnalyzer — full deal underwriting in one call

DealAnalyzer (x402-paid, $2.00): the flagship. Deterministic full deal underwrite in a single call — DCF valuation (EV, equity value, implied share price), fund returns (IRR/MOIC), and the LP/GP distribution waterfall, plus sensitivity. Combines what CashflowLens + WaterfallLens do, cross-checked.

ParametersdcfrequiredpayerapiKeychannelreturnscampaignxPaymentactorTypesyntheticwaterfallpaymentSignaturepaymentIdentifier

cashflowlens_analyze

CashflowLens — DCF, IRR & cashflow returns

CashflowLens (x402-paid, $0.20): deterministic NPV, IRR, XIRR, DCF valuation, MOIC/DPI/TVPI, and payback period from a cashflow series. Use for valuation and return analysis instead of letting the model estimate.

ParametersdcfnavpayerapiKeychannelcampaignxPaymentactorTypecashflowsrequiredsyntheticdiscountRateperiodsPerYear+2 more

waterfall_distribute

WaterfallLens — LP/GP distribution waterfall

WaterfallLens (x402-paid, $0.30): deterministic LP/GP distribution waterfall (return of capital, preferred, GP catch-up, carried-interest split) with the exact split, per-tier breakdown, LP MOIC, and effective carry %.

ParameterspayeryearsapiKeychannelcampaignxPaymentactorTypesyntheticcompoundingdistributablerequiredpreferredRatecarryPercentage+5 more

options_price

OptionLens — Black-Scholes price & Greeks

OptionLens (x402-paid, $0.30): deterministic Black-Scholes price and full Greeks (delta, gamma, vega, theta, rho) for European calls/puts, with dividend yield, intrinsic/time value, and moneyness.

ParametersspotrequiredpayerapiKeystrikerequiredchannelcampaignxPaymentactorTypesyntheticoptionTypevolatilityrequiredriskFreeRate+4 more

bond_analyze

BondLens — bond & loan analytics

BondLens (x402-paid, $0.25): deterministic fixed-income and loan analytics. Bond mode solves price<->yield-to-maturity, duration, and convexity; loan mode (send principal+annualRate+termMonths) returns an amortization schedule.

ParameterspayerpriceyieldapiKeychannelperiodscampaignxPaymentactorTypefaceValuefrequencyprincipal+6 more

portfolioguard_score

PortfolioGuard — portfolio risk

PortfolioGuard (x402-paid, $0.15): deterministic portfolio risk scoring from holdings — volatility, Sharpe, max drawdown, concentration (HHI), diversification, plus per-rule findings.

ParameterspayerapiKeychannelcampaignholdingsrequiredxPaymentactorTypesyntheticriskFreeRateperiodReturnspaymentSignaturepaymentIdentifier

walletguard_score

WalletGuard — supplied wallet risk signals

WalletGuard (x402-paid, $0.10): analyzes caller-provided sanctions, exposures, labels, and funding context. Positive risk findings receive a score; no risk findings means unknown with a null score and review required. No chain lookup, independent sanctions screening, or compliance clearance.

ParameterspayerapiKeylabelswalletrequiredchannelcampaignxPaymentactorTypeexposuressynthetictransferssanctionsHits+3 more

emailguard_validate

EmailGuard — email validation

EmailGuard (x402-paid, $0.02): deterministic email/contact quality scorer — validity, deliverability score, disposable/role/free classification, typo suggestion. Pure function, no DNS.

ParametersnameemailrequiredpayerapiKeydomainchannelcampaignxPaymentactorTypemxPresentsyntheticpaymentSignature+1 more

emailguard_validate_batch

EmailGuard — validate a whole contact list

Validate up to 20 emails in one tool call — one deterministic verdict per record (validity, deliverability score, disposable/role/free classification, typo suggestion, canonical normalization). Pass your free apiKey (250 records/mo, no wallet — https://hermesplant.com/pricing) and each record serves from quota. Results preserve input order; the batch stops at the first 402 (quota exhausted) and marks the rest skipped so you can upgrade and resume.

ParameterspayerapiKeychannelrecordsrequiredcampaignxPaymentactorTypesyntheticpaymentSignaturepaymentIdentifier

mcp_risk_score

MCP Server Risk Analyzer

MCP Server Risk Analyzer (x402-paid, $0.05): score an MCP server manifest for security risk before install — destructive tools, over-broad scopes, weak auth, egress — with per-tool findings and fixes.

ParameterspayertoolsrequiredapiKeyserverchannelcampaignxPaymentactorTypeauthModelsyntheticpriorToolspaymentSignature+1 more

payment_policy_decide

Payment Policy — preflight an x402 payment

Payment Policy Decision (x402-paid, $0.05): deterministic allow / deny / needs_review before your agent signs an x402 payment — checks resource binding, amount vs expected price, network, payTo, facilitator, replay readiness, PII leakage, and buyer spend limits, with evidence-backed findings. Loop it over every payment; pair with assurance_attest for a signed record.

ParameterstagsassetpayTopayerapiKeymethodschemechannelnetworkcampaignxPaymentactorType+9 more

evidence_verify

Evidence Verify — check a paid result's evidence bundle

Evidence Verification (x402-paid, $0.05): verify an agent-commerce evidence bundle before trusting a paid result — x402 challenge/receipt/policy-decision/service-response artifacts, endpoint and price binding, freshness, hashes, synthetic-proof leakage. Returns verified / needs_review / rejected / insufficient_evidence with per-rule evidence.

ParameterspayerapiKeypolicychannelsubjectcampaignxPaymentactorTypeartifactsrequiredsyntheticpaymentSignaturepaymentIdentifier

assurance_attest

Assurance Attest — signed receipt for an agent action

Assurance Attest (x402-paid, $0.05): bind one x402 payment intent or MCP tool call to a canonical HMAC-signed record (binding hash, policy verdict, findings, optional settlement outcome). Loop it after every payment or tool call to build a tamper-evident audit trail a third party can check at the free verify endpoint.

ParameterspayerapiKeyintentrequiredpolicychanneloutcomesubjectrequiredcampaignprotocolrequiredxPaymentactorTypesynthetic+2 more

assurance_verify

Assurance Verify — check a signed record (free)

Verify a Hermes-signed assurance record for free: recomputes the canonical hash (hermes-stable-json-v1 + SHA-256) and HMAC signature server-side and reports recordHashValid / signatureValid. Use it to audit attestations produced by assurance_attest without trusting the agent that produced them.

Parametersrecordrequiredintegrityrequired

Version history

1
  1. v2.0.2LatestSep 16, 2026

Score

100% 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 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts