Aureon MCP
OfficialProvides a financial intelligence layer for onchain AI agents on Robinhood Chain, enabling registration and monitoring of Financial Compass Objectives, portfolio syncing, health and timeline inspection, non-custodial vault deposit/withdraw preparation, restore plan execution, and market shock rehearsal.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Aureon MCPcreate a Financial Compass objective to keep 60% ETH and 40% USDC"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Aureon MCP
The Financial Intelligence Layer for Onchain AI Agents
Official Model Context Protocol server for the AUREON Financial Compass.
Exposes the full @buildaureon/sdk surface as tools for Cursor, Claude Desktop, and any MCP host on the Robinhood Chain.
# Hosted (no local process)
https://mcp.aureonlabs.network/mcp
# Or local stdio
npx -y @buildaureon/mcpHow to connect · Quickstart · Architecture · Authentication · Tool Surface · Agent Workflows · Docs
Table of Contents
Related MCP server: RailX MCP
What is AUREON MCP?
AUREON is a policy and execution layer for capital on Robinhood Chain. Agents register continuous financial rules (Financial Compass Objectives), monitor health, and restore allocations with clear settlement receipts.
@buildaureon/mcp is the agent adapter. It maps every public @buildaureon/sdk client method to a named tool (aureon_ping, aureon_create_objective, aureon_restore_objective, …). You can reach that same 66-tool surface in two ways:
Transport | When to use it | How |
Hosted HTTP | Fastest path. No Node process on your machine. | Point the host at |
Local stdio | You want your own issued API key in the host env. |
|
The npm package is the stdio server. The official hosted process is Streamable HTTP at /mcp (see hostedMCP/ in this monorepo). Both call https://api.aureonlabs.network. Neither holds a wallet private key. Neither signs or broadcasts.
You can | Through |
Authenticate with an issued developer API key |
|
Optionally complete a wallet Bearer handshake |
|
Sync and manage the Capital Book |
|
Create and query Financial Compass objectives |
|
Read health, timeline, vault, executions |
|
Prepare non-custodial vault deposit / withdraw steps |
|
Fetch and execute restore plans |
|
Rehearse market shocks |
|
Manage developer API keys |
|
66 tools: one per public AureonClient method. Full schemas: docs/tools.md.
For scripts without MCP, use @buildaureon/sdk. The operator app at app.aureonlabs.network is the mainnet console and stays wallet-Bearer only. SDK and MCP default to mainnet.
How to connect
Hosted (recommended first use)
Paste this into Cursor .cursor/mcp.json. A user key is not required to connect.
{
"mcpServers": {
"aureon": {
"url": "https://mcp.aureonlabs.network/mcp"
}
}
}Open without a key: aureon_ping and aureon_validate_receipt. aureon_list_market_presets needs a key.
Wallet tools need your issued Developers key on the same URL:
{
"mcpServers": {
"aureon": {
"url": "https://mcp.aureonlabs.network/mcp",
"headers": {
"X-Aureon-Api-Key": "<issued-developer-api-key>"
}
}
}
}Templates: examples/cursor.hosted.mcp.json, examples/cursor.hosted.user.mcp.json.
Confirm the host is up: https://mcp.aureonlabs.network/healthz.
Restart Cursor. Ask: “Ping AUREON with aureon_ping.” For aureon_me and the rest of your book, add the header or use stdio.
Local stdio (your key)
{
"mcpServers": {
"aureon": {
"command": "npx",
"args": ["-y", "@buildaureon/mcp"],
"env": {
"AUREON_API_KEY": "<issued-developer-api-key>"
}
}
}
}Issue the key at app.aureonlabs.network → Developers. Template: examples/cursor.mcp.json.
Why AUREON MCP?
Traditional AI trading scripts execute isolated market orders without context, forgetting target allocations as soon as a prompt ends. AUREON MCP provides a persistent financial compass for your AI agents:
Continuous Rules vs. One-off Swaps: Instead of telling an agent to "buy 0.5 WETH," you register a Financial Compass Objective like "Maintain 20% WETH weight with 3% tolerance." The watchdog automatically monitors drift and plans restores when needed.
Non-Custodial Architecture: Your private keys stay safely in your local wallet host. The MCP server generates unsigned transaction payloads that you review and sign.
Two transports, one tool surface: Hosted HTTP at
https://mcp.aureonlabs.network/mcp, or local stdio vianpx -y @buildaureon/mcp. This build is the same 66 tools on both. The public host lists 66 after this build is deployed. No local database to run.Clear Settlement Receipts: Clearly distinguishes between on-chain smart vault settlements (
vault) and ledger-local staged receipts (staged).
Requirements & Installation
Requirements
Node.js: 20 or higher (ESM compatible)
Developer API Key: Issued at app.aureonlabs.network → Developers. That app is the mainnet console. SDK and MCP default to mainnet.
Network Access: Default official API
https://api.aureonlabs.networkon mainnet. OptionalAUREON_NETWORK=testnetstays on testnet on the same host.
Installation
# Using pnpm
pnpm add @buildaureon/mcp
# Using npm
npm install @buildaureon/mcp
# Or run instantly via npx without installing
npx -y @buildaureon/mcpYou do not need to clone the AUREON monorepo: only the package and an issued key for the network you will call.
Architecture
flowchart LR
Host[Cursor / Claude / other MCP host]
Host -->|Streamable HTTP| Hosted["https://mcp.aureonlabs.network/mcp"]
Host -->|stdio| Local["npx @buildaureon/mcp"]
Hosted --> SDK["@buildaureon/sdk"]
Local --> SDK
SDK -->|default| Official[api.aureonlabs.network / mainnet]
SDK -->|AUREON_NETWORK=testnet| Test[api.aureonlabs.network / testnet]
Official --> VaultMN[Smart Vault mainnet]
Test --> VaultTN[Smart Vault testnet]Surface & Ownership Breakdown
Surface | Auth | Role |
Operator utility | Wallet sign-in (Bearer) | Human operators managing vaults and approving manual restores |
| Issued API key (+ optional Bearer) | Automated scripts, bots, serverless routines, and products |
| Same as SDK via host | Local agent adapter you spawn with your issued key |
Hosted MCP | URL-only for | Same 66 tools in this build. The public host lists 66 after deploy: |
Layer Responsibilities
Concern | Owner | Description |
HTTP, retries, types, validation, errors |
| Core underlying SDK client managing network communications |
Tool names, zod schemas, agent formatting |
| MCP server mapping SDK methods to AI-friendly tools |
stdio / Streamable HTTP / JSON-RPC |
| Official MCP protocol. Stdio is the npm package. Streamable HTTP is the official hosted process. |
Trust boundary: The API monitors objectives and generates restore plans; private keys stay strictly on the host machine. MCP never signs chain transactions.
Deep dive: docs/architecture.md.
Quickstart
Fastest path: skip the key for now and use the hosted URL in How to connect. The steps below are for local stdio with your own issued key.
1. Create an issued API key
Issue the key on the same API this MCP process will call:
Open https://app.aureonlabs.network → Developers.
Create API Key → copy your key once.
That key identifies your wallet for control-plane tools. No Bearer token required. Issue the key on the official API this process will call.
2. Configure Cursor IDE (local stdio)
If you already added the hosted URL, you do not need this block. For your own key, copy examples/cursor.mcp.json into .cursor/mcp.json:
{
"mcpServers": {
"aureon": {
"command": "npx",
"args": ["-y", "@buildaureon/mcp"],
"env": {
"AUREON_API_KEY": "<issued-developer-api-key>"
}
}
}
}Restart Cursor. Open the AI chat panel and ask: “Ping AUREON and show my wallet with aureon_me.”
3. Configure Claude Desktop
Merge examples/claude-desktop.json into Claude Desktop's configuration file:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"aureon": {
"command": "npx",
"args": ["-y", "@buildaureon/mcp"],
"env": {
"AUREON_API_KEY": "<issued-developer-api-key>"
}
}
}
}Restart Claude Desktop and test the connection.
4. From a local clone (maintainers)
pnpm install
pnpm --filter @buildaureon/mcp build
pnpm --filter @buildaureon/mcp startPoint the host command / args at the built dist/index.js. See docs/setup.md.
Authentication
Recommended: Issued API key
Variable | Required | Role |
| Yes (recommended) | Issued developer key for product access and wallet identity |
| No | Omit for official API / mainnet. Set |
| No | Optional override of |
| No | Optional wallet Bearer (wins if both key and Bearer are sent) |
Private Key Boundary: Private keys are only needed outside MCP when signing and broadcasting deposit or withdrawal transactions. Prepare tools return unsigned transaction steps; the MCP server never signs.
Optional: Wallet Bearer session
Use aureon_get_auth_nonce → host wallet signs challenge → aureon_verify_wallet. Prefer issued keys for always-on agents.
Preview / Dev Mode only
aureon_dev_login works only when the API backend has AUREON_ALLOW_DEV_LOGIN=1 (it does not function on production).
Deep dive: docs/auth.md.
Tool Surface
AUREON MCP exposes 66 tools covering 100% of the AureonClient SDK surface:
Category | Count | Tools Included | Primary Purpose |
Health | 1 |
| Check API connectivity & backend watchdog state |
Auth | 5 |
| Manage wallet sessions, challenges, and identity |
Read | 12 |
| Inspect portfolio allocations, health scores, timelines, vault state, and the joined audit trail |
Objectives | 4 |
| Create, modify, pause, and resume Financial Compass Objectives |
Portfolio | 3 |
| Synchronize and manage live Capital Book asset marks |
Execution | 2 |
| Trigger policy rebalancing and execute objective restore plans |
Restoration | 2 |
| Unsigned sleeve and reserve steps, then store a receipt the wallet already broadcast. Neither call signs or broadcasts. |
Hire policy | 2 |
| Read a financial objective and return allow, refuse, or authorization required |
Market | 2 |
| Rehearse market shocks (e.g. price shifts) against active policy |
Vault | 2 |
| Generate unsigned steps for non-custodial smart vault deposits/withdrawals |
Developer | 4 |
| Create, pause, and revoke developer API access keys |
Full argument schemas: docs/tools.md · Playbooks: docs/agent-guide.md.
Locked fields
targetSymbolandautomationModeare set at create time and cannot be modified viaaureon_update_objective: recreate the objective instead.Default
automationModeis"auto". Use"manual"only when a human must Approve changes inside the utility web app.hireLimitEthandhireApprovalRequiredare set on create.aureon_check_policyreads them. The check does not sign or send.
Hire policy
aureon_check_policy takes agentId, taskId, objectiveId, and an action of type hire in ETH. The result is allow, refuse, or authorization_required. aureon_get_policy_check reads that decision by actionId. The caller uses an issued Developers key for the wallet that owns the objective. A hire equal to the cap is inside the limit. A hire above the cap is refused. Inside the cap, with approval required, the user decides.
Unsigned restoration
aureon_propose_restoration takes a sleeve id (weightBound: "ceiling", profitTakeRatio) and a reserve id (weightBound: "floor"). Both objectives are manual. The sleeve step sells the profit-take slice above the cap. The reserve step is added only when the floor is still short. transactionHash and sentBy stay null.
Agent Workflows
Agents perform best when following the Read → Decide → Act execution pattern:
flowchart TD
subgraph Read Phase
R1[1. aureon_ping] --> R2[2. aureon_me]
R2 --> R3[3. aureon_sync_portfolio]
R3 --> R4[4. aureon_get_health]
end
subgraph Decide Phase
R4 --> D1{Policy Breached?}
end
subgraph Act Phase
D1 -- Yes --> A1[aureon_get_restore_plan]
A1 --> A2[aureon_restore_objective]
A2 --> A3[aureon_list_timeline]
D1 -- No --> A4[Maintain current positions]
end1. Control-Plane Routine (API Key Only)
aureon_ping→aureon_me(Verify connection and wallet identity)aureon_sync_portfolio→aureon_get_vault_status(Fetch marks and check vault readiness)If the vault is empty:
aureon_restore_objectivereturns 409. Callaureon_prepare_vault_deposit, return unsigned steps, and wait for the user or host wallet to broadcast. Agents do not fund the vault.aureon_create_objective(auto) (Register continuous financial objective)aureon_refresh_watchdog/aureon_get_health(Check health score and drift)On violation after the vault is funded →
aureon_get_restore_plan→aureon_restore_objective(maintain: sell overweight → buy underweight inside the vault)Prove with
aureon_get_execution_settlement/aureon_validate_receipt, thenaureon_list_timeline
2. Vault Deposit Path (API Key + External Signer)
aureon_prepare_vault_deposit→ returns unsigned stepsHost wallet signs and broadcasts transaction on Robinhood Chain
aureon_sync_portfolio/aureon_get_vault(Re-sync marks to reflect new deposit)
More playbooks: docs/agent-guide.md.
Sample Agent Prompts
Copy and paste these example prompts into Cursor or Claude Desktop:
Portfolio Audit
"Ping AUREON, verify my wallet address with aureon_me, sync my portfolio, and give me a summary of total AUM and active objective health."
Setting a Compass Objective
"Create an automatic Financial Compass Objective named 'Maintain 20% WETH' targeting symbol WETH with weight 0.20 and tolerance 0.03."
Monitoring & Drift Restoration
"Refresh the watchdog and inspect my AUREON health. If any objective is in breach, show me the restore plan and run aureon_restore_objective."
Deposit Preparation
"Prepare an unsigned vault deposit for 0.1 ETH. Return the exact step payload so I can review and sign it in my wallet."
Security Model
Official hosted vs your own process: Use
https://mcp.aureonlabs.network/mcpfor the official Streamable HTTP host. Local stdio is a child process of Cursor or Claude — do not publish your stdio server as an open internet socket. Do not put a wallet private key in either transport.API Key Protection: Treat
AUREON_API_KEYlike a password. Pause, revoke, or rotate keys in the Developer dashboard if compromised.Environment Hygiene: Never commit keys to version control. Never put wallet private keys into MCP environment variables.
Prompt Safety: Review agent prompts before enabling write tools in untrusted or multi-user chat channels.
Deep dive details: docs/security.md.
Development
To build and test @buildaureon/mcp locally:
pnpm install
pnpm --filter @buildaureon/mcp build
pnpm --filter @buildaureon/mcp test
pnpm --filter @buildaureon/mcp typecheckScript Reference
Script | Purpose | Description |
|
| Bundles TypeScript source into distribution ESM output |
|
| Runs server directly from source for local development |
|
| Runs compiled distribution binary |
|
| Runs unit, smoke, and integration test suites |
|
| Validates TypeScript types across source files |
Documentation Registry
Document | Description & Contents |
Hosted URL first, then Cursor / Claude stdio, npx, source build, troubleshooting | |
Issued API key vs. Wallet Bearer vs. private key boundaries | |
Full 66-tool reference with arguments, schemas, and caveats | |
End-to-end agent decision playbooks, turn templates, and anti-patterns | |
Module boundaries, file maps, and end-to-end request data flows | |
Credential management, threat modeling, and operational safety | |
| |
Cursor config for URL-only hosted MCP | |
Same URL plus | |
Core TypeScript SDK documentation, types, and error definitions |
FAQ
Do I need a private key in Cursor or Claude env?
No. You only need an issued AUREON_API_KEY. Private keys stay in your host wallet when signing prepare steps.
Is there only stdio?
No. Official hosted MCP is https://mcp.aureonlabs.network/mcp (Streamable HTTP). This build is 66 tools. The public host lists 66 after this build is deployed. Connect with the URL alone for aureon_ping and aureon_validate_receipt. Add X-Aureon-Api-Key for your wallet tools. Local stdio is npx -y @buildaureon/mcp with your issued AUREON_API_KEY.
Does MCP talk to a local backend server?
No. Both transports call the official API https://api.aureonlabs.network on mainnet by default. Set AUREON_NETWORK=testnet on a stdio process to stay on testnet on that same host.
Why did my restore receipt say staged?staged is a ledger-local receipt, not an on-chain vault settlement. Always describe settlement receipts accurately in agent responses.
Can agents use Manual automation mode?
Automatic is the default for a keeper restore. A sleeve and a reserve for aureon_propose_restoration are manual, so the proposal stays unsigned.
What happens if an objective breaches its drift tolerance?
The watchdog marks health as breached. Agents call aureon_get_restore_plan to inspect the rebalancing steps, then aureon_restore_objective to execute the restore.
How does MCP handle network errors or disconnects?
The underlying @buildaureon/sdk handles HTTP retries and reports structured error objects with stable error codes back to the MCP host.
Community
Website: https://www.aureonlabs.network
Hosted MCP: https://mcp.aureonlabs.network/mcp
Hosted health: https://mcp.aureonlabs.network/healthz
X (Twitter): https://x.com/buildaureon
App Utility: https://app.aureonlabs.network
License
MIT (see LICENSE).
Available Tools
66 toolsaureon_apply_financial_intentC
Register user/agent intent as an Automatic objective and return AI → objective → portfolio flow
| Name | Required | Description | Default |
|---|---|---|---|
| kind | Yes | Objective kind | |
| name | No | Objective display name override | |
| brief | Yes | What the user wants their money to do — agent-extracted wording | |
| priority | No | Evaluation priority | |
| tolerance | Yes | Allowed drift band (0–1) | |
| targetSymbol | No | Asset symbol for balanced_portfolio (required for that kind) | |
| targetWeight | Yes | Target portfolio weight (0–1) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states that an objective is registered and a flow is returned, but it omits any information about authentication requirements, side effects, whether the operation is destructive or reversible, rate limits, or error behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no wasted words. It states the action and the return flow efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a seven-parameter mutation tool with no annotations and no output schema, the description is too thin. It does not explain the return format to compensate for the missing output schema, nor does it clarify prerequisites or how this tool relates to similar siblings like aureon_create_objective.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so every parameter is already documented in the input schema. The description adds no additional parameter semantics beyond what the schema provides, which matches the baseline of 3 when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Register') and resource ('user/agent intent as an Automatic objective'), and it states that the tool returns an 'AI → objective → portfolio flow'. It is clear what the tool does, though it does not explicitly differentiate itself from sibling tools like aureon_create_objective.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage ('Register user/agent intent') but provides no guidance on when to use this tool versus alternatives such as aureon_create_objective or aureon_update_objective. There are no exclusions, prerequisites, or conditions mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_apply_market_eventC
Apply a controlled market event to portfolio marks; optionally auto-restore
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | Event label | |
| symbol | Yes | Asset symbol to shock | |
| autoRestore | No | Opt in to run restore if objectives breach. Omit or false = drift only. Automatic still 409s if the vault cannot execute. | |
| description | No | Event description | |
| priceChangeRatio | Yes | Fractional price change (e.g. -0.15 = -15%) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden, yet it only supplies 'controlled' and 'optionally auto-restore'. It omits whether permissions are required, whether the shock is reversible, and what side effects occur on portfolio marks. The richest behavioral detail (409 on non-executable vault) lives in the schema, not the description.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with the mutation intent stated first and the optional behavior trailing. Efficient, though borderline terse for a mutation tool in a complex domain.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a no-annotation mutation tool with no output schema in a portfolio-risk domain, the definition is thin: it omits auth/authorization needs, reversibility, and side effects. The schema compensates on parameter detail but not on operational context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so every parameter is already documented in the schema (including the autoRestore 409 caveat). The description adds no syntax, format, or constraint information beyond that, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specific verb+resource+target: 'Apply a controlled market event to portfolio marks'. An agent can tell it mutates portfolio marks. It does not, however, differentiate itself from near siblings like aureon_list_market_presets or aureon_apply_financial_intent.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no when-to-use, when-not-to-use, prerequisites, or named alternatives. The 'optionally auto-restore' phrase hints at a behavior toggle but provides no selection guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_check_policyA
Check one proposed agent hire against the wallet's financial objective. Returns allow, refuse, or authorization_required. Does not send the hire and does not sign.
| Name | Required | Description | Default |
|---|---|---|---|
| action | Yes | Proposed hire | |
| taskId | Yes | Task id for this hire | |
| agentId | Yes | Calling agent id | |
| objectiveId | Yes | AUREON objective id owned by this wallet |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does disclose the key behavioral traits: it is non-mutating ('does not send the hire') and non-signing, and it enumerates the return values (allow, refuse, authorization_required). It omits auth requirements and any idempotency/rate-limit context, so it is strong but not complete.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences, each earning its place: the purpose, the return values, and the side-effect boundary. The core purpose is front-loaded with no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, but the description compensates by naming the three return values, and the side-effect boundary substitutes for missing annotations. The main gap is that it does not explain what an 'authorization_required' result implies or what the caller should do next.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, including the nested action object (type must be 'hire', asset, amount, agent), so the schema does the heavy lifting. The description adds no syntax, format, or constraint detail beyond what the schema already provides, making the baseline 3 appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb (check) and resource (one proposed agent hire) against the wallet's financial objective, and names the three possible outcomes. This is enough to tell it apart from generic read siblings, but it never addresses the adjacent aureon_get_policy_check sibling, which an agent could easily confuse it with.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: 'Does not send the hire and does not sign' signals a dry-run pre-check, so an agent can infer this precedes an actual hire. However, it never states when to prefer this over aureon_get_policy_check or how it relates to aureon_run_execution, leaving the routing decision to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_clear_portfolioB
Clear all capital-book positions for the authenticated wallet
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It does disclose the scope of destruction ('all capital-book positions') and implies an auth requirement ('authenticated wallet'), which is real behavioral information. It says nothing about irreversibility, whether positions are deleted versus zeroed, or downstream side effects on objectives/executions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler, which is well-sized for the operation. It is slightly thin for the risk profile of the action, but nothing is wasted or buried.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive, no-parameter, no-output-schema mutation with zero annotations, the description leaves critical questions unanswered: is it reversible, what happens to objectives/executions that depend on the cleared positions, and what a successful clear returns. The agent cannot safely predict the outcome.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so there is nothing for the description to disambiguate; the baseline for a parameterless tool is 4. The description correctly implies no filtering or selection options exist.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a clear verb (clear) and resource (capital-book positions for the authenticated wallet), so the intent is unambiguous. However, it does not distinguish itself from siblings like aureon_set_portfolio, aureon_sync_portfolio, or aureon_get_portfolio, which operate on the same resource.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance, no prerequisites, and no mention of the nearest alternatives (aureon_set_portfolio or aureon_sync_portfolio) that could plausibly be confused with this one. The agent must infer usage entirely.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_confirm_execution_settlementA
Manual backfill: verify a vault Rebalanced transaction on chain and attach a settlement record to an execution. Use when the listener missed the event. Staged executions cannot be confirmed this way.
| Name | Required | Description | Default |
|---|---|---|---|
| executionId | Yes | Execution receipt id | |
| transactionHash | Yes | 0x vault Rebalanced transaction hash |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. It does disclose that this is a manual backfill that verifies on chain and mutates state by attaching a settlement record, which is useful. But it says nothing about idempotency (what happens if the execution is already settled), required permissions, or reversibility of the attached record — meaningful gaps for a write operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences with zero filler; the primary purpose and the 'Manual backfill' qualifier are front-loaded ahead of the usage condition and the exclusion. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter tool with no output schema and no annotations, the description covers purpose, trigger, and one hard exclusion, which is close to sufficient. What it omits is failure/duplicate behavior on the settlement attach and any indication of what the tool returns, but those are modest gaps at this complexity level.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and both parameter descriptions already say 'Execution receipt id' and '0x vault Rebalanced transaction hash'. The description's mention of a 'vault Rebalanced transaction on chain' merely restates the transactionHash schema text, so it adds no syntax, format, or sourcing detail beyond structured fields. Baseline 3 is correct.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb chain (verify an on-chain transaction and attach a settlement record) against a specific resource (execution settlement). The 'Manual backfill' framing immediately separates it from the read-side siblings aureon_get_execution_settlement and aureon_list_settlements, so an agent can route correctly without opening any schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives an explicit trigger ('Use when the listener missed the event') and an explicit exclusion ('Staged executions cannot be confirmed this way'), which is the when/when-not pair an agent needs. No alternative sibling is named, but the manual-vs-listener framing makes the alternative path self-evident.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_confirm_objective_registryA
Confirms an on-chain ObjectiveRegistry registration after the host wallet broadcast the prepare tx. Pass the transaction hash. The API verifies the receipt on chain and stores the registry link.
| Name | Required | Description | Default |
|---|---|---|---|
| objectiveId | Yes | Objective id that was registered | |
| transactionHash | Yes | 0x transaction hash from the wallet broadcast |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It usefully discloses the backend effect (verifies the receipt on chain, stores the registry link), which tells the agent this is a state-mutating confirmation. However, it omits auth requirements, idempotency (safe to call twice?), and behavior when the receipt is not found or is still pending.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences with the precondition front-loaded and zero padding. 'Pass the transaction hash' is mildly redundant with the schema, but nothing else is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a write/confirmation tool with no annotations and no output schema, the description covers the workflow and the server-side effect but leaves gaps on authorization, retry/idempotency, and failure handling. Adequate to invoke correctly, not complete for an agent reasoning about consequences.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so both parameters are already documented in the schema. The description's only parameter-related content is 'Pass the transaction hash,' which restates the schema and adds no format or sourcing detail beyond it. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (confirms) and resource (on-chain ObjectiveRegistry registration), and situates it in a workflow by tying it to the prepare tx the host wallet broadcast. An agent can separate it from the prepare/get siblings, though the description never names them explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives clear usage context: call this after the host wallet has broadcast the prepare transaction. The precondition is explicit, but there is no when-not guidance (e.g. what to do if no transaction was broadcast, or how this differs from registry_status/get_objective_registry).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_confirm_reportA
Store a wallet signature for a prepared report. Verified only when the signature recovers to the session wallet. Does not broadcast.
| Name | Required | Description | Default |
|---|---|---|---|
| message | Yes | Exact message returned by prepare | |
| reportId | Yes | Report id from prepare | |
| signature | Yes | Wallet signature of that message |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does reasonably well: it discloses the verification rule ('verified only when the signature recovers to the session wallet') and an important negative side effect ('Does not broadcast'), which tells an agent this is not an on-chain action. It omits auth/prerequisite requirements and what occurs on a failed recovery, so it stops short of full transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences, each carrying distinct information: the action, the verification condition, and the absence of broadcast. The action is front-loaded and there is no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema and no annotations, so the description should cover behavior and result. It covers the verification rule and non-broadcast nature but says nothing about what is returned, idempotency, or what happens when the signature fails to recover, leaving gaps for a confirmation-style mutation tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and all three parameters are documented there (message, reportId, signature), so the schema already does the work. The description adds no syntax, format or coupling details beyond that, which is the expected baseline of 3 when the schema is complete.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb (store) and resource (a wallet signature for a prepared report), making the operation distinct from siblings like aureon_prepare_report, aureon_get_report and aureon_list_reports. It does not name those siblings explicitly, so the differentiation is inferable from the phrase 'prepared report' rather than stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'for a prepared report' implies this is the follow-up step to aureon_prepare_report, and the schema's 'Exact message returned by prepare' reinforces the sequencing. However, there is no explicit statement of when to call this, no named alternative, and no exclusion of the other confirm_* tools (restoration, objective registry, execution settlement).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_confirm_restorationB
Store a vault rebalance the session wallet already broadcast. Checks the receipt. Does not sign or broadcast.
| Name | Required | Description | Default |
|---|---|---|---|
| objectiveId | Yes | Objective id the rebalance belongs to | |
| transactionHash | Yes | 32-byte transaction hash from the wallet broadcast |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. It usefully discloses that the tool checks the receipt and does not sign or broadcast, which prevents an agent from mistaking it for an execution tool. It still omits auth/session requirements, idempotency, and the precise side effect of 'store' in this context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences, front-loaded with the core action and followed by constraints. It is efficient and avoids repetition, though the first sentence is grammatically awkward and slightly harder to parse than necessary.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter confirmation/store tool with no annotations and no output schema, the description gives important behavioral limits and the receipt-checking action. It still leaves the return behavior, permissions, and idempotency unclear, which would help an agent invoke and interpret the result more reliably.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so objectiveId and transactionHash are already documented in the schema. The description adds no parameter-specific syntax, format, or constraint beyond what the schema provides, which meets the baseline when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific action on a specific resource: store a vault rebalance that the session wallet already broadcast, plus receipt checking. It distinguishes itself from execute/propose siblings by saying it does not sign or broadcast. The only weakness is that it says 'vault rebalance' rather than 'restoration,' which slightly blurs alignment with the tool name and sibling confirm/restore tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'session wallet already broadcast' implies this is used after an external wallet broadcast, and 'Does not sign or broadcast' rules out execution use. However, it does not explicitly name alternatives such as aureon_propose_restoration or explain when-not to use this versus other confirmation tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_create_api_keyB
Create an SDK API key (secret returned once — store immediately)
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Key display name |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden, and it does disclose the single most important trait: the secret is returned only once and must be stored immediately. However, it says nothing about authentication/permission requirements, whether key creation can be undone, or rate limits on key issuance.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence with the action front-loaded and the critical caveat in a tight parenthetical. No filler, nothing to trim.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter mutation with no output schema, the description covers the essential gotcha (one-time secret) and the schema covers the parameter, so an agent can invoke it correctly. Minor gaps remain around auth requirements and what the response contains besides the secret.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the single `name` parameter, so the schema already documents its meaning. The description adds no syntax, format, or naming-convention detail beyond what the schema provides, matching the baseline of 3 when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ("Create an SDK API key") that an agent can distinguish from sibling key-management tools like aureon_list_api_keys, aureon_revoke_api_key, and aureon_toggle_api_key. It does not explicitly name or contrast those siblings, so it stops short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no prerequisites, and no mention of alternatives for provisioning credentials. The creation intent is implied by the verb but nothing routes the agent between this and the other api_key tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_create_objectiveA
Create a Financial Compass Objective. targetSymbol and automationMode are locked after create — recreate to change them. Defaults to automationMode auto.
| Name | Required | Description | Default |
|---|---|---|---|
| kind | Yes | Objective kind | |
| name | Yes | Objective display name | |
| reason | No | Optional note stored on the decision record | |
| priority | No | Evaluation priority | |
| tolerance | Yes | Allowed drift band (0–1) | |
| weightBound | No | ceiling misses only above the weight, floor only below, target on both sides | |
| hireLimitEth | No | Max ETH for one agent hire against this objective | |
| maxRiskScore | No | Max risk score ceiling | |
| targetSymbol | No | Asset symbol to track (locked after create) | |
| targetWeight | Yes | Target portfolio weight (0–1) | |
| reinvestRatio | No | Reinvest ratio for reward objectives | |
| automationMode | No | auto = keeper vault restore; manual = operator Approve (locked after create) | |
| profitTakeRatio | No | Fraction of the notional above the sleeve cap to sell. Not a full return to target. | |
| hireApprovalRequired | No | When true, a hire inside the cap needs user approval |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. It usefully discloses the irreversibility of two fields and the default automationMode=auto, which is genuine mutation context. However, it says nothing about required permissions/wallet auth, what the create returns (no output schema exists), or side effects such as keeper vault behavior mentioned in the schema description.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences, front-loaded with the core action and immediately followed by the highest-risk constraint (locked fields) and the default. No filler or redundant phrasing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 14-parameter creation tool with no annotations and no output schema, the description covers the immutability trap and default but omits what the caller receives back (objective id), auth requirements, and any validation behavior. The rich schema compensates for parameter detail, leaving the description adequate but incomplete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all 14 parameters, including the 'locked after create' notes on targetSymbol and automationMode. The description's field guidance largely repeats that structured data, so baseline 3 applies rather than a higher score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: 'Create a Financial Compass Objective.' An agent immediately knows this produces a new objective entity. It does not explicitly contrast with the sibling aureon_update_objective or aureon_restore_objective, but the resource is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied rather than stated – the note that targetSymbol and automationMode are locked and require recreation hints at the create-vs-update boundary, but the description never names aureon_update_objective as the alternative for modifying existing objectives or states prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_dev_loginA
Local preview login without wallet signature (requires AUREON_ALLOW_DEV_LOGIN=1 on API — not production)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does disclose meaningful behavior: it bypasses wallet signature auth and only functions when the API-side flag AUREON_ALLOW_DEV_LOGIN=1 is set. It does not say what a successful call returns (e.g. session token) or what happens if the flag is unset, but the auth/environment constraints are well covered.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with the core action first and the environment/prerequisite caveats in a parenthetical. Every clause earns its place; only the em-dash aside slightly interrupts flow.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter dev-only endpoint with no output schema and no annotations, the description supplies the essential context: what it does, the server-side prerequisite, and the production exclusion. The only gap is the return/credential behavior on success.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so there is no parameter surface for the description to document and the baseline of 4 applies. There is no misleading parameter content.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('login') and immediately qualifies the mechanism ('without wallet signature'), which implicitly distinguishes it from the wallet-based auth siblings like aureon_verify_wallet. It stops short of naming a sibling explicitly, so it is clear but not maximally differentiated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives a clear use context ('Local preview') plus an explicit exclusion ('not production') and the operational prerequisite (AUREON_ALLOW_DEV_LOGIN=1). This tells the agent when to reach for it versus the production auth path, though it does not spell out 'use X instead' alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_get_allocation_vs_targetB
Objective vs actual portfolio — current weight vs policy target per objective, plus green-book/off-plan paradox flag
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries the full burden. It discloses the return content (per-objective current weight vs target, plus a flag), which is useful given there is no output schema, but it says nothing about authorization requirements, scoping, or what the 'green-book/off-plan paradox flag' actually signals.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single compact sentence, front-loading the core comparison before the secondary flag. Efficient, though the unexplained domain jargon ('green-book/off-plan paradox') costs a little clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter read tool with no output schema, the description adequately sketches the return shape (per-objective weight vs target plus a flag). It would be stronger if it decoded the paradox flag, but nothing essential to invoking the tool is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so there is nothing for the description to clarify; the baseline for a no-parameter tool is 4. No parameter confusion is possible here.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Names a specific resource (per-objective allocation vs policy target) and the comparison it performs, which reads clearly as distinct from the raw holdings returned by aureon_get_portfolio. However, it never names an alternative tool, so differentiation from siblings like aureon_check_policy or aureon_get_overview must be inferred.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description states what the tool returns but gives no guidance on when to call it versus aureon_get_portfolio, aureon_check_policy, or aureon_get_objective_portfolio_flow. No prerequisites, no exclusions, no context for selecting it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_get_audit_trailB
Export the financial audit trail for one objective: registry, receipts, settlements, timeline. Missing proof is labeled. Never invent on-chain claims.
| Name | Required | Description | Default |
|---|---|---|---|
| objectiveId | Yes | Objective id to export |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden but does add genuine behavioral content: 'Missing proof is labeled' and 'Never invent on-chain claims' tell the agent how to treat incomplete or unverifiable data. It says nothing about authentication requirements, whether the operation is read-only, export size, or pagination.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short fragments, front-loaded with the action verb, with no padding. The telegraphic style is efficient though slightly clipped, and the integrity constraint lands before the enumerations.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter read/export tool with no output schema, the description usefully enumerates what the export contains and how missing proof is handled. It still omits the shape/format of the returned export and any limits, which an agent would need to consume the result.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
One parameter with 100% schema description coverage, so the schema already defines objectiveId completely. The phrase 'for one objective' reinforces the single-objective scope but adds no format or validation detail beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Export the financial audit trail') scoped to 'one objective', and enumerates the four content sections (registry, receipts, settlements, timeline). It does not distinguish itself from the sibling tools that expose those same artifacts individually (aureon_get_objective_registry, aureon_list_settlements, aureon_list_timeline), leaving the agent to infer that this is a composite export.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use statement, no prerequisites, and no mention of alternatives such as calling the registry/settlement/timeline tools separately. Usage is only weakly implied by 'for one objective'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_get_auth_nonceA
Request a wallet auth nonce/message for EIP-191 signing (optional — issued API keys usually skip this)
| Name | Required | Description | Default |
|---|---|---|---|
| address | Yes | Wallet address (0x…) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full disclosure burden. It conveys that the call issues a nonce/message intended for EIP-191 signing and that it is optional in API-key flows, but says nothing about nonce lifetime/expiry, single-use semantics, or that the call is a safe read-like generation — meaningful behavioral gaps for an auth primitive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single tight sentence with the core action front-loaded and the optionality caveat appended. No filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter, no-output-schema auth helper, the description plus schema is nearly sufficient: it names the purpose and the EIP-191 signing context and flags the optional case. The omission of nonce lifecycle/expiry behavior is the only notable gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There is a single required parameter (address) with 100% schema description coverage, so the schema already defines it and the baseline is 3. The description adds no format or constraint detail beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Request) and resource (wallet auth nonce/message) and names the downstream protocol (EIP-191 signing), which lets an agent distinguish it from generic auth siblings like aureon_dev_login and aureon_verify_wallet. It stops short of explicitly contrasting itself with those siblings, so it is clear but not fully differentiated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The parenthetical 'optional — issued API keys usually skip this' gives a concrete when-not-to-use condition, which is useful routing guidance. It does not name the alternative flow (e.g., dev_login or create_api_key) to use instead, so it falls short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_get_decisionC
One decision record by id
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Decision id |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden, and it discloses nothing: no auth requirements, no read-only confirmation beyond the word 'get', no not-found or error behavior, no indication of return shape. Only the safest inference (read-only lookup) is available.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is very short and front-loaded, but the terseness reads as under-specification rather than efficiency, since a complete sentence could have carried the same idea with more useful context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no annotations and no output schema, the description is the sole source of context, and it omits what a decision record contains, whether the id comes from aureon_list_decisions, and what happens on a miss. For a single-param lookup the burden is modest, but the gaps are real.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There is one parameter with 100% schema description coverage, so the schema already documents 'id'. The description adds no format, source, or provenance detail about where a decision id comes from, leaving it at the baseline for a fully covered schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The fragment names a specific verb (get) and resource (decision record) scoped to a single id, so the operation is identifiable. It does not distinguish itself from the sibling aureon_list_decisions, so it stops short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance, no mention of aureon_list_decisions as the alternative for enumerating decisions, and no stated prerequisites. Usage must be inferred entirely from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_get_drift_restore_flowC
Read drift → detection → restore flow for active objectives
| Name | Required | Description | Default |
|---|---|---|---|
| objectiveId | No | Filter to one objective (omit for all active) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. 'Read' implies a non-mutating operation, but there is no disclosure of auth requirements, whether the flow is computed live or cached, or what stages are returned. Given zero annotation coverage, this is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded line with no filler; the arrow notation compresses the process stages efficiently. Slightly terse to the point of opacity, but no waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With one optional parameter and no output schema, the description should explain what the 'flow' returns and in what form. As written, an agent knows neither the response shape nor how this differs from the demo/plan siblings, making it incomplete for a read tool of this apparent complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter objectiveId has 100% schema description coverage ('Filter to one objective (omit for all active)'), so the schema already does the work. The description adds nothing about the parameter, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The verb 'Read' plus the arrow sequence 'drift → detection → restore flow' conveys a multi-stage read operation on objectives, which is more specific than a bare noun. However, 'flow' is ambiguous (workflow definition? live state? staged results?) and it is not differentiated from close siblings like aureon_run_drift_restore_demo or aureon_get_restore_plan, so an agent cannot confidently pick it.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'for active objectives' hints at scope and the schema notes omitting objectiveId covers all active, but there is no explicit when-to-use, when-not-to-use, or named alternative. The agent is left to infer whether this is a preview/read versus the demo or restore-plan tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_get_execution_settlementA
Returns the chain-verified settlement record for a vault execution when the listener has observed an on-chain Rebalanced event. Staged executions never have settlement records — do not claim on-chain proof without this.
| Name | Required | Description | Default |
|---|---|---|---|
| executionId | Yes | Execution receipt id |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does disclose a valuable behavioral trait: results only exist after an on-chain Rebalanced event, and staged executions yield none. It does not cover failure semantics (error vs. empty), permissions, or response shape, keeping it below a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences, front-loaded with the core purpose and followed by the key caveat. No filler or redundancy; a compact, well-ordered description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter getter with no output schema, the description covers purpose, data-existence conditions, and the crucial warning against claiming on-chain proof. Minor gaps around return format and error behavior keep it from a 5.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents the single executionId parameter. The description adds no syntax, format, or source guidance for the id, so it earns only the baseline 3 for high-coverage schemas.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a specific verb and resource: 'Returns the chain-verified settlement record for a vault execution.' This distinguishes it from the list/confirm siblings (aureon_list_settlements, aureon_confirm_execution_settlement) at the noun level, though it does not name those siblings explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It states the condition under which the record exists (listener observed an on-chain Rebalanced event) and a clear exclusion (staged executions never have settlement records). It lacks explicit routing to alternatives such as list_settlements or confirm_execution_settlement, so it stops short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_get_full_aureon_loop_flowB
Read full AUREON loop for active objectives with a latest execution receipt
| Name | Required | Description | Default |
|---|---|---|---|
| brief | No | User brief for teaching shape | |
| objectiveId | No | Filter to one objective (omit for all active with receipts) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries the full behavioral burden. "Read" implies a safe, non-mutating operation and the filtering constraint (only active objectives with a receipt) is disclosed, but there is no statement of return shape, pagination, or whether it triggers any state change beyond the read.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no wasted words. It is dense with jargon rather than explanatory, but it is appropriately sized for the tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no annotations, the description is the only source of truth, and it does not explain what a "full AUREON loop" result contains or how the receipt is represented. It scopes the call adequately but leaves the agent guessing about the response.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents both parameters, setting the baseline at 3. The description reinforces objectiveId's filtering intent ("active objectives") but adds nothing for the "brief" parameter beyond the schema's own "User brief for teaching shape".
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Read) and resource (full AUREON loop) plus scope (active objectives with a latest execution receipt). It is distinguishable from the sibling aureon_run_full_aureon_loop_demo by the read vs run framing, but the description never names a sibling or defines what the "loop" actually comprises, which is domain jargon.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance, no prerequisites, and no routing against the many alternatives in this family (e.g. aureon_run_full_aureon_loop_demo, aureon_get_objective_portfolio_flow, the other get_*_flow tools). The agent must infer applicability entirely from the scope clause.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_get_healthC
Health state for objectives — drift, breach status, policy compliance
| Name | Required | Description | Default |
|---|---|---|---|
| objectiveId | No | Filter by objective ID (omit for all) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. It implies a read of current state through 'health state' and enumerates what is assessed, but says nothing about permissions/auth, whether results are live versus point-in-time, pagination, or response shape.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is only one short phrase, so there is no waste, but it is an under-specified fragment rather than a structured, front-loaded sentence establishing the action and outcome.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no annotations and no output schema, the description must stand alone, and it does convey the three health facets returned. It still omits when to prefer it over aureon_get_health_history and other objective-inspection tools, leaving a real gap for a read tool in a dense sibling set.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single objectiveId parameter is fully documented in the schema ('Filter by objective ID (omit for all)'), so the schema does the heavy lifting. The description adds no filtering or format detail beyond that, which is the expected baseline at 100% coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the resource (health state) and narrows its scope to objectives, then enumerates the facets returned (drift, breach status, policy compliance). However it is a noun phrase with no verb, and it never distinguishes itself from the adjacent aureon_get_health_history, so the purpose is understandable but not sharply differentiated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to call this versus aureon_get_health_history (historical) or aureon_get_objective (details), nor any prerequisite or context. Usage must be inferred entirely from the tool name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_get_health_historyC
Stored health score samples for this wallet
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden, yet it discloses almost nothing: no time range, ordering, sample cadence, count limits, or whether data is paginated. The single word 'stored' is the only behavioral signal, implying persisted rather than live computation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The fragment is waste-free and front-loaded, but it is undersized for a tool with no annotations and no output schema. Brevity here reads as under-specification rather than crispness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no annotations, the description should describe what the samples look like (fields, granularity, range). Instead it stops at a label, leaving the agent unable to predict the response shape.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so per the rubric the baseline is 4. There is nothing for the description to disambiguate beyond what the empty schema already communicates.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The phrase names the resource (health score samples) and implies persistence ('stored'), so an agent can guess it retrieves historical health data. But it is a noun fragment with no verb and gives no differentiation from the sibling aureon_get_health, so an agent cannot tell which of the two to call.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no mention of when to prefer aureon_get_health (current) over this history tool, and no prerequisites. The agent is left to infer usage entirely from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_get_objectiveC
Get a single objective by ID
| Name | Required | Description | Default |
|---|---|---|---|
| objectiveId | Yes | The objective ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries the full burden and discloses almost nothing: no auth/permission requirements, no behavior for an unknown or unauthorized ID, and no return-shape hint. For a single-item read tool this is low-risk, but the disclosure gap is real.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One short, front-loaded sentence with no filler. It is efficient, though its brevity is part of why other dimensions are thin.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no annotations and no output schema, nothing tells the agent what the returned objective looks like or whether the lookup can fail on authorization. Given the rich sibling set, a sentence on returns or failure modes would be expected.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the single objectiveId parameter, so the baseline of 3 applies. The description's 'by ID' restates the schema rather than adding format, source, or validity details beyond it.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (get) and resource (a single objective) plus the key selector (by ID), which implicitly contrasts with the sibling aureon_list_objectives. It does not explicitly name that sibling, so differentiation is left to inference.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use context, no mention of the alternative list tool, and no prerequisites. The phrase 'by ID' hints that an ID must be known, but the agent is not told where to get one or when this is preferable to listing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_get_objective_portfolio_flowB
Read AI → objective → portfolio flow for active objectives
| Name | Required | Description | Default |
|---|---|---|---|
| objectiveId | No | Filter to one objective (omit for all active) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. 'Read' implies a safe non-mutating operation, but nothing is said about auth requirements, what the flow contains, or return shape — thin for a tool with zero annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler. It is efficient, though its terseness borders on under-specification rather than pure conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-param read tool with full schema coverage this is minimally sufficient, but with no output schema and no annotations an agent must infer what a 'portfolio flow' actually returns.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the single objectiveId parameter is already documented in the schema with the same 'omit for all active' semantics. The description adds no meaning beyond it, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Read) and resource (AI → objective → portfolio flow), scoped to active objectives. It is distinguishable from siblings like get_portfolio or list_objectives by naming the 'flow' artifact, though the arrow notation is jargon-heavy and not fully self-explanatory.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'for active objectives' implies tge usage context and the schema note explains omitting objectiveId returns all active. But there is no explicit guidance on when to choose this over aureon_get_portfolio or the other get_*_flow siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_get_objective_registryC
Returns the on-chain registry record for an objective when registered.
| Name | Required | Description | Default |
|---|---|---|---|
| objectiveId | Yes | Objective id |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. It hints that a record exists only 'when registered' but says nothing about auth requirements, error behavior for unregistered objectives, or whether the read is side-effect free.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler; it is efficient, though extremely terse for a tool with a meaningful conditional (registered vs not).
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no annotations and no output schema, the description should explain what the registry record represents, how an objective becomes registered (via prepare/confirm_objective_registry), and the failure mode when it is not registered. None of that is present.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% (objectiveId is documented as 'Objective id'), so the baseline is 3. The description adds no format, ID-source, or lookup-semantics detail beyond what the schema already states.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Returns) and resource (the on-chain registry record for an objective), which distinguishes it from the generic aureon_get_objective and the registry mutation siblings. It does not, however, explicitly name or contrast itself with aureon_get_objective or aureon_registry_status, so an agent must infer the difference.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The clause 'when registered' implies a precondition, but there is no statement of when to call this versus aureon_get_objective, aureon_registry_status, or the prepare/confirm registry pair, and no indication of what happens if the objective is not registered.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_get_overviewB
Dashboard overview — total AUM, objective count, aggregate health
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. It implies a read-only aggregate but says nothing about authentication requirements, whether values are live or cached, or what scope (user/workspace) the aggregates cover. For a dashboard endpoint with zero annotation coverage this is thin.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short clause with the resource front-loaded and no filler. It is a fragment rather than a sentence, but nothing is wasted and nothing is buried.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no annotations, the description is the only source of information about what the tool returns, and it does list the three aggregate values. However, it omits auth expectations and does not clarify how the aggregates relate to the more granular siblings, leaving real gaps for a zero-parameter dashboard tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so there is nothing to document beyond what the schema already shows; the baseline for a parameterless tool is 4. The description adds the semantic meaning of the returned fields, which is a small bonus.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific resource (dashboard overview) and enumerates the three aggregates returned — total AUM, objective count, aggregate health. This distinguishes it reasonably from siblings like aureon_get_health or aureon_list_objectives, though it does not use a clear verb (e.g. 'get') or explicitly contrast with those siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to call this tool versus alternatives such as aureon_get_health, aureon_get_portfolio, or aureon_list_objectives, and no mention of prerequisites or auth state. Usage must be inferred from the name and the aggregate nature of the return fields.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_get_policy_checkA
Read one stored hire decision by actionId. Does not send the hire and does not sign.
| Name | Required | Description | Default |
|---|---|---|---|
| actionId | Yes | Stored policy action id |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, and it does disclose the two most important traits: no hire is sent and nothing is signed, i.e. a side-effect-free read. It says nothing about whether this actionId requires prior authorization, whether the stored decision can expire or be superseded, or any rate/access limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, front-loaded with the purpose and followed immediately by the safety constraint. No filler and nothing repeated from structured fields.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter read with no output schema, the description covers purpose and the no-side-effect guarantee, but says nothing about the shape of the returned decision, and the name/description mismatch ('policy_check' vs 'hire decision') leaves the object under-specified. Adequate but with clear gaps given the absence of any output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There is one parameter and schema description coverage is 100% ('Stored policy action id'), so the schema already fully documents it. The description only echoes the parameter name, adding no format, source, or lookup guidance beyond the schema, which is the baseline-3 case when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Read') and a scoped resource ('one stored hire decision by actionId'), and the qualifier 'stored' distinguishes it from a live check such as the sibling aureon_check_policy. The only friction is that the resource is called a 'hire decision' while the tool name says 'policy_check', which creates mild ambiguity about what object is actually returned.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The clause 'Does not send the hire and does not sign' implies this is the non-mutating read path versus a sibling that does send/sign, giving implied usage context. However, no alternative tool is named and there is no explicit when-to-use vs when-not-to-use statement, so the routing guidance must be inferred.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_get_portfolioB
Current capital book snapshot — positions, marks, weights
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It implies a read of the current state, but says nothing about auth requirements, freshness/staleness, whether the book is cached, or what marks represent. A single noun phrase is thin disclosure for a tool with zero annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One short, front-loaded line with no filler. It is efficient, though the terseness borders on under-specification rather than optimal density.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no annotations and no output schema, the description must stand in as the only documentation. It names the data returned but not its shape or meaning (e.g., what 'marks' or 'weights' are computed from), leaving a modest gap for an agent deciding how to use the result.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so there is nothing for the description to compensate for; baseline 4 applies. The mention of returned fields (positions, marks, weights) is a small value-add beyond the empty schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific resource ('capital book') and verb-like action ('snapshot') plus the contents returned (positions, marks, weights). 'Current' implicitly distinguishes it from siblings such as aureon_get_portfolio_history and aureon_get_portfolio_watch_flow, though the differentiation is left to inference.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance, no prerequisites, and no mention of alternatives like aureon_get_portfolio_history, aureon_sync_portfolio, or aureon_get_allocation_vs_target. The word 'current' hints that it is the live view, but nothing states that explicitly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_get_portfolio_historyB
Stored daily portfolio totals for this wallet
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden, and it states almost nothing beyond the resource: not whether the call is read-only, how far back the history reaches, how many entries are returned, or in what order. For a zero-parameter historical query these are the details that matter, and they are absent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short clause with no filler and the key qualifier ('daily', 'stored') front-loaded. It is efficient, though arguably terse to the point of under-specification rather than tightly structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no annotations, the description is the only source of contract information, and it covers the resource and granularity but not the time range, result size, or ordering. For a simple zero-parameter read this is marginally adequate, but an agent cannot predict what it will receive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so the schema has nothing to explain and the baseline is 4. The description correctly introduces no parameter semantics because none exist.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific resource and granularity ('daily portfolio totals') scoped to 'this wallet', and the word 'history' plus 'stored' implicitly separates it from the sibling aureon_get_portfolio, which returns the current portfolio. It stops short of explicitly naming that sibling or stating the contrast, so it is clear but not fully differentiated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no mention of alternatives such as aureon_get_portfolio or aureon_get_health_history, and no stated conditions or prerequisites. The agent must infer usage entirely from the name and noun phrase.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_get_portfolio_watch_flowC
Read portfolio watch briefing for Automatic objectives
| Name | Required | Description | Default |
|---|---|---|---|
| host | No | Agent host label | |
| brief | No | User brief for briefing lines | |
| objectiveId | No | Filter to one objective (omit for all Automatic) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. 'Read' weakly implies a non-mutating call, but it says nothing about required auth, side effects, or the shape/scope of what is returned. For an unannotated tool this is a substantial gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single compact sentence with no filler, and the resource and scope are front-loaded. It is efficient, though its brevity comes partly from under-specification rather than disciplined trimming.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no annotations and no output schema, the description does no compensating work: it never explains the 'briefing' concept, what 'brief' and 'host' contribute, or when this flow is the right choice. An agent could invoke it, but not confidently or correctly in context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents host, brief, and objectiveId. The description adds no extra meaning beyond what the schema supplies, which is exactly the baseline-3 case.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Read') and resource ('portfolio watch briefing') and scopes it to 'Automatic objectives'. It is clearer than a bare name, but 'Automatic objectives' is jargon that is not defined, and it does not differentiate from near-neighbors like aureon_get_objective_portfolio_flow or aureon_run_portfolio_watch_demo.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use, when-not-to-use, or alternative is given. The scoping phrase 'for Automatic objectives' hints at applicability but leaves the agent to guess how this differs from the many other portfolio/watch/objective tools in the sibling list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_get_receipt_verification_flowC
Read receipt → verification flow for execution receipts
| Name | Required | Description | Default |
|---|---|---|---|
| executionId | No | Filter to one execution id (omit for five most recent) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. The word 'Read' weakly implies a read-only operation, but it says nothing about what the flow contains, whether it is static documentation or live state, auth requirements, or limits. This is a significant gap for an unannotated tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is a single short sentence, which is well-sized, but the brevity reflects under-specification rather than disciplined conciseness. It is front-loaded only in the trivial sense that it is one phrase.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read tool with no output schema and no annotations, the description should explain what the returned 'flow' actually is (steps, stages, status). It omits this entirely, leaving the agent unable to predict the response shape or confirm it is the right tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the schema fully explains the single executionId parameter ('Filter to one execution id (omit for five most recent)'). The description adds no parameter meaning beyond what the schema provides, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The phrase 'Read receipt → verification flow for execution receipts' names a resource (receipt verification flow) but largely restates the tool name rather than explaining what the tool actually returns or does. It does not distinguish itself from siblings such as aureon_validate_receipt or aureon_run_receipt_verification_demo. Purpose is only vaguely inferable.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no prerequisites, and no mention of alternatives. With sibling tools like aureon_validate_receipt and aureon_run_receipt_verification_demo present, the agent gets no signal about which to pick. No exclusions or context are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_get_reportC
One stored financial report
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Report id |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden and delivers almost nothing: no indication of auth requirements, error behavior for a missing/invalid id, or what "stored" distinguishes (e.g. confirmed vs. prepared reports). The word "stored" is the only behavioral hint, and it is undefined.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is short, but brevity here comes from omission rather than precision — a four-word fragment with no verb. There is no front-loaded statement of action, so it reads as under-specification rather than conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter, no-output-schema tool in a 60+ tool registry, the description should at minimum say it fetches one report by id and point to the list alternative. Neither is present, leaving the agent to guess at return shape and routing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the single `id` parameter, so the baseline is 3. The description adds no format, type, or lookup semantics beyond what the schema already documents.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description is a bare noun phrase, "One stored financial report," that restates the resource in the tool name without a verb or scope statement. It does weakly imply singular retrieval versus the sibling aureon_list_reports, but an agent gets no confirmation of what the tool actually does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance is given, and neither the natural alternative (aureon_list_reports) nor related lifecycle tools (aureon_prepare_report, aureon_confirm_report) are mentioned. The agent must infer usage entirely from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_get_restore_planC
Restore plan for an objective — proposed rebalance steps to return to policy
| Name | Required | Description | Default |
|---|---|---|---|
| objectiveId | Yes | The objective ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are supplied, so the description carries the full behavioral burden. It implies the plan is merely 'proposed' (non-mutating), but never states whether it is computed on demand or cached, whether any state changes, or what freshness/limits apply.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence naming the resource first, then its content. No filler, though the terseness contributes to the gaps noted elsewhere.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema and no annotations mean the description should explain the shape and nature of the returned plan, but it gives only a one-line gloss. For a plan-retrieval tool sitting among several restoration-related siblings, an agent lacks enough to confidently choose it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Single parameter with 100% schema description coverage, so the schema already documents objectiveId. The description adds no field-level meaning beyond what the schema provides, which is the baseline-3 case.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a concrete resource (restore plan for an objective) and clarifies its content as 'proposed rebalance steps to return to policy', so the agent knows what it retrieves. It does not differentiate from near-neighbours like aureon_propose_restoration or aureon_get_drift_restore_flow, which keeps it short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance, no prerequisites, and no mention of alternatives such as aureon_propose_restoration (which presumably creates a plan) or aureon_restore_objective (which applies one). The agent must infer the read-only retrieval role from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_get_vaultB
Vault overview — balances, tokens, deposit history
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries the full behavioral burden; it implies a read-only overview and discloses the content categories returned, which is genuinely useful with no output schema present. However, it says nothing about authentication requirements, permissions, rate limits, or whether the vault must exist, leaving meaningful behavioral gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded line with no filler; the purpose and the returned content are stated immediately without waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter read tool with no output schema, the description usefully names the returned content, but it omits any distinction from aureon_get_vault_status/get_overview and gives no auth or precondition context. It is adequate but leaves clear gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so there is nothing to disambiguate and the baseline is 4. The description adds no parameter detail, but none is needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a specific verb+resource (get vault) and enumerates what the overview contains (balances, tokens, deposit history), so the agent knows what the tool returns. It does not, however, differentiate this tool from close siblings like aureon_get_vault_status or aureon_get_overview, leaving the boundary ambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance and no mention of alternatives, which is a real gap given siblings such as aureon_get_vault_status, aureon_get_overview, and the vault deposit/withdraw tools. The agent must infer the selection condition entirely on its own.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_get_vault_statusC
Compact vault funding status — ready state before restore
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It mentions 'compact' output but says nothing about auth requirements, read-only nature, what field set is returned, or what 'funding status' concretely means, which is insufficient for a zero-annotation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short fragment with the resource front-loaded and no filler. It is appropriately sized for a no-arg tool, though the trailing clause is more cryptic than informative.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no annotations, the description is the only source of information, and it leaves the return shape and meaning of 'funding status' undefined. For a state-introspection tool an agent needs to know what it receives; this is incomplete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so the schema has nothing to document and the baseline is 4. There are no parameter semantics for the description to add or omit.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States the resource ('vault funding status') with a vague qualifier ('compact'), but does not distinguish it from the sibling aureon_get_vault or clarify what 'status' contains. The phrase 'ready state before restore' gestures at intent without committing to a specific verb or output.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'ready state before restore' weakly implies a timing context, but no explicit when-to-use, when-not, or named alternative (e.g. aureon_get_restore_plan or aureon_get_vault) is given. An agent must infer the workflow position.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_list_api_keysB
List SDK API keys for the authenticated wallet
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the disclosure burden. It communicates two useful traits: this is a read/list operation and it is scoped to the authenticated wallet, implying an auth requirement. It says nothing about pagination, ordering, or whether revoked/inactive keys are included in the result.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler, and the resource and scope appear before any qualifying clause. Nothing is wasted for a parameterless listing tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple parameterless list tool with no output schema, the description covers what the tool does and its scope but omits the shape of the return (fields per key, pagination, empty-state behavior). Adequate but leaves the agent guessing about the response.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, and the schema (empty object) is fully consistent with that. Per the rubric, a zero-parameter tool has a baseline of 4; there is no parameter semantics to clarify further.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb (List) and resource (SDK API keys) and scopes it to the authenticated wallet, which cleanly separates it from siblings like aureon_create_api_key, aureon_revoke_api_key, and aureon_toggle_api_key. It does not explicitly name those alternatives, but the verb makes the read-only listing intent unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to call this versus the sibling key-management tools (create/revoke/toggle). The phrase 'for the authenticated wallet' implies a prerequisite (an authenticated wallet session) but no explicit when/when-not conditions are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_list_decisionsC
Decision records for objective set, change, pause, and resume
| Name | Required | Description | Default |
|---|---|---|---|
| objectiveId | No | Limit to one objective |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure, yet it says nothing about read-only safety, result ordering, pagination, or result volume. For a list endpoint that could return an unbounded collection, the omission of ordering/pagination behavior is a real gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is a single short, front-loaded fragment with zero waste, but it is under-specified rather than merely concise — no verb, no object framing, no clause telling the agent how to call it. Brevity here costs information rather than saving it.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter list tool with no output schema and no annotations, the description should at minimum state that it returns a collection and what unfiltered calls return. Neither is present, leaving the agent unable to predict the response shape or scope.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the single objectiveId parameter is documented as 'Limit to one objective', so the schema already carries the semantics. The description adds no filtering syntax or default-scope detail beyond that, which is the expected baseline of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description identifies the resource (decision records) and the triggering action types (set, change, pause, resume), but never states the verb explicitly or that it returns a collection. It also does not distinguish this list tool from the sibling aureon_get_decision, so an agent must infer the list-vs-single semantics from the name alone.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no indication of the default scope when objectiveId is omitted, and no reference to the closely related aureon_get_decision sibling. The agent is left to guess whether this is the right entry point for retrieving decision history.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_list_executionsC
Recent execution receipts — read settlement, verifiedOnChain, settlementRecord, explorerUrl, registryRef.
| Name | Required | Description | Default |
|---|---|---|---|
| objectiveId | No | Filter by objective ID (omit for all) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. It gestures at returned fields (settlement, verifiedOnChain, settlementRecord, explorerUrl, registryRef), which is genuinely useful, but says nothing about read-only semantics, ordering, pagination/limits, or what 'recent' means in practice.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler; the field list is compact. It is efficient, though the em-dash field dump reads more like a return-value sketch than a purpose statement.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no annotations and no output schema, the description should explain the operation's scope and return behavior. Instead it leaves ordering, limits, filtering, and read-only status unstated, which is thin for a listing tool in a crowded sibling namespace.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the single optional objectiveId filter, so the schema already explains its meaning. The description adds no filtering detail beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The phrase 'Recent execution receipts' conveys the resource (execution receipts) but never states the verb explicitly — the agent must infer 'list' from the name. It also fails to distinguish this tool from close siblings like aureon_list_settlements, aureon_get_execution_settlement, and aureon_validate_receipt, which plausibly surface overlapping data.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this versus aureon_list_settlements, aureon_get_execution_settlement, or aureon_validate_receipt, nor any mention of prerequisites or scope. The only hint is the word 'Recent', which is not an explicit condition.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_list_market_presetsC
Available market event simulation presets
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations at all, the description carries the full burden of behavioral disclosure. It implies a read-only enumeration, but never states that the call is side-effect free, whether the preset list is static or account-specific, or whether any auth is required. For a zero-annotation tool this is a real gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Five words with no filler, which is appropriately tight for a trivial list endpoint. However, the brevity crosses into under-specification: it is a label rather than a sentence, so it is concise but not informative.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema, so the description should at minimum hint at what a preset looks like or how the returned identifiers feed into aureon_apply_market_event. Neither is present, and with no annotations the safety and auth profile is also absent. For such a simple tool the bar is low, but the definition still leaves the agent without a usable next step.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes no parameters, so there is nothing for the description to disambiguate; the baseline of 4 for a 0-parameter schema applies. No parameter information is missing because none exists.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The phrase 'Available market event simulation presets' identifies the resource (presets) and its domain (market event simulation), so an agent can guess this enumerates them. But it is a bare noun fragment with no verb and no differentiation from siblings such as aureon_apply_market_event, which consumes exactly these presets. Purpose is inferable rather than stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance and no mention of the obvious companion tool aureon_apply_market_event, which is presumably why an agent would fetch these presets in the first place. The agent is left to infer the workflow entirely from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_list_objectivesB
List all Financial Compass Objectives
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. It does not disclose whether authentication is required, whether the list is paginated or bounded, or what the return shape looks like — all meaningful gaps for a tool with zero structured coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short sentence with no filler and the action front-loaded. It is efficient, though arguably under-specified rather than optimally concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter list tool this is minimally adequate, but with no annotations and no output schema the description leaves the agent without any hint about auth requirements, result size, or return shape. It stops at naming the operation and does not round out the picture.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes no parameters, so there is nothing for the description to disambiguate; the baseline for a zero-parameter tool is 4. Nothing in the description contradicts or mischaracterizes the empty schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('List') and resource ('Financial Compass Objectives'), and the word 'all' implies an unfiltered collection operation. However, it never differentiates itself from the sibling aureon_get_objective or explains what a 'Financial Compass Objective' is, so sibling disambiguation is left to the reader.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance, no prerequisites, and no mention of the alternative aureon_get_objective for retrieving a single objective. The agent must infer usage purely from the name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_list_reportsC
Stored financial reports for this wallet
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden, yet it discloses nothing beyond the implicit read-only nature of 'stored ... reports'. It says nothing about ordering, pagination, filtering, wallet scoping requirements, or whether reports can be empty.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short phrase with zero filler, front-loaded with the resource. It is appropriately sized in form, though the sparseness is an under-specification problem rather than a merit.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a no-parameter list tool with no output schema and no annotations, the description must at minimum convey what a 'report' contains, how results are ordered or bounded, and how it differs from aureon_get_report. None of that is present, so an agent cannot call this confidently alongside its siblings.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so per the baseline there is nothing for the description to disambiguate. The scope phrase 'for this wallet' is the only parameter-like context and the implicit wallet binding is at least hinted at.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description is a bare noun phrase, 'Stored financial reports for this wallet', with no verb indicating the operation (list vs. get vs. prepare). It essentially restates the tool name aureon_list_reports with a scope qualifier, and gives no signal to distinguish it from aureon_get_report, aureon_prepare_report, or aureon_confirm_report.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to call this tool, no prerequisites, and no mention of alternatives. With four sibling report tools plus aureon_list_timeline and aureon_list_decisions, the absence of any routing guidance leaves the agent to guess.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_list_settlementsA
Lists settlement records for the authenticated wallet. May include orphans (observed vault Rebalanced events not yet bound to an execution). Optional objectiveId filter. Read status and executionId before claiming proof.
| Name | Required | Description | Default |
|---|---|---|---|
| objectiveId | No | Filter by objective id |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden and does disclose a genuinely non-obvious trait: results 'May include orphans (observed vault Rebalanced events not yet bound to an execution)'. However it omits read-only confirmation, pagination, and permission requirements, leaving key behavioral context unstated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tight sentences, front-loaded with the core purpose followed by the orphan caveat and the usage tip. No sentence is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Complete for a read-only list tool with full parameter coverage and no output schema: it covers purpose, filter, and an important result caveat. Only pagination/result-shape details are absent, which is minor here.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% on the single objectiveId parameter, so the schema already documents it. The description's 'Optional objectiveId filter' merely reinforces what the schema says without adding syntax or format detail—baseline 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Lists settlement records') with scope ('for the authenticated wallet'). It clearly distinguishes itself from aureon_get_execution_settlement by being the plural list, but never names that sibling explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides an actionable tip ('Read status and executionId before claiming proof') and notes the objectiveId filter is optional, but gives no explicit when-to-use vs when-to-use-an-alternative guidance. Usage is implied rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_list_timelineB
Timeline of events — objective changes, executions, health transitions. Pass before (an event id) and limit to read the next page.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Page size, 1–500 | |
| before | No | Event id cursor. Omit for the newest page. | |
| objectiveId | No | Filter by objective ID (omit for all) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are supplied, so the description carries the full behavioral burden. It does disclose the read-only, paginated nature of the tool and the content categories returned, but says nothing about ordering (e.g., newest-first), authentication requirements, or result shape. It adds some context beyond the name but leaves notable gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, front-loaded with what the timeline contains and then the pagination hint. Efficient, though the second sentence overlaps with what the schema already states about 'before' and 'limit'.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple 3-parameter, no-annotation, no-output-schema read tool, the description covers content and pagination adequately but omits ordering and the shape of an event record. It is viable but leaves the agent inferring return structure.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all three parameters (limit, before, objectiveId) are already documented in the schema. The description's pagination note largely restates the 'before' cursor semantics without adding format or edge-case detail, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a clear verb+resource ('Timeline of events') and enumerates what populates it (objective changes, executions, health transitions), so an agent knows what it returns. It does not, however, distinguish this from overlapping siblings such as aureon_list_executions, aureon_list_decisions, or aureon_get_audit_trail.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The only usage instruction is pagination mechanics ('Pass before ... and limit to read the next page'), which is implied usage rather than selection guidance. There is no statement of when to prefer this tool over the executions/decisions/audit-trail siblings, and no exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_logoutA
Revoke the current Bearer session and clear the in-process token
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses two concrete effects (session revocation plus clearing the in-process token), which is genuine behavioral detail, but omits whether the call is idempotent, what happens if the token is already invalid, and what errors may surface.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler; the primary action (revoke) leads and the side effect (clear in-process token) follows. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a no-parameter, no-output-schema tool the description covers the core action adequately, but with zero annotations it should say more about post-call state (e.g., subsequent authenticated calls will fail, token no longer usable) to be fully actionable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Zero parameters, so there are no parameter semantics to explain; the baseline of 4 applies. Nothing is misrepresented or omitted at the parameter level.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Revoke) and resource (current Bearer session) plus a secondary effect (clear in-process token). The 'Bearer session' framing distinguishes it from aureon_revoke_api_key, though the description doesn't explicitly name that sibling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Logout usage is implied — an agent can infer it should be called to end a session — but there is no explicit when-to-use statement, no note on prerequisites (must be authenticated), and no pointer to sibling auth tools like aureon_dev_login for re-authenticating.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_meA
Return the wallet bound to the issued API key or current Bearer session
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, but it does disclose a real behavioral trait: identity is derived from either an issued API key or the current Bearer session. It does not say what happens when neither is present (error vs. empty), whether the call is read-only, or whether it has side effects on the session.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler; the identifying condition (API key vs. Bearer session) comes immediately. Nothing could be removed without losing meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
There is no output schema and no annotations, so the description must carry the return contract; 'the wallet' is left ambiguous (address string vs. wallet object vs. portfolio summary). For a zero-parameter identity tool this is close to adequate, but an agent cannot predict the response shape or the unauthenticated case.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so the schema provides nothing to interpret and the baseline is 4. No parameter semantics are needed beyond the auth-context note already given.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Return') and resource ('the wallet bound to the issued API key or current Bearer session'), which is meaningfully more specific than a tautology. It implicitly distinguishes itself from identity-adjacent siblings like aureon_verify_wallet and aureon_get_auth_nonce, but never names or contrasts them explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: an agent can infer this resolves 'who am I' for the current session. There is no explicit when-to-use, no prerequisites, and no guidance on choosing it over aureon_verify_wallet, aureon_get_auth_nonce, or aureon_dev_login.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_pause_objectiveC
Pause continuous evaluation for an objective
| Name | Required | Description | Default |
|---|---|---|---|
| reason | No | Optional note stored on the decision record | |
| objectiveId | Yes | Objective ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. It does not say whether pausing is reversible, what happens to in-flight evaluations, whether the decision is recorded (the 'reason' param hints at a decision record), or what authorization is required for this mutation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with zero waste, though it is terse to the point of under-specification rather than optimally concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with no annotations and no output schema, the description is too thin. It omits reversibility, side effects, and the fact that a decision record is created, leaving the agent without enough context to invoke it confidently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both parameters (objectiveId, reason) are already documented in the schema. The description adds no further parameter meaning; baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (pause) and resource (continuous evaluation for an objective), which clearly separates it from aureon_resume_objective by antonym. It doesn't explicitly name the sibling or clarify what 'continuous evaluation' encompasses, but the core action is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use, when-not-to-use, or prerequisite information. The pairing with aureon_resume_objective is inferable only from the tool name, not stated in the description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_pingA
Health probe — confirms API connectivity
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It conveys the essential trait a non-mutating connectivity check but says nothing about auth requirements, rate limits, or what a failed probe looks like. For a zero-parameter probe the burden is small, so this is adequate but thin.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with zero filler; the purpose is stated before the elaboration. Nothing redundant or padded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description should ideally indicate what a successful probe returns (status payload, version, latency). It only asserts that connectivity is confirmed, leaving the response shape unspecified. Otherwise complete for a trivial probe.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes no parameters, so no parameter semantics are needed; the baseline for a zero-parameter tool is 4. The description correctly implies no input is required.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb-and-resource (health probe / confirms API connectivity), so an agent knows exactly what it validates. It does not differentiate itself from the sibling aureon_get_health, which is a plausible overlap risk.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase health probe implies the usage context (liveness/connectivity check) without spelling out when to prefer it over aureon_get_health, aureon_registry_status, or aureon_get_vault_status. No explicit when-to-use or when-not-to-use guidance is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_prepare_objective_registryA
Prepares wallet-signed calldata to register an objective on ObjectiveRegistry. The host wallet must broadcast the tx, then call confirm via SDK.
| Name | Required | Description | Default |
|---|---|---|---|
| objectiveId | Yes | Objective id to register on-chain |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries the full burden. It usefully discloses the two-phase nature (this tool only prepares signed calldata; the host wallet must broadcast), which is meaningful behavioral context. But it omits auth/permission requirements, idempotency, reuse/expiry of prepared calldata, and failure behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, zero filler, and the core action ('Prepares wallet-signed calldata') is front-loaded before the follow-up step. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no annotations and no output schema, the description should do more: it never describes what the prepared calldata payload contains or how to consume it. It does cover the crucial two-step flow, but leaves gaps for a mutation-oriented prepare tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There is a single parameter with 100% schema description coverage, so the schema already documents 'objectiveId'. The description adds no format, constraint, or validity detail beyond what the schema provides, matching the baseline 3 for high coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Prepares wallet-signed calldata') and resource ('register an objective on ObjectiveRegistry'), so the agent knows this is a prepare step, not the registration itself. It hints at the confirm sibling via 'then call confirm via SDK' but never names aureon_confirm_objective_registry explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It lays out the follow-up workflow (host wallet broadcasts the tx, then confirm via SDK), which is real usage context. However, it gives no explicit when-to-use vs alternatives or prerequisites (e.g. whether the objective must exist, or when to prefer this over other prepare tools).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_prepare_reportA
Build a financial report from stored rows and return the message to sign. Does not broadcast.
| Name | Required | Description | Default |
|---|---|---|---|
| objectiveId | Yes | Objective id |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It usefully discloses a real behavioral trait — no broadcast occurs, so nothing irreversible happens — and that a signing message is returned. But it omits auth/permission requirements and what state (if any) is mutated on the objective.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences with zero waste; the core action is front-loaded and the crucial non-broadcast caveat follows immediately.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description correctly states the return ('the message to sign') and confirms the non-broadcast semantics. For a one-parameter prepare step this is nearly complete, missing only prerequisite/auth context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for the single objectiveId parameter, and its schema description ('Objective id') is minimal. The description adds no syntax, format, or sourcing detail for the id, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Build') and resource ('financial report') and adds the scope 'from stored rows'. Implies the prepare/confirm two-step pattern via 'return the message to sign', though it never names the sibling aureon_confirm_report outright.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Does not broadcast' implies the caller must proceed to sign and confirm, so the workflow role is inferable. However, there is no explicit when-to-use vs aureon_confirm_report/aureon_list_reports guidance, leaving the agent to infer the sequencing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_prepare_vault_depositA
Prepare unsigned vault deposit steps. Returns calldata only — the host must sign/broadcast with a wallet private key. API key alone cannot move funds.
| Name | Required | Description | Default |
|---|---|---|---|
| amount | Yes | Human-readable amount | |
| symbol | Yes | Deposit symbol (ETH or allowlisted ERC-20) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden, and it does well: it discloses that only calldata is returned, that signing/broadcasting is the caller's responsibility, and that an API key alone cannot move funds — a key safety boundary. It leaves out failure modes, validation behavior, and whether any server-side state is created, which keeps it short of a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences, zero filler, with the core action front-loaded and the critical signing caveat immediately after. Every sentence carries distinct information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no annotations, the description usefully covers both what is produced (calldata) and the required follow-up (external signing), which is the essential context for a prepare-type tool. It is only slightly thin on preconditions such as authentication requirements or error conditions.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both parameters (symbol, amount) are already documented in the schema, including the ETH/allowlisted-ERC-20 constraint. The description adds no format or constraint detail beyond that, so the baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource: 'Prepare unsigned vault deposit steps.' Combined with 'Returns calldata only,' an agent immediately knows this builds a deposit transaction rather than executing one. It does not explicitly contrast with the sibling aureon_prepare_vault_withdraw, but the deposit framing makes the distinction reasonably clear.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies its place in a workflow ('the host must sign/broadcast with a wallet private key'), which tells the agent this is a pre-signing step. However, it never states when to use this versus alternatives like aureon_prepare_vault_withdraw, nor any prerequisite conditions beyond the signing note.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_prepare_vault_withdrawA
Prepare unsigned vault withdraw steps. Returns calldata only — host must sign/broadcast. API key alone cannot move funds.
| Name | Required | Description | Default |
|---|---|---|---|
| amount | Yes | Human-readable amount | |
| symbol | No | Withdraw symbol (default WETH; not ETH) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does well: it states the tool produces unsigned calldata only, that the host must sign/broadcast, and that an API key alone cannot move funds. That discloses non-mutating behavior and a security boundary, though it omits required permissions and any chain/network context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tight clauses, front-loaded with the operation and followed by the two critical constraints. Zero filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter prepare tool with no output schema, the description covers the key contract: calldata-only output, host-side signing, no fund movement. It leaves minor gaps on required auth scopes and what to do with the returned calldata, but nothing essential is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents both amount and symbol. The description adds no syntax, formatting, or default details beyond the schema's note that symbol defaults to WETH, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: 'Prepare unsigned vault withdraw steps.' An agent can tell the action apart from its deposit sibling, though the description never names aureon_prepare_vault_deposit or any alternative explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the verb ('prepare... withdraw'), but there is no statement of when to prefer this over alternatives, no prerequisites, and no mention of a confirm/broadcast follow-up step an agent would need to chain after this prepares calldata.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_propose_restorationC
Unsigned restoration from vault balances for the sleeve cap and the stable reserve floor. Returns to, data, and value for each step. Does not sign or broadcast. Both objectives must be manual. A full return to the sleeve cap is not the profit slice.
| Name | Required | Description | Default |
|---|---|---|---|
| sleeveObjectiveId | Yes | risk_ceiling objective id with weightBound ceiling | |
| reserveObjectiveId | Yes | stable_allocation objective id with weightBound floor |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden and does disclose meaningful traits: it is unsigned, does not sign or broadcast, requires both objectives to be 'manual', and returns 'to, data, and value for each step'. It omits auth requirements, whether any state is persisted, and any rate/limit behavior, so it is partial rather than complete.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short and front-loads the core purpose, and most sentences carry information. The closing sentence about the profit slice is confusing enough that it weakens rather than earns its place, pulling this below a clean 4.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no annotations and no output schema, the description must supply the behavioral and safety context itself. It gives a partial return shape and a precondition but omits authorization requirements and the relationship to the confirm step, which is critical for a financial restoration flow.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so both parameters are already documented, making 3 the baseline. The description adds one semantic constraint ('Both objectives must be manual') that is not in the schema, but it does not clarify the weightBound ceiling/floor relationship beyond what the schema states.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The verb+resource ('Unsigned restoration from vault balances') is identifiable, and 'Does not sign or broadcast' implicitly separates it from the confirm_restoration sibling. However, 'sleeve cap' and 'stable reserve floor' are opaque domain jargon that the agent cannot decode, and the tool is never distinguished by name from aureon_get_restore_plan or aureon_confirm_restoration.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is a precondition ('Both objectives must be manual') but no when-to-use, when-not-to-use, or named alternatives among the many restoration siblings (get_restore_plan, confirm_restoration, restore_objective). The final sentence ('A full return to the sleeve cap is not the profit slice') hints at a constraint but is too cryptic to guide selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_refresh_watchdogB
Refresh portfolio marks from live data and re-evaluate objectives
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden and does not meet it. 'Refresh ... from live data' implies an external fetch and a state mutation, but the description never says whether portfolio/objective state is overwritten, whether this is idempotent, whether it is costly or rate-limited, or what permissions it requires.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler, and the two effects (refresh marks, re-evaluate objectives) are stated in a logical order. It is efficient, though arguably too terse for the behavioral weight it must carry.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No annotations, no output schema, and no description of return values or side effects leave the agent unable to predict the result of a call that appears to mutate live portfolio state. For a zero-parameter, presumably state-changing maintenance tool, the description is incomplete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema declares zero parameters, so there is nothing for the description to disambiguate; the baseline of 4 applies. No parameter information is missing.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description pairs a specific verb ('refresh') with concrete resources ('portfolio marks', 'objectives'), so an agent can tell what the call accomplishes. It does not, however, differentiate itself from close siblings such as aureon_sync_portfolio or aureon_apply_market_event, which plausibly touch the same state.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to use this tool versus aureon_sync_portfolio, aureon_run_portfolio_watch_demo, or the objective-listing tools. The agent must guess whether this is a periodic maintenance call or a prerequisite for other operations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_registry_statusA
Returns ObjectiveRegistry deployment status for the active network (contract address when configured).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, and it does disclose one useful behavioral fact: the contract address is only present 'when configured', implying an optional/absent value. It does not state whether authentication is required, whether it errors on an unconfigured network, or what the status field contains.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence with zero filler, front-loading the action and resource before the qualifier about the active network. Nothing needs trimming and nothing essential is buried.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only status tool with no output schema, the description is nearly sufficient, naming the main returned artifact (contract address). It stops short of describing the other status values or clarifying the relationship to the registry-read sibling.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so there is nothing further to document and the baseline is 4. The description correctly avoids inventing parameter discussion.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a specific verb ('Returns'), a specific resource ('ObjectiveRegistry deployment status'), and a scope ('for the active network'), so the operation is unambiguous. However, it never distinguishes itself from the closely named sibling aureon_get_objective_registry, leaving the agent to guess which registry-related read to pick.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use or when-not-to-use guidance, and no mention of alternatives despite siblings like aureon_get_objective_registry, aureon_prepare_objective_registry, and aureon_confirm_objective_registry. The agent must infer the usage context entirely.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_restore_objectiveB
Run restorative execution for an objective outside policy. Not always vault-backed: read settlement and verifiedOnChain. staged is never on-chain. vault without verifiedOnChain is submitted, not proven. Returns ExecutionReceipt.
| Name | Required | Description | Default |
|---|---|---|---|
| objectiveId | Yes | The objective ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It does disclose non-obvious behavioral traits: the operation is not always vault-backed, 'staged is never on-chain', and 'vault without verifiedOnChain is submitted, not proven', plus that it returns an ExecutionReceipt. However it omits permission/auth requirements, reversibility, and what side effects occur on-chain, so it is informative but incomplete.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The definition is short and front-loads the purpose before the settlement semantics. It is somewhat telegraphic and jargon-heavy ('staged', 'submitted, not proven'), which slightly hurts readability, but no sentence is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an execution tool with no annotations and no output schema, the description should explain the return and side effects more fully. It names ExecutionReceipt but does not describe its contents, and it leaves permission and on-chain effect details unstated.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There is a single parameter with 100% schema description coverage, so the schema already documents objectiveId. The description adds no format, ID source, or constraint information beyond what the schema provides, making the baseline 3 appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb+resource ('Run restorative execution for an objective') and adds a meaningful scope qualifier ('outside policy'). It is clear what the tool does, but it does not explicitly distinguish itself from close siblings such as aureon_run_execution, aureon_confirm_restoration, or aureon_propose_restoration.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use or when-not-to-use guidance, and no routing to the sibling restoration tools (propose/confirm/get_restore_plan) that an agent would need to sequence correctly. The 'outside policy' qualifier implies a context but never states the precondition for choosing this tool over aureon_run_execution.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_resume_objectiveB
Resume evaluation for a paused objective
| Name | Required | Description | Default |
|---|---|---|---|
| reason | No | Optional note stored on the decision record | |
| objectiveId | Yes | Objective ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. 'Resume evaluation' implies a state mutation, but the description says nothing about what changes, whether it is reversible, what permissions are needed, or how it interacts with the paired pause tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with zero filler. It is efficient, though the extreme brevity leaves little room to earn additional value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a state-mutating tool with no annotations and no output schema, the description omits what happens on success, whether the resume is reversible, and how it relates to the pause/restore siblings. An agent would need to guess at the surrounding workflow.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both parameters are documented in the schema; baseline is 3. The description adds only context that the objectiveId should reference a paused objective, no syntax or format detail beyond that.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (resume) and resource (objective) plus the precondition state (paused). It is clearly understandable on its own, though it does not differentiate itself from nearby siblings such as aureon_pause_objective, aureon_restore_objective, or aureon_update_objective.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'for a paused objective' implies the trigger condition, so usage is inferable. However, there is no explicit guidance on when to choose this over aureon_restore_objective or aureon_update_objective, and no exclusions or prerequisites are stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_revoke_api_keyC
Revoke (delete) an SDK API key
| Name | Required | Description | Default |
|---|---|---|---|
| keyId | Yes | API key ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. The parenthetical 'delete' usefully signals this is destructive rather than a reversible disable, but it says nothing about irreversibility, required auth/permissions, or what happens to the key afterward.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Six words, front-loaded with the verb and resource, with zero filler. It is optimally scannable, though the extreme brevity is arguably under-specification rather than genuine conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive, unannotated, single-parameter tool with no output schema, the description is too thin. It omits whether revocation is permanent, whether it can be undone, and any warning that the operation removes SDK access.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Single parameter with 100% schema description coverage; the schema already documents keyId as 'API key ID'. The description adds no format or sourcing detail beyond the schema, which is the expected baseline when the schema does the work.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (revoke/delete) and resource (SDK API key), and the parenthetical clarifies the operation's destructive nature. It is clearly distinguishable from aureon_create_api_key and aureon_list_api_keys, though it doesn't explicitly name the nearest sibling, aureon_toggle_api_key.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to revoke versus when to use aureon_toggle_api_key (which presumably disables rather than deletes), and no prerequisites or confirmation context. The agent must infer the use case from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_run_drift_restore_demoA
Run drift → detection → restore demo (seed book, break rule, manual restore)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. It does disclose real side effects by naming the sequence (seeds state, deliberately breaks a rule, then restores it), which tells the agent this mutates data rather than merely observes. However, it says nothing about reversibility, whether it touches shared/production state, auth requirements, or idempotency — all material for a demo that writes data.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single line with zero waste, front-loading the verb and the demo name before the step detail. The arrow notation compresses the sequence efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-param, zero-annotation tool with no output schema, the description covers what the tool does operationally but omits what the agent gets back and any safety/auth framing. It is adequate to trigger the call, but thin for understanding consequences.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so there is no parameter semantics for the description to add. Baseline 4 applies; the parenthetical steps describe internal behavior rather than inputs.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specific verb ('Run') plus the named demo and its three internal steps (seed book, break rule, manual restore) make the action unambiguous. It is implicitly distinguishable from the 'get_*_flow' siblings, but the description never names aureon_get_drift_restore_flow, so the contrast is left to the reader.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied by the word 'demo' — an agent can infer this is a scripted end-to-end demo rather than a production operation. There is no explicit statement of when to prefer this over aureon_get_drift_restore_flow (which presumably describes the same flow without executing it) and no prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_run_executionC
Run restorative execution for an objective outside policy. Read receipt.settlement and receipt.verifiedOnChain — staged = never on-chain; vault + verifiedOnChain = chain-observed; vault without verified = submitted but not yet observed.
| Name | Required | Description | Default |
|---|---|---|---|
| objectiveId | Yes | The objective ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. It does disclose valuable state semantics (staged = never on-chain; vault + verifiedOnChain = chain-observed; vault without verified = submitted but not yet observed), which is genuinely useful given there is no output schema. However, it omits whether this is a mutation, what authorization or policy constraints apply, and any side-effect or idempotency behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the action statement. The second sentence is dense but earns its place by explaining receipt fields that would otherwise be undocumented, though the phrasing is somewhat telegraphic.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations and no output schema, the description partially compensates by explaining receipt state semantics. It remains incomplete on permissions, mutation semantics, and the rest of the return shape, so an agent has enough to call it but not full confidence about effects.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There is a single parameter (objectiveId) with 100% schema description coverage, so the schema already documents it. The description adds no syntax, format, or sourcing detail beyond the schema, making the baseline 3 appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a verb and resource ("Run restorative execution for an objective"), but the qualifiers "restorative" and "outside policy" are ambiguous jargon that leave the actual operation unclear. It does not differentiate itself from close siblings like aureon_restore_objective, aureon_run_drift_restore_demo, or aureon_confirm_restoration, so an agent cannot reliably distinguish its role.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use or when-not-to-use guidance, and no alternative sibling is named. The only context provided concerns interpreting the receipt afterwards, not the conditions that select this tool over the many related restoration/execution siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_run_full_aureon_loop_demoC
Run Content Arc full AUREON loop (intent → plan check → restore → receipt verification)
| Name | Required | Description | Default |
|---|---|---|---|
| brief | No | User wording — default: Keep about 20% in stable assets — grow the book without abandoning the plan. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It does not say whether this executes real state changes, that it is a simulated/demo path (only implied by 'demo' in the name), whether it requires authentication, whether it is idempotent, or what side effects the multi-stage loop produces. For a tool that runs a full intent-to-receipt pipeline, this is a substantial gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single tightly-packed sentence with no filler, and the stage sequence is front-loaded where it is most useful. It is efficient, though the dense jargon slightly reduces readability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no annotations, the description must carry more weight than it does. It gives the stage flow, which is useful orientation, but omits return shape, side effects, and auth expectations for a pipeline-style demo runner. Adequate but with clear gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There is a single optional parameter (brief) and the schema documents it at 100% coverage, so the schema already carries the semantics. The description adds nothing about the brief or its default wording, so it neither compensates nor detracts — baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (Run) and a named resource (full AUREON loop), and the parenthetical enumerates the stages intent → plan check → restore → receipt verification, which gives a concrete mental model. However, 'Content Arc' and 'AUREON loop' are internal jargon, and the description never distinguishes this demo runner from the many sibling runners (run_drift_restore_demo, run_receipt_verification_demo) or from the paired aureon_get_full_aureon_loop_flow reader.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to use this versus alternatives. The sibling aureon_get_full_aureon_loop_flow appears to be the read-only counterpart, but the description gives no cue about which to pick. No prerequisites or conditions are stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_run_portfolio_watch_demoC
Run portfolio watch demo (brief → Automatic objective → while-away event → return briefing)
| Name | Required | Description | Default |
|---|---|---|---|
| host | No | Agent host label for briefing (cursor | claude | mcp) | |
| brief | No | User wording — default: Watch my portfolio while I'm away — keep about 20% in stable assets. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, and it discloses almost nothing behavioral: it does not say whether the demo mutates real portfolio state or is a sandboxed simulation, whether it is idempotent, how long the multi-stage run takes, or what triggers the 'while-away event'. The pipeline outline is structural, not behavioral.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with zero filler, and the parenthetical efficiently encodes the stage sequence. It is tight, though the arrow notation is terse enough that a reader may need the schema to decode 'Automatic objective'.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, so the description ideally would say what the 'return briefing' contains, and no annotations exist to cover the mutation/safety profile. The stage outline is a real aid for a complex multi-step tool, but key unknowns (side effects, return shape, relationship to the get_*_flow sibling) remain unaddressed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for both parameters, so the enum host label and the 'brief' wording default are already fully documented. The description only echoes 'brief' in the pipeline arrow; it adds no format, length, or override semantics beyond the schema, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('Run portfolio watch demo') and the parenthetical sketches the pipeline stages (brief → automatic objective → while-away event → return briefing). However, it never distinguishes itself from the read-side sibling aureon_get_portfolio_watch_flow or the other run_*_demo tools, so the agent must infer the execute-vs-describe split from the name alone.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance, no prerequisites, and no mention of alternatives. The word 'demo' hints this is a scenario walkthrough rather than a production path, but the description never says when an agent should pick it over aureon_get_portfolio_watch_flow or aureon_run_full_aureon_loop_demo.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_run_receipt_verification_demoB
Run receipt → verification demo (restore + validate receipt + settlement lookup)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. It hints that the run involves a 'restore', but never states whether that mutates persistent state, whether it is idempotent or reversible, whether auth is required, or what 'demo' implies about side effects (ephemeral vs real). For a tool that orchestrates a restore plus settlement lookup, these are material omissions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single line with the action front-loaded and the internal steps parenthesized – no wasted words. The arrow notation ('receipt → verification') is slightly cryptic but the parenthetical resolves it.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-param tool with no output schema and no annotations, the description covers what the demo does in three steps, which is the minimum viable. It is incomplete on the two things an agent most needs: side effects/mutation risk and what comes back after running it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so there is nothing for the description to clarify beyond the schema, which is empty at 100% coverage. Baseline 4 applies; no param-specific detail is expected or missing.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific action ('Run ... demo') and unpacks what the demo actually does: restore, validate receipt, and settlement lookup. That enumeration distinguishes it from the bare name and from sibling get_*_flow tools. It stops short of explicitly contrasting itself with aureon_get_receipt_verification_flow or the other run_*_demo runners.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to run this demo versus the sibling aureon_get_receipt_verification_flow or aureon_validate_receipt, nor any note on prerequisites, environment, or whether it should be run against production data. The agent is left to infer usage from the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_set_portfolioB
Replace the wallet capital book with provided positions
| Name | Required | Description | Default |
|---|---|---|---|
| positions | Yes | Portfolio position rows |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full behavioral burden. It usefully discloses that the operation is destructive in nature ("Replace ... capital book"), which signals existing positions are overwritten. However it says nothing about auth requirements, whether the replacement is atomic/persistent, what happens to linked objectives, or the response shape.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence with zero filler; the verb and resource lead immediately. Nothing wasteful is present.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a low-complexity one-parameter mutation tool with no annotations and no output schema, the description covers the core action but omits the behavioral context an agent needs (destructive scope, persistence, error conditions). It is minimally adequate rather than complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and there is a single top-level parameter, so the schema already documents positions and its nested fields. The description adds only "provided positions," which is the baseline. A 3 is appropriate when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a specific verb ("Replace") and resource ("wallet capital book") plus the input ("provided positions"). The word "Replace" implicitly distinguishes it from sibling aureon_clear_portfolio (clears) and aureon_sync_portfolio (syncs), though it never names those alternatives explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to use this tool versus aureon_get_portfolio, aureon_clear_portfolio, or aureon_sync_portfolio, nor any prerequisite or ordering guidance. The agent must infer usage entirely from the name and the sibling list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_sync_portfolioB
Replace the capital book with on-chain balances for the session wallet
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, but the word 'Replace' usefully discloses a destructive overwrite of the whole capital book. It stops short of stating auth requirements, reversibility, or failure behavior for a financial mutation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler; the destructive action and its source are stated immediately.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a destructive financial mutation with no annotations and no output schema, the description is too thin: it omits prerequisites, what data is discarded, and what a successful/unsuccessful sync looks like.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters and schema coverage is effectively 100%, so the baseline of 4 applies. Nothing in the description is needed to disambiguate parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb ('Replace'), a target resource ('the capital book'), and a source ('on-chain balances for the session wallet'). This clearly distinguishes it from read-oriented siblings like aureon_get_portfolio, though it does not explicitly name set_portfolio/clear_portfolio as alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit guidance on when to use this versus aureon_set_portfolio or aureon_clear_portfolio, nor any stated prerequisites (e.g., wallet must be verified). The 'session wallet' phrasing weakly implies a logged-in context but nothing is spelled out.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_toggle_api_keyC
Toggle active/paused status of an SDK API key
| Name | Required | Description | Default |
|---|---|---|---|
| keyId | Yes | API key ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. It never discloses the critical caveat that a toggle is state-dependent (non-idempotent: calling it twice on the same key returns the key to its original state), nor auth/permission requirements, nor what happens when the key is already in the target state.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with zero filler, which is appropriate for a one-parameter operation. It reads as a fragment without a terminating period, but nothing is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a trivial one-param toggle with no output schema the description is barely adequate, but because annotations are absent the state-dependent/non-idempotent nature of a toggle is the one thing an agent most needs and it is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% (keyId is documented in-schema) and there is only one parameter, so the baseline of 3 applies. The description adds no format, identifier-shape, or source hints beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (toggle) and resource (SDK API key) plus the two states it flips between (active/paused), which cleanly separates it from aureon_create_api_key, aureon_list_api_keys and aureon_revoke_api_key. It stops short of naming those siblings, but the operation is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no statement of prerequisites, and no contrast against the adjacent lifecycle tools (revoke vs toggle). The agent must infer that this is the reversible pause path rather than the destructive revoke.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_update_objectiveA
Partial update (name, weight, tolerance, priority). Cannot change targetSymbol or automationMode — recreate instead.
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | ||
| reason | No | Optional note stored on the decision record | |
| priority | No | ||
| tolerance | No | ||
| objectiveId | Yes | Objective ID | |
| maxRiskScore | No | ||
| targetWeight | No | ||
| reinvestRatio | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It does disclose a valuable immutability constraint (identity/automation fields are fixed), but says nothing about permissions/auth, whether omitted fields are left untouched, validation failures, or side effects such as triggering rebalancing or executions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight clauses with no filler; the mutable-field list is front-loaded and the constraint follows. Every phrase carries information an agent needs.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an 8-parameter mutation tool with zero annotations, no output schema, and 25% schema coverage, the description is too thin: half the parameters are undocumented in either place, and there is no mention of return behavior or side effects. It covers the immutability rule but leaves the agent under-informed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 25% (2 of 8), so the description must compensate. It names four mutable fields (name, tolerance, priority, and loosely "weight" for targetWeight) but omits maxRiskScore, reinvestRatio, reason, and objectiveId, and the "weight" naming is ambiguous against the schema's targetWeight.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ("Partial update" of an objective) and enumerates the mutable fields, which lets an agent distinguish it from aureon_create_objective, aureon_get_objective, and aureon_pause_objective. It is clear without being a tautology, though it does not explicitly name a sibling for contrast.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides an explicit when-not and alternative: targetSymbol and automationMode cannot be changed, so the agent should "recreate instead." That is real routing guidance. It stops short of stating prerequisites (e.g. objective must exist, must not be paused) or when to prefer this over other objective-mutating siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_validate_receiptA
Validates an execution receipt locally (schema + settlement labels). No API call. Returns { valid, issues }. Do not trust or summarize a receipt as on-chain when validation fails.
| Name | Required | Description | Default |
|---|---|---|---|
| receipt | Yes | ExecutionReceipt JSON from restore, listExecutions, or API |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden and does well: it states the operation is local with 'No API call,' specifies the return shape '{ valid, issues },' and gives an important trust warning about failed validation. It does not cover auth requirements, rate limits, or side effects, but for a local validator this is solid disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three short sentences, front-loaded with the core purpose. Every sentence earns its place: purpose, no-API clarification, return shape, and a critical warning. No redundant or filler content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter validation tool with no output schema, the description provides enough context: what it does, that it is local, the return shape, and a key trust condition. No essential information is missing for an agent to call it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the schema already describes the receipt parameter as 'ExecutionReceipt JSON from restore, listExecutions, or API.' The description adds no additional meaning about the parameter, so the baseline of 3 for full schema coverage is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'Validates an execution receipt locally (schema + settlement labels).' It also clarifies the scope ('locally') and that no API call is made. However, it does not explicitly differentiate from sibling tools like aureon_get_execution_settlement or the receipt verification demos, so it falls short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied: validate a receipt locally when you have one. A caution ('Do not trust or summarize a receipt as on-chain when validation fails') informs post-validation behavior but does not state when to use this tool versus alternatives such as aureon_get_execution_settlement or the demo tools. No explicit when/when-not guidance or alternatives are named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
aureon_verify_walletA
Verify a wallet signature and store the Bearer session for later tools in this MCP process
| Name | Required | Description | Default |
|---|---|---|---|
| address | Yes | Wallet address | |
| message | Yes | Signed message from get_auth_nonce | |
| signature | Yes | Wallet signature hex | |
| inviteCode | No | Invite code if required on first login |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. It usefully discloses the persistent side effect of storing a Bearer session for subsequent tools, but does not cover failure behavior, session lifetime, or auth requirements.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence that is front-loaded with the core action and side effect, with no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an auth-primitive tool with no output schema, the description conveys the key session-storage behavior but omits failure semantics and the prerequisite relationship with aureon_get_auth_nonce, leaving some operational context to the schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all four parameters. The description adds no parameter-level detail beyond the schema, making a baseline 3 appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Verify') and resource ('wallet signature'), plus the side effect of storing a Bearer session. This clearly distinguishes it from sibling auth tools like aureon_get_auth_nonce and aureon_logout.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It implies usage as an authentication prerequisite by noting the stored session is 'for later tools in this MCP process,' but does not explicitly say when to use it versus alternatives such as aureon_dev_login or what happens if verification fails.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
66 tool updates
v0.1.16- First observed
aureon_apply_financial_intent - First observed
aureon_apply_market_event - First observed
aureon_check_policy - First observed
aureon_clear_portfolio - First observed
aureon_confirm_execution_settlement - First observed
aureon_confirm_objective_registry - First observed
aureon_confirm_report - First observed
aureon_confirm_restoration - First observed
aureon_create_api_key - First observed
aureon_create_objective - First observed
aureon_dev_login - First observed
aureon_get_allocation_vs_target - First observed
aureon_get_audit_trail - First observed
aureon_get_auth_nonce - First observed
aureon_get_decision - First observed
aureon_get_drift_restore_flow - First observed
aureon_get_execution_settlement - First observed
aureon_get_full_aureon_loop_flow - First observed
aureon_get_health - First observed
aureon_get_health_history - First observed
aureon_get_objective - First observed
aureon_get_objective_portfolio_flow - First observed
aureon_get_objective_registry - First observed
aureon_get_overview - First observed
aureon_get_policy_check - First observed
aureon_get_portfolio - First observed
aureon_get_portfolio_history - First observed
aureon_get_portfolio_watch_flow - First observed
aureon_get_receipt_verification_flow - First observed
aureon_get_report - First observed
aureon_get_restore_plan - First observed
aureon_get_vault - First observed
aureon_get_vault_status - First observed
aureon_list_api_keys - First observed
aureon_list_decisions - First observed
aureon_list_executions - First observed
aureon_list_market_presets - First observed
aureon_list_objectives - First observed
aureon_list_reports - First observed
aureon_list_settlements - First observed
aureon_list_timeline - First observed
aureon_logout - First observed
aureon_me - First observed
aureon_pause_objective - First observed
aureon_ping - First observed
aureon_prepare_objective_registry - First observed
aureon_prepare_report - First observed
aureon_prepare_vault_deposit - First observed
aureon_prepare_vault_withdraw - First observed
aureon_propose_restoration - First observed
aureon_refresh_watchdog - First observed
aureon_registry_status - First observed
aureon_restore_objective - First observed
aureon_resume_objective - First observed
aureon_revoke_api_key - First observed
aureon_run_drift_restore_demo - First observed
aureon_run_execution - First observed
aureon_run_full_aureon_loop_demo - First observed
aureon_run_portfolio_watch_demo - First observed
aureon_run_receipt_verification_demo - First observed
aureon_set_portfolio - First observed
aureon_sync_portfolio - First observed
aureon_toggle_api_key - First observed
aureon_update_objective - First observed
aureon_validate_receipt - First observed
aureon_verify_wallet
TDQS
Scored across 66 tools
Several tools have nearly identical descriptions (e.g., aureon_run_execution and aureon_restore_objective both say 'Run restorative execution for an objective outside policy'), and restoration-related tools (get_restore_plan, propose_restoration, run_execution, restore_objective, confirm_restoration) create unclear boundaries. The many run_*_demo vs get_*_flow pairs add further selection confusion, though some distinct resources like objectives, vault, and reports remain separable.
Almost all tools use the aureon_ prefix followed by consistent snake_case, and verbs (get, list, create, update, prepare, confirm, run) are used predictably. Minor deviations like aureon_me and aureon_ping are not verb_noun, but overall the pattern is highly readable.
With 66 tools, this server is extremely over-scoped, far beyond the typical 3-15 range for a coherent MCP server. The large surface includes many redundant or niche operations that could be consolidated, making selection unwieldy for an agent.
The surface covers extensive lifecycle operations for objectives, executions, settlements, reports, registry, decisions, history, auth, and vault, so few core workflows are missing. Minor gaps exist (e.g., no delete objective or delete/update report), but agents can work around them.
Maintenance
Related MCP Connectors
Authenticated MCP server for ClearPolicy policy and compliance workflows.
Public MCP for agent verification, work discovery and governed interoperability.
MCP server for mandates, delegation, policy-gated execution, credential grants, and audit.
Create and manage trading strategies, bots, webhooks and signals from any MCP client.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to operate a self-hosted financial platform over MCP, managing books, expenses, revenues, settlements, payments, accounts, categories, transfers, positions, and cash flow with idempotent and audited writes.MIT
- AlicenseBqualityBmaintenanceGives MCP clients tools to discover tokenized Stock Tokens, read prices, corporate actions, and portfolio balances, and create route quotes. It prepares policy-checked trade plans with an explainable verdict and unsigned transactions for the user's wallet to sign.8231 npmMIT
- AlicenseNot gradedqualityCmaintenanceEnables MCP clients and AI agents to privately swap and send assets on Robinhood Chain, with quotes, swap creation, deposit payment from an optional local wallet, status checks, handoff links, wallet balances, and rewards.MIT

Stocklayer MCPofficial
AlicenseNot gradedqualityBmaintenanceEnables AI agents to discover tokenized Stock Tokens, read reference prices and wallet balances on Robinhood Chain, create quotes, simulate transactions, and build policy-checked trade plans that return an explainable verdict plus unsigned transactions for a wallet to sign.MIT