Hermai Cli

io.github.hermai-ai由 GitHub 帳號 hermai-ai 發布v0.3.0更新於 Oct 28, 2026

Hermai MCP server — look up, submit, and classify website API schemas from any MCP client.

概覽

AI 產生的概覽

Hermai CLI 提供 Hermai 網站 API schema 登錄檔的存取,讓助理在 MCP 用戶端查詢、提交並呼叫網站端點。

可以做什麼
  • 查詢並拉取 Hermai 登錄檔中的網站 API schema,瀏覽目錄,彙整或顯示某個網址的快取 schema
  • 向登錄檔提交新 schema,並用探測工具辨識網站平台、反機器人機制、well-known 檔案、內嵌資料與 GraphQL schema
  • 直接呼叫讀取類端點,或執行含工作階段處理與逐請求簽章的驗證寫入操作,並可用 dry-run 先檢視簽章後的請求
  • 從已安裝的瀏覽器匯入指定單一網域的 Cookie,或建立新的工作階段,以存取需登入的端點
  • 用有介面的瀏覽器擷取 XHR 流量並重播請求,以記錄寫入流程
適用情境
適合助理需要以結構化方式存取某網站的 API、而非擷取頁面時使用,也適合要把網站端點整理成 schema 並貢獻到社群目錄的情境。對於需要執行發文、儲存草稿、加入購物車等需登入寫入操作的代理程式同樣有用。
執行需求
以本機程序執行,可透過 npm(需 Node.js)、Homebrew、Go 或預先編譯的執行檔安裝。拉取 schema 需要 Hermai 登錄檔帳號(GitHub 登入)以取得 API key。匯入瀏覽器 Cookie 需要作業系統層級授權(Keychain、DPAPI、libsecret),擷取流量則需要已安裝的瀏覽器。
安裝前請注意
它會從已安裝的瀏覽器讀取 Cookie 並存放在本機工作階段目錄,應視為敏感資料。驗證寫入操作會代表你向第三方網站送出請求,可能變更對方資料。schema 與擷取到的請求可能被推送到公開登錄檔,提交前請確認內容。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Hermai Cli,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

hermai-cli

English · 繁體中文 · 简体中文

Discover, contribute, and call structured website APIs from your terminal.

hermai is the open-source CLI for the Hermai registry — a community catalog of website API schemas for AI agents. Probe a site to document its endpoints, push the schema to the catalog, or pull an existing schema and call it — including authenticated writes with per-request signing.

Install

bash
# macOS and Linux via Homebrewbrew install hermai-ai/hermai/hermai
# Anywhere Node is installed (no Go toolchain needed)npm install -g hermai-cli      # or: npx hermai-cli --help
# Go developersgo install github.com/hermai-ai/hermai-cli/cmd/hermai@latest
# Prebuilt binaries for every OS × arch# https://github.com/hermai-ai/hermai-cli/releases/latest

Already installed? Upgrade in place without re-running any of the above:

bash
hermai update

Agent skill

Running in Claude Code, Codex, Cursor, or another agent? Install the Hermai skill so the agent knows how to use this CLI:

bash
npx skills add hermai-ai/hermai-skills --skill hermai

One skill covers both audiences. When a user asks for data from a site, the agent pulls the schema and calls it. When a user wants to add a new site, the skill's contributor references (loaded on demand via progressive disclosure) walk the agent through discovery, schema authoring, and push.

Repo: hermai-ai/hermai-skills.

Call a site as an API

bash
# Pull a schema (API key required, GitHub sign-in at hermai.ai/dashboard)hermai registry loginhermai registry pull x.com --intent "drafting a post from my agent"
# Read endpoints: call them directly with curl / fetch / any HTTP client.# Authenticated writes: `hermai action` handles sessions + signing for you.hermai action x.com CreateDraftTweet --arg text="drafted by hermai"

hermai action loads the schema, resolves the user's session (cookies from disk, or pulled from an installed browser on first run), runs any schema-declared bootstrap JS to compute per-session state, runs any per-request signer JS, fires via a Chrome-TLS fingerprinted HTTP client, and rotates Set-Cookie back on 2xx responses. Works against sites that require per-request signing (X's x-client-transaction-id, TikTok's X-Bogus) without opening a browser.

Useful flags:

  • --dry-run — print the fully-signed request, don't hit the network
  • --schema <file> — use a local schema JSON instead of the registry cache
  • --arg key=value — repeatable, fills {{var}} placeholders in the schema's URL/body templates

Registry

bash
hermai registry login                         # GitHub OAuth, stores API keyhermai registry list                          # browse the cataloghermai registry pull <site> --intent "..."    # download a schemahermai registry push schema.json              # contribute a schema

Discovery toolkit

Deterministic subcommands for composing a new schema. No LLM key — each prints JSON the next step can consume.

bash
hermai detect <url>                          # platform + anti-bot classificationhermai wellknown <domain>                    # robots, sitemap, RSS, GraphQLhermai probe --body <url> | hermai extract   # 13 named embedded-data patterns plus                                             # any <script type="application/json" id="X">hermai probe --body <pdf-url> | hermai extract --state IL --url <pdf-url> --report-month 2026-02hermai enforcement --state IL <root-url>     # discover Illinois IDFPR PDFs and emit cited actionshermai intercept <url>                       # capture XHR in a browserhermai introspect <graphql-url>              # GraphQL schemahermai replay request.json                   # replay a captured requesthermai session bootstrap <site>              # warm a fresh browser sessionhermai session import <site>                 # import cookies from your current browser

Capturing authenticated write endpoints

Most interesting APIs are gated behind cookies. To capture a write flow (add-to-cart, save-draft, submit-review) without logging in a second time, combine headful intercept with session injection:

bash
# 1. Pull cookies from the browser you're already signed in withhermai session import example.com
# 2. Open a visible Chrome, pre-loaded with those cookies, and capture what you clickhermai intercept https://example.com/product/123 \  --headful --session example.com \  --timeout 120s --wait 100s --ndjson > capture.ndjson
# 3. Grep/jq the captured JSON for the XHR of interestgrep -F 'CreateOrder' capture.ndjson | jq '.request.body'

The request body goes straight into your schema's body_template with {{var}} placeholders for user-varying fields. Capture, don't guess — inventing body fields is the #1 cause of rejected write schemas.

hermai introspect takes --header name=value (repeatable) for auth-gated GraphQL endpoints like Shopify Storefront or Estée Lauder's Stardust.

Import your existing browser session

When a schema requires login (post a tweet, add to cart, RSVP), you can use the session you already have in Chrome, Firefox, Safari, Edge, or Brave — no need to log in again:

bash
hermai session import x.com# Reads cookies scoped to x.com from your installed browsers,# saves them to ~/.hermai/sessions/x.com/cookies.json

The first run surfaces an OS-level authorization prompt (macOS Keychain, Windows DPAPI, Linux libsecret) — Hermai can't read your cookies without your explicit consent at the OS level. Reads are always scoped to the single domain you name; we never touch cookies for other sites.

Use --dry-run to see the cookie names without writing values to disk:

bash
hermai session import x.com --dry-run

Local cache

bash
hermai catalog <url>                          # summarize cached endpoints for a URLhermai schema <url>                           # show the cached schema JSONhermai cache list                             # list cached domainshermai init                                   # create ~/.hermai/config.yamlhermai doctor                                 # verify your setup

hermai --help for the full command list.

Docs

  • Concepts + schema spec — docs.hermai.ai
  • Hosted registry + dashboard — hermai.ai
  • Skill reference: hermai-ai/hermai-skills — architecture, runtime, CLI, contributing

License

AGPL-3.0. Running a modified version as a hosted service requires publishing your changes.

來源:README.md,提交 7419a24

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

1
  1. v0.3.0最新Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分