Prototyp · Vorschau: alle Server aus der offiziellen Registry, alle 30 Minuten synchronisiert. Bewertungen und Benutzerkonten folgen in einem späteren Schritt.
PopNx MCPMCP-Server für alle, die KI nutzen · in einfachen Worten erklärt

Sato Kit

von satohubaiVersion 0.1.0i★ –iLäuft auf deinem Computer
Name in der Registryai.satohub/kit

Installieren

Überblick

Beschreibung vom Entwickler (englisches Original)

Prepare -> execute for onchain agent actions: policy pre-flight, simulation, receipt log.

Die drei Säulen von PopNx MCP

Diese drei werden nie zu einer Punktzahl zusammengefasst: Meinungen, Messungen und Beliebtheit sind verschiedene Dinge.

Was du damit machen kannst

Für diesen Server haben wir noch keine Zusammenfassung in einfacher Sprache geschrieben. Unten stehen die Fakten, die wir aus der Registry gelesen haben.

  • Verbindung: Läuft auf deinem Computer
  • Transport: stdio
  • Kategorie: Sonstiges

Installation

Wähle die KI-App, die du nutzt, und kopiere die Einstellungen.

Bevor du installierst

  • Basischecks: 1 von 1 bestanden
  • Läuft auf deinem Computer mit den Rechten deines Benutzerkontos (Dateien, Netzwerk, Apps).
  • Die Registry nennt keinen Schlüssel zum Eintragen.

Du brauchst

  • npmNode.js installiert (für den Befehl npx)

Welche App nutzt du?

Wähle oben deine App. Wir merken sie uns, damit der Button beim nächsten Mal „In … installieren“ anzeigt.

Öffne Claude Desktop → Settings → Developer → Edit Config und füge dies in claude_desktop_config.json ein

{
  "mcpServers": {
    "kit": {
      "command": "npx",
      "args": [
        "-y",
        "@satohub/kit",
        "mcp"
      ]
    }
  }
}

Führe das in deinem Terminal aus

claude mcp add kit -- npx -y @satohub/kit mcp

In Cursor öffnen

Oder kopier die Einstellungen selbst

In .cursor/mcp.json in deinem Projekt oder in ~/.cursor/mcp.json einfügen

{
  "mcpServers": {
    "kit": {
      "command": "npx",
      "args": [
        "-y",
        "@satohub/kit",
        "mcp"
      ]
    }
  }
}

Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.

In VS Code öffnen

Oder kopier die Einstellungen selbst

In .vscode/mcp.json in deinem Projekt einfügen

{
  "servers": {
    "kit": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@satohub/kit",
        "mcp"
      ]
    }
  }
}

Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.

Dieser Server läuft auf deinem Computer, und ChatGPT kann sich nur mit Servern im Internet verbinden. Wähle eine andere App.

Deine Auswahl bleibt in einem Cookie auf diesem Gerät; kein Konto nötig.

Diese Einstellungen werden aus dem Registry-Eintrag des Entwicklers erzeugt. Wenn in der README etwas anderes steht, folge der README.

Was er kann

Läuft auf deinem Computer; die Tool-Liste erscheint nach der Installation in deiner KI-App.

Basischecksi

Wir prüfen Informationen, die jeder sehen kann; den Code haben wir nicht gelesen. Checks, die nicht zutreffen, werden nicht mitgezählt. · Geprüft am 6. Nov. 2026

  • ✓ Bestanden

    Entwickler passt zum Repo

    Der Registry-Name wurde über die Domain satohub.ai bestätigt (die Registry prüft, wem die Domain gehört)

  • … Noch nicht geprüft

    Wird noch gepflegt

    Dieses Repo haben wir noch nicht von GitHub gelesen

  • … Noch nicht geprüft

    Hat eine Lizenz

    Dieses Repo haben wir noch nicht von GitHub gelesen

  • – Nicht zutreffend

    Endpunkt antwortet

    Dieser Server läuft auf deinem Computer; es gibt keinen Endpunkt im Internet

  • – Nicht zutreffend

    Anmeldung mit OAuth

    Läuft auf deinem Computer und nutzt stattdessen lokale Einstellungen

  • … Noch nicht geprüft

    Keine versteckten Anweisungen in Tool-Beschreibungen

    Läuft auf deinem Computer; Tool-Listen können wir nur von Endpunkten im Internet lesen

Im Vergleich mit anderen in Sonstigesi

  • Mehr Sterne als 0 % der anderen 32435 Server in dieser Kategorie
  • Neuer in der Registry veröffentlicht als 52 % der anderen 32435 Server in dieser Kategorie
  • Basischecks gleich gut wie oder besser als bei 100 % der anderen 32435 Server in dieser Kategorie

Verglichen mit allen aktiven Servern dieser Kategorie in der Registry. Sterne zählen nur, wenn dem Herausgeber das Repo gehört.

Häufige Fragen

Ist Sato Kit sicher?

Er hat 1 von 1 zutreffenden Basischecks bestanden. Den Code haben wir nicht gelesen. Bevor du einen Schlüssel oder Token hinzufügst, sieh nach, welche Zugriffe der Server verlangt, und nutze einen Schlüssel, der nur die Berechtigungen hat, die du brauchst.

Welche Schlüssel oder Codes braucht er?

Die Registry nennt keinen erforderlichen Schlüssel, manche Server bitten dich aber bei der ersten Nutzung, dich anzumelden.

Läuft er auf meinem Computer oder in der Cloud?

Er läuft auf deinem Computer. Deine KI-App startet ihn bei Bedarf, und die Daten laufen nicht über die Server des Entwicklers (außer der Server ruft selbst einen Onlinedienst auf).

Wird er noch gepflegt?

Das GitHub-Repo wurde zuletzt – geändert, und die neueste Version (0.1.0) kam vor 37 Tagen in die Registry.

Welche Apps können ihn nutzen?

Apps, die MCP unterstützen, etwa Claude Desktop, Claude Code, Cursor und VS Code. Außerdem brauchst du Node.js auf deinem Computer.

Was kann ich stattdessen nutzen?

In derselben Kategorie: Spec Driven Development, Remote Desktop Commander, Apify MCP Server

Alternativen

Server derselben Kategorie von anderen Entwicklern, sortiert nach Sternen.

So liest du eine Karte:★ GitHub-SterneiDrei Säulen: Bewertungen · Checks · NutzungiAktualisiert = neueste Version in der Registry veröffentlichti

Spec Driven Development

von formulahendry

MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.

Läuft auf deinem Computer★ 440MITAktualisiert vor 14 Monaten
Installieren

Remote Desktop Commander

von desktop-commander

Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.

Läuft in der Cloud★ 211Aktualisiert gestern
Installieren

Extract data from any website with thousands of scrapers, crawlers, and automations on Apify Store ⚡

Läuft in der CloudAktualisiert heute
Installieren

README vom Entwickler

README öffnen

Unverändert aus dem Repo des Entwicklers übernommen. PopNx MCP hat den Inhalt weder geprüft noch empfiehlt es ihn. HTML, Bilder und Skripte wurden entfernt. Links führen von dieser Website weg.

@satohub/kit

0.1.1 preview.

Sato Kit wraps the tools agents already use (viem, signers, x402) with a prepare -> execute contract: an action prepares an unsigned intent, a policy pre-flight explains any refusal, the transaction is simulated, and execute({ intent_id }) hands it to your signer and appends a hash-chained sato.receipt/v1 line.

What it is not: not a wallet, not a custodian, not an agent framework, and not a guarantee. It never holds funds and ships no keys.

  • Fork by default. A policy's network defaults to fork; mainnet needs an explicit opt-in.
  • Pre-flight vs enforcement. The kit's policy check runs before an intent is returned and says which rule refused and why. It does not enforce anything once a key is in play. Enforcement lives in the signer (e.g. a CDP policy compiled from the same file).
  • `scan.payto_changed`. The scan block of policy.json records payto_changed (caution | refuse | off), but it is enforced only by hosts that implement it. The offline guard in satohub-core (scanRecipient) does not enforce it today: a changed x402 payTo needs the payee's earlier value, which the offline check is not given.
  • Swaps are venue-neutral. Any venue is accepted. Sato Swap is the labelled default and its fee is disclosed on every response, with a no-Sato-fee quote alongside; venue: "direct" skips Sato entirely.

Contracts (sato.action/v1, sato.policy/v1, sato.receipt/v1) live in src/spec (see VENDORED.md).

Install

npm install @satohub/kit viem

npx -y @satohub/kit@0.1 --help

Node 20 or later. viem is a peer; every framework SDK below is an optional peer, installed only if you use its subpath.

Honest limits

  • Pre-flight, not enforcement. evaluatePreflight runs before an intent is returned and names each refused rule with its limit and the observed value. Once a key is in play the kit enforces nothing: enforcement is the signer's (a CDP, Privy or Turnkey policy compiled from the same policy.json, OWS's policy engine, or a Safe's owners). viemLocalSigner enforces only its mainnet refusal.
  • x402 execution scope. x402.prepare reads what an x402 resource asks to be paid and returns a priced, policy-checked intent. execute does not send x402 payments: it sends EVM transactions, EIP-712 typed data (Safe proposals) and Solana transactions only. Pay through your x402 client.
  • AgentKit's own analytics call. AgentKit's @CreateAction decorator posts an invocation event to cca-lite.coinbase.com on every invoke. Actions consumed through fromAgentKitProvider still make that call; the kit neither blocks nor adds to it.
  • Unknown prices refuse. When a USD value cannot be read, a max_usd_* rule refuses with unknown_price rather than guessing.
  • Simulation is not a promise. A passing simulation says what the chain answered at that block.

Action reference

Generated from the registered descriptors by node scripts/gen-actions-doc.mjs (after npm run build); test/readme-actions.test.ts fails when this table drifts from the registry. "custody" is the descriptor's own answer to three sato.custody/v1 questions. toolset says whether the tool is in the default MCP profile or only under --toolsets all.

Registered actions
action idtool namekindeffectscustodychainstoolset
chain.readchain_readreadreadreads key: no; key leaves: no; moves funds: neverethereum, sepolia, base, base-sepolia, arbitrum, arbitrum-sepolia, optimism, optimism-sepolia, polygondefault, all
swap.quoteswap_quotereadquotereads key: no; key leaves: no; moves funds: neverethereum, base, arbitrum, optimism, polygondefault, all
swap.prepareswap_preparepreparequote, sign, broadcastreads key: no; key leaves: no; moves funds: with_approvalethereum, base, arbitrum, optimism, polygondefault, all
x402.preparex402_preparepreparesign, payreads key: no; key leaves: no; moves funds: with_approvalbase, base-sepolia, ethereum, sepolia, polygon, arbitrum, optimism, solana, solana-devnetdefault, all
erc8004.lookuperc8004_lookupreadreadreads key: no; key leaves: no; moves funds: neverethereum, base, arbitrum, optimism, polygonall
tx.simulatetx_simulatereadsimulatereads key: no; key leaves: no; moves funds: neverethereum, sepolia, base, base-sepolia, arbitrum, arbitrum-sepolia, optimism, optimism-sepolia, polygonall
token.approvals.listtoken_approvals_listreadreadreads key: no; key leaves: no; moves funds: neverethereum, sepolia, base, base-sepolia, arbitrum, arbitrum-sepolia, optimism, optimism-sepolia, polygonall
token.approvals.revoketoken_approvals_revokepreparesign, broadcastreads key: no; key leaves: no; moves funds: with_approvalethereum, sepolia, base, base-sepolia, arbitrum, arbitrum-sepolia, optimism, optimism-sepolia, polygonall
erc8004.registererc8004_registerpreparesign, broadcastreads key: no; key leaves: no; moves funds: with_approvalethereum, base, arbitrum, optimism, polygonall
bridge.quotebridge_quotereadquotereads key: no; key leaves: no; moves funds: neverethereum, base, arbitrum, optimism, polygonall
bridge.preparebridge_preparepreparequote, sign, broadcastreads key: no; key leaves: no; moves funds: with_approvalethereum, base, arbitrum, optimism, polygonall
safe.infosafe_inforeadreadreads key: no; key leaves: no; moves funds: neverethereum, sepolia, base, base-sepolia, arbitrum, optimism, polygonall
safe.proposesafe_proposepreparesignreads key: no; key leaves: no; moves funds: with_approvalethereum, sepolia, base, base-sepolia, arbitrum, optimism, polygonall
solana.readsolana_readreadreadreads key: no; key leaves: no; moves funds: neversolana, solana-devnetall
solana.transfersolana_transferpreparesign, broadcastreads key: no; key leaves: no; moves funds: with_approvalsolana, solana-devnetall
solana.swap.quotesolana_swap_quotereadquotereads key: no; key leaves: no; moves funds: neversolanaall
solana.swap.preparesolana_swap_preparepreparequote, sign, broadcastreads key: no; key leaves: no; moves funds: with_approvalsolanaall
Meta tools
tool namekindeffectstoolset
executeexecutesign, broadcastdefault, all
statusmetareaddefault, all
actions_searchmetareaddefault, all
actions_describemetareaddefault, all

Default MCP profile, in order: chain_read, swap_quote, swap_prepare, x402_prepare, execute, status, actions_search, actions_describe.

Actions consumed from an AgentKit provider (fromAgentKitProvider) are not in this table: they are built at runtime from the provider you pass, and appear under toolset all.

Entry points

importwhat it gives you
@satohub/kitcreateKit, coreActions, the tool surface, config loader, everything below re-exported
@satohub/kit/specthe vendored contracts: sato.action/v1, sato.policy/v1, sato.receipt/v1, id rules, descriptor lint
@satohub/kit/policyevaluatePreflight; compilers compileCdpPolicy, compilePrivyPolicy, compileTurnkeyPolicy
@satohub/kit/signersviemLocalSigner, owsSigner, cdpSigner, solanaLocalSigner, humanApprove
@satohub/kit/intentintent store, HMAC intent ids (loadOrCreateIntentSecret, verifyIntentId)
@satohub/kit/receiptsthe hash-chained sato.receipt/v1 log
@satohub/kit/actionsevery core action, descriptor and builder
@satohub/kit/ai-sdksatoKitTools(kit, opts) for the Vercel AI SDK
@satohub/kit/agentkitsatoKitActionProvider(kit, opts) and fromAgentKitProvider(provider, { chain })
@satohub/kit/claude-agent-sdkcreateSatoKitSdkServer(kit, opts) + requireApprovalHook()
@satohub/kit/openai-agentssatoKitOpenAITools(kit, opts)
@satohub/kit/langchainsatoKitLangChainTools(kit, opts)
@satohub/kit/elizasatoKitElizaPlugin(kit, opts) (compatibility adapter, see below)
@satohub/kit/mcpthe local MCP server (stdio)
@satohub/kit/clithe sato-kit CLI as a function
@satohub/kit/sato-osattachToSatoOs, proposeIntent
@satohub/kit/goatfromGoatPlugin(plugin, { chain }) — consume an existing GOAT plugin with the kit's guarantees
Signers
  • viemLocalSigner — a key in this process. Fork/testnet by default; refuses mainnet chain ids unless allowMainnet: true (not recommended). generate: true makes a throwaway in-memory key.
  • owsSigner — a structural adapter over an Open Wallet Standard account; OWS's policy engine enforces. See src/signers/OWS.md.
  • cdpSigner — a structural adapter over a Coinbase CDP server account; CDP enforces its policies. Pass a compiled policy as nativePolicy to carry it with the signer (the adapter does not register it).
  • solanaLocalSigner — local Solana signing for devnet and tests only; refuses any non-devnet payload and a mainnet-beta RPC, with no mainnet switch.
  • humanApprove(signer, approve) — wraps any signer so a person approves each summary before it signs.
Policy compilers

compileCdpPolicy, compilePrivyPolicy and compileTurnkeyPolicy turn one sato.policy/v1 into the provider's native policy document. Each result lists what did not compile (not_compiled) with the reason, so a rule the provider cannot express is never silently dropped.

CLI
sato-kit read <action> --input '<json>'      run a read-only action

sato-kit prepare --input ' ' build an intent; nothing is signed sato-kit execute --intent hand one prepared intent to the signer sato-kit mcp [--toolsets default|all] local MCP server over stdio sato-kit doctor check config, Sato Status and template drift

Config comes from the working directory: policy.json (absent means the default policy, network fork), .sato/ (intents, intent secret, receipts), SATO_RPC_URL_ per chain, and SATO_SIGNER=viem-local-fork (fork network only) for a local signer.

MCP server

npx -y @satohub/kit@0.1 mcp runs a stdio MCP server (registry name ai.satohub/kit). The default profile is the eight tools listed above; --toolsets all adds every other registered action. Tools that sign carry anthropic/requiresUserInteraction in _meta.

Sato Status

status and sato-kit doctor read the nightly per-action results (sato.action-status/v1) published by the templates repo. When that file cannot be read, the answer says so; nothing is filled in.

Recommended .gitignore

The file intent store and the intent HMAC secret live under .sato/ by default (intents/, intent.key, mode 0600). Keep them out of version control:

.sato/

License: MIT. The bundled Onchain Action Descriptor code (dist/spec) is Apache-2.0, copyright 2026 Prime Signal LLC: see LICENSE-ODA and NOTICE.

sato-kit doctor: template drift

In a repo made by create-sato-agent (one with sato.create.json), doctor also sends sato.create.json and sato.lock.json to https://satohub.ai/api/create/drift (3 s timeout) and prints the changes it returns: a newer template version that passed its checks, a custody change in a stored Sato Check profile for a pinned package, or a pinned package version that fails the templat

Nur der Anfang wird gezeigt; den Rest findest du im Repo

PopNx fragen