Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
作者による説明(英語の原文)
A guarded wallet for AI agents on Robinhood Chain: a spending policy runs before every signature.
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
使っているAIアプリを選んで、設定をコピーしてください。
MONEO_AGENT, MONEO_ASSET, MONEO_POLICY, MONEO_KEY_PATH必要なもの
どのアプリを使っていますか?
上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。
Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます
{
"mcpServers": {
"moneo": {
"command": "npx",
"args": [
"-y",
"@moneolabs/mcp"
],
"env": {
"MONEO_AGENT": "your-value",
"MONEO_ASSET": "your-value",
"MONEO_POLICY": "your-value",
"MONEO_KEY_PATH": "your-value"
}
}
}
}ターミナルでこれを実行します
claude mcp add moneo --env MONEO_AGENT=your-value --env MONEO_ASSET=your-value --env MONEO_POLICY=your-value --env MONEO_KEY_PATH=your-value -- npx -y @moneolabs/mcp動かす前に、空欄の値を入力してください。
プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"moneo": {
"command": "npx",
"args": [
"-y",
"@moneolabs/mcp"
],
"env": {
"MONEO_AGENT": "your-value",
"MONEO_ASSET": "your-value",
"MONEO_POLICY": "your-value",
"MONEO_KEY_PATH": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"moneo": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@moneolabs/mcp"
],
"env": {
"MONEO_AGENT": "your-value",
"MONEO_ASSET": "your-value",
"MONEO_POLICY": "your-value",
"MONEO_KEY_PATH": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
これはパソコンで動くサーバーですが、ChatGPTがつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。
選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。
MONEO_AGENT envMONEO_ASSET envMONEO_POLICY envMONEO_KEY_PATH envこの設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月7日にチェック
レジストリ名は、リポジトリを所有するGitHubアカウント moneolabs で確認済みです
このリポジトリはまだGitHubから読み取っていません
このリポジトリはまだGitHubから読み取っていません
これはパソコンで動くため、インターネット上のエンドポイントはありません
パソコンで動き、代わりにローカルの設定を使います
パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
レジストリには必須のキーは載っていません。ただし、最初に使うときにサインインを求めるサーバーもあります。
あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。
GitHubリポジトリの最終更新は–、最新バージョン(0.4.0)がレジストリに届いたのは3 か月前です。
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにNode.jsも必要です。
同じカテゴリには:Spec Driven Development, Remote Desktop Commander, Draugr
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Security scanning for AI agents: SAST, SCA, secrets, IaC, DAST, ranked by real risk.
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
Moneo
Autonomous finance for AI agents.
A wallet whose keys the model never sees, a spending policy that runs before anything is signed, and execution for markets that never close.
moneowallet.com · Quickstart · Packages · How it fits together · Status · Contributing
An agent that can only read is cheap to get wrong. An agent that can move money is not. Moneo is the layer in between: it gives an agent its own account, its own limits, and a record of every attempt, so a mistake costs a refusal instead of a balance.
Built for Robinhood Chain, where tokenized equities and USDG settle around the clock. An agent that can trade at 3am is only useful if it cannot also lose the account at 3am, which is what the guard is for.
npm install @moneolabs/wallet @moneolabs/guard @moneolabs/trading
Or skip the code entirely and hand your agent host a wallet of its own — a real key, a cautious policy, and live pools on Robinhood Chain over MCP:
npx @moneolabs/mcp
import { createGuard } from "@moneolabs/guard";
import { createWallet, localSigner, memoryRail, toolkit } from "@moneolabs/wallet";
// What this agent may do with money. Data, not code, and versioned. const guard = createGuard({ perTransaction: { max: "$25" }, rolling24h: { max: "$100" }, counterparties: "allowlist-only", allow: ["x402:*", "vendor:acme"], escalate: { above: "$50" }, });
// One account per agent. The signer holds the key, the wallet holds a handle. const wallet = await createWallet({ agent: "research-agent-01", signer: localSigner(), rail: memoryRail(), guard, funding: "$500", });
await wallet.pay({ to: "x402:api.pricefeed.dev/quote", amount: "$0.04" });
// Hand the tools to your agent framework of choice. const tools = toolkit(wallet, { guard });
Two runnable examples live in examples/:
node --experimental-strip-types examples/quickstart.ts
node --experimental-strip-types examples/guarded-trading.ts
| Package | What it does |
|---|---|
| @moneolabs/wallet | An account per agent. Pluggable custody and rails, an agent toolkit for MCP or function calling. |
| @moneolabs/guard | Caps, rolling budgets, velocity limits, allowlists, and human escalation, evaluated before signing. |
| @moneolabs/trading | Multi-venue quotes, slippage bounds, market, limit, TWAP and bracket orders, positions and P&L. |
| @moneolabs/mcp | MCP server over all of it: npx @moneolabs/mcp hands any agent host the guarded wallet. |
| @moneolabs/core | Exact money arithmetic, assets, durations, clocks, price sources. Shared by the rest. |
Each package works on its own. The guard is useful with no wallet at all: it will happily sit in front of a payment function you already wrote.
agent
│ pay / quote / trade ▼ wallet ──────► guard ──────► decision: allow | hold | block │ │ │ └─► ledger (every attempt, verdict and reason, blocks included) │ ├─► signer (holds the key; the agent never sees it) └─► rail (chain, processor, internal ledger)
Three properties fall out of that shape, and they are the point of the project:
A refusal is free. Policy runs between intent and signature, so a blocked payment is never broadcast and never costs a fee. check() tells you what would happen without doing it.
Money in flight is money you do not have. An allowed decision reserves budget immediately and settles or releases later. A payment that fails at the rail hands its budget back rather than leaving it stuck.
Every verdict is attributable. Decisions record which agent asked, what for, and which version of which policy answered. Policy versions are content-addressed, so two policies that differ only in key order or in how an amount was written get the same id.
Amounts are never floats. Every amount is an integer count of minor units in a bigint. A budget that drifts by a fraction of a cent per check is a budget that eventually lets something through. parseMoney("$0.001") throws rather than silently rounding away precision you meant.
Time is injected. Rolling windows, velocity limits, and TWAP schedules all read a Clock. Pass manualClock() and a thirty minute order takes a millisecond to test. The test suite covers a twenty five hour budget rollover without waiting for one.
Refusals are values. The agent toolkit returns a blocked payment as a normal result with a reason and a hint, not as an exception. A model that gets a stack trace retries. A model that gets "this limit is set by the wallet owner, ask them to raise it" stops and says so.
Externals are interfaces. Signer, Rail, Venue, PriceSource, Approver, and DecisionLedger are all interfaces with working reference implementations. The target is Robinhood Chain, but nothing in the packages hardcodes it: a network is a string you pass and a rail is an object you supply.
This repository is honest about its edges.
Fully implemented and useful today. The guard is complete: caps, rolling budgets, velocity, allowlists and denylists, asset and action rules, escalation, reservation and settlement, policy versioning, replay against history. There is no hosted service behind it and none is needed. The money arithmetic, the position book, and the order types are equally real.
Implemented behind an interface, with a local reference adapter. Custody ships as localSigner, a genuine Ed25519 signer whose key never leaves the process, plus remoteSigner for enclave or MPC services. Value movement ships as memoryRail, a real double-entry ledger that happens to be in memory. Execution ships as simulatedVenue, deterministic and driven by a price table you supply.
Not included. There is no hosted Moneo API, no chain client, no card issuing, and no bundled price feed. Those are the adapters you write or that ship separately.
Which also means there is no API key and no account to create. These are libraries, not a client for a service: policy is evaluated in your process, and the signer and rail are objects you pass in. The things with credentials are whatever you connect them to.
npm install
npm test # 120 tests, no network, no waiting on real clocks npm run typecheck npm run build npm run check # format, types, tests, build
Requires Node 20 or newer.
MIT. See LICENSE.
Moneo is developer infrastructure, not a broker, bank, or investment adviser. You are responsible for the policies your agents run under and for the rails you connect.