Frihet ERP Operating Contract for Openclaw

A read-first operating contract for using the Frihet ERP MCP safely, with explicit controls for approvals, writes, and retries.

berthelius
v1.0.0
Oct 8, 2026
0
156
0

Install & Download

1. ClawHub CLI

The fastest way to install a skill directly from the registry.

npx clawhub@latest install frihet-erp

2. Manual Installation

Copy the skill folder to one of these locations

Global
~/.openclaw/skills/
Workspace
<project>/skills/

Priority: Workspace > Local > Bundled

3. Prompt Installation

Copy this prompt to OpenClaw to install it automatically.

Help me install frihet-erp using Clawhub. If Clawhub is not installed, install it first (npm i -g clawhub).

Prefer to download?

Get the raw skill files in a ZIP archive.

What is Frihet ERP Operating Contract?

The Frihet ERP skill guides AI agents working with Frihet’s MCP server through safe, predictable operations. It establishes a read-first default, documents when human approval is required, and helps prevent duplicate or unintended changes through idempotency and reconcile-before-retry practices.

Designed for Openclaw Skills and compatible agent hosts, this bundle ships without a pre-registered MCP server or write tools. Users explicitly configure a literal allowlist of 39 read-only operations before OAuth authorization, then opt in to additional operations only when needed.

Frihet ERP Operating Contract Use Cases

  • Look up Frihet invoices, clients, expenses, products, properties, transactions, or other business records using read-only tools.
  • Check whether a proposed Frihet operation is a read, draft, or action with external side effects before calling it.
  • Prepare a local draft, present relevant fields and totals, and pause for human review before finalizing.
  • Add Frihet MCP access to OpenClaw or another supported agent host with an explicit read-only tool allowlist.
  • Recover safely from an ambiguous write result by checking the server state before considering a retry.
  • Handle insufficient-scope errors by escalating to an authorized user rather than attempting a workaround.

How Frihet ERP Operating Contract Works

  1. Install the skill bundle. It does not register Frihet MCP tools by default.
  2. Add the Frihet MCP endpoint to the agent host and explicitly select the 39 literal read-only operation names. Avoid globs so newly added upstream tools are not automatically enabled.
  3. Complete OAuth only after the allowlist is in place. The host manages OAuth credentials and tokens.
  4. For a requested operation, consult the canonical Frihet safety contract and operation metadata; read the latest target state before attempting a write.
  5. For local-draft operations, prepare and show the draft, then stop for human review before sending or finalizing. Require human approval for operations marked with external side effects.
  6. If a write result is ambiguous, check the Frihet record and honor its idempotency key before deciding whether another call is needed.
  7. Treat server scopes and permissions as authoritative. Escalate a 403 insufficient_scope response instead of trying to bypass it.

Frihet ERP Operating Contract Setup

Install the bundle, then register the Frihet MCP with an explicit read-only allowlist. The order matters: do not authorize OAuth until the allowlist has been applied.

# Install the skill bundle; no MCP server is pre-registered.
clawhub install @frihet/agent-plugin

# Register Frihet with the literal read-only tool allowlist.
openclaw mcp add frihet \
  --url https://mcp.frihet.io/mcp \
  --transport streamable-http \
  --auth oauth \
  --include 'list_invoices,get_invoice,search_invoices,list_clients,get_client,list_client_activities,list_expenses,get_expense,list_vendors,get_vendor,list_quotes,get_quote,list_products,get_product,list_recurring_invoices,get_recurring_invoice,list_reservations,get_reservation,list_properties,list_bank_accounts,get_bank_account,list_transactions,list_deposits,get_deposit,list_webhooks,get_webhook,list_team_members,list_kitchen_tickets,get_kitchen_ticket,list_kitchen_stations,list_menu_items,list_sales,get_sale,list_terminals,get_time_summary,get_quarterly_taxes,get_business_context,get_monthly_summary,anomaly_list'

# Authorize only after the read-only allowlist is applied.
openclaw mcp login frihet

For Hermes, add the server and use its interactive configuration to deselect mutating operations before authorization. In Cursor, ChatGPT, or Gemini, use the host’s allowed-tools panel and enter the same 39 literal names. Do not use wildcard patterns such as list_*. To enable writes later, explicitly configure the desired operations and follow the host’s human-approval capabilities; the skill itself does not grant permissions.

Frihet ERP Operating Contract Data Schema & Taxonomy

The skill relies on Frihet’s canonical operating contract and operation-level capability metadata rather than guessing safety from tool names.

Resource Purpose
docs/agent-onboarding.json in Frihet-io/frihet-mcp Current machine-readable source of truth for operation safety and capabilities.
vendor/frihet-mcp-onboarding.json Vendored contract copy for offline validation.
optional-mcps/frihet/manifest.yaml Connector manifest that pre-checks the read-only operations.
references/mcp.json.example Example configuration reference; the bundle intentionally does not ship a root-level mcp.json.
tests/test_security_posture.py Checks that the bundle preserves its security posture and documents the literal allowlist.

Each operation may expose _meta[\"io.frihet/capability\"] with fields such as operation, category, mutates_state, idempotency_required, external_side_effects, and human_authority_required. Runtimes should use this metadata for policy decisions. The default allowlist has 39 read-only tools: 28 list_* operations, 8 get_* operations, search_invoices, anomaly_list, and the applicable time, tax, or business-context summaries. Mutating operations are not pre-enabled.

Frihet ERP Operating Contract Advanced Features

  • Explicit, literal read-only allowlisting prevents new upstream operations from being silently authorized.
  • Capability metadata provides structured signals for mutation, idempotency requirements, external side effects, and human authority.
  • The operating contract requires re-reading the target before writes and reconciling server state before retrying an ambiguous operation.
  • Hermes can use the companion Frihet plugin’s pre_tool_call hook to route contract-designated operations to its approval gate.
  • OpenClaw has no equivalent host-level approval hook in the described plugin model; the skill instructs the agent to pause for explicit confirmation, while per-server tool filtering provides a structural control.
  • Host-managed OAuth keeps access tokens and refresh tokens outside the skill; the plugin does not read, copy, refresh, or impersonate credentials.
  • Contract verification tests enforce key security requirements, including the absence of a root mcp.json and documentation of the 39-name allowlist.

SKILL.md


Loading

Related Openclaw Skills

METADATA

Github Stars: 0
forks: 0

Featured*