Yield Agentic Hub
The Yield Agentic Hub (YieldAgentX402) is a custody-free, policy-gated, receipt-backed execution layer for AI agents, enabling secure and verifiable financial and business operations across 18 blockchain networks.
Discovery & Platform
yax_get_capabilities: Explore all available tools, chains, rate limits, and configs — no API key required
Execution & Payments
yax_run_secure_workflow: Execute agent actions (API calls, emails, on-chain transactions) with policy enforcement and TEE attestationyax_process_x402_payment: Send USDC, STX, NEAR, or ETH payments to EVM, NEAR, or Stacks addresses with spend cap validation
Policy & Compliance
yax_check_policy: Dry-run an action to preview approval status and spend cap impact before executingyax_submit_approval: Approve or deny pending policy approval tokensyax_control_workflow: Stop or resume orchestration workflow runsyax_audit_compliance: Audit agent activity against policy rules and generate Filecoin-anchored compliance reports
Receipts & Verification
yax_get_receipt: Fetch full signed receipts with policy results, TEE attestation, and Filecoin/BTFS proof CIDsyax_verify_receipt: Cryptographically verify a receipt's signature and confirm its Filecoin anchoryax_list_runs: View recent agent runs filtered by outcome (approved/denied/escalated)
Wallet & Finance
yax_get_wallet_status: View USDC balance, spend cap, and remaining capyax_forecast_cash_flow: Generate week-by-week cash flow forecasts across base, optimistic, and pessimistic scenariosyax_collect_ar_invoices: Analyze overdue invoices by aging bucket and send escalating follow-up emails
CRM & Sales Automation
yax_score_leads: Score inbound leads (0–100) by conversion likelihood and sync to CRMyax_enrich_lead_data: Parse raw emails, forms, or webhooks into structured CRM-ready contact recordsyax_build_email_sequence: Generate personalized multi-step cold email campaigns for prospect listsyax_monitor_churn_risk: Identify at-risk customers by usage/payment patterns and draft re-engagement emails
Security & Attestation
yax_get_attestation: Verify the Intel TDX TEE enclave is operational with a verifiable mrEnclave hash before high-value actions
Under the hood, every execution is backed by HMAC-SHA256 signed receipts and dual Filecoin/BTFS anchoring for tamper-proof permanent storage. SDKs are available for TypeScript, CrewAI, and LangChain.
Provides tools for interacting with Algorand, including discovery, secure workflow execution, x402 payment settlement, policy dry-run, receipt verification, and attestation, enabling AI agents to perform financial operations on the Algorand blockchain.
Provides tools for interacting with Bitcoin (native), including discovery, secure workflow execution, x402 payment settlement, policy dry-run, receipt verification, and attestation, enabling AI agents to perform financial operations on the Bitcoin blockchain.
Provides tools for interacting with Ethereum, including discovery, secure workflow execution, x402 payment settlement, policy dry-run, receipt verification, and attestation, enabling AI agents to perform financial operations on the Ethereum blockchain.
Provides tools for interacting with NEAR, including discovery, secure workflow execution, x402 payment settlement, policy dry-run, receipt verification, and attestation, enabling AI agents to perform financial operations on the NEAR blockchain.
Provides tools for interacting with Solana, including discovery, secure workflow execution, x402 payment settlement, policy dry-run, receipt verification, and attestation, enabling AI agents to perform financial operations on the Solana blockchain.
Provides tools for interacting with Stellar, including discovery, secure workflow execution, x402 payment settlement, policy dry-run, receipt verification, and attestation, enabling AI agents to perform financial operations on the Stellar blockchain.
Provides tools for interacting with Sui, including discovery, secure workflow execution, x402 payment settlement, policy dry-run, receipt verification, and attestation, enabling AI agents to perform financial operations on the Sui blockchain.
Provides tools for interacting with TON, including discovery, secure workflow execution, x402 payment settlement, policy dry-run, receipt verification, and attestation, enabling AI agents to perform financial operations on the TON blockchain.
Provides tools for interacting with XRP Ledger (XRPL), including discovery, secure workflow execution, x402 payment settlement, policy dry-run, receipt verification, and attestation, enabling AI agents to perform financial operations on the XRP Ledger.
YieldAgentX402 SDKs
Public client libraries and integrations for YieldAgentX402 — the custody-free, policy-gated, receipt-backed execution layer for AI agents.
Platform · MCP Docs · Try without signup · Get API key
This repo hosts the open-source distribution packages. The platform itself (gateway, ShadeGuard policy engine, TEE attestation, orchestrator, Filecoin/BTFS anchoring) lives in a separate private repository — we ship the bits agents need to use the platform here.
Packages in this repo
Package | Registry | What it does |
npm: | Typed TypeScript SDK. Wraps all 18 MCP tools with first-class types, idempotency, webhook verify, Shade Agent helpers. Zero deps. Works in Node, browsers, Workers, Deno, Bun. | |
npm: | Stdio MCP wrapper. Drop into Claude Desktop / Code / Cursor / Windsurf for all 18 YieldAgentX402 tools across 18 chains. Glama: listing. | |
Zero-dependency WebCrypto verifier for receipts + webhook signatures. Works in browser, Node 18+, Cloudflare Workers, Deno. | ||
CrewAI tool wrappers — policy dry-run, x402 payment, secure workflow, receipt verify, Shade Agent MPC wallet status. | ||
PyPI: | LangChain tool wrappers — discovery, policy preview, receipt verify, action planner (MCP gateway). |
Related MCP server: dingdawg-governance
Try without signup
curl -X POST https://api.yieldagentx402.app/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call",
"params":{"name":"yax_get_capabilities","arguments":{}}}'No API key required. Returns all 18 tools, 18 chains, rate limits, fees, supported runtime configs.
Want an instant test key?
curl -X POST https://api.yieldagentx402.app/api/apply \
-H "Content-Type: application/json" \
-d '{"agent_name":"my-agent"}'Returns a yax_test_* key (5 USD cap, 7-day expiry) for safe read-only tools.
What is YieldAgentX402?
A trust layer for agents that move money.
18 MCP tools — discovery, secure workflow execution, x402 payment settlement, policy dry-run, approvals, receipt verification, attestation, finance/CRM skill tools
18 chains — Base, Ethereum, Bitcoin (native), Starknet, NEAR, Solana, Stacks, BNB, Rootstock, Filecoin EVM + native, Aptos, Sui, TON, Tron, XRPL, Stellar, Algorand
Custody-free wallet — one NEAR MPC key authority derives EVM + BTC addresses on demand. No private keys held by the gateway or worker. Starknet uses Stark curve preset.
Intel TDX TEE attestation — mrEnclave verifiable at
/api/tee/reportHMAC-SHA256 receipts — every call returns a signed receipt
Filecoin + BTFS dual anchoring — permanent tamper-proof proof storage
x402 protocol settlement — 0.25% protocol fee, machine-verifiable in
/.well-known/x402asextra.protocolFeeBps: 25
Custody-free wallet — one MPC key, three chains
Chain | Address | Curve |
EVM (Base/Eth) |
| secp256k1 (MPC) |
Bitcoin (P2WPKH) |
| secp256k1 (MPC) |
Starknet |
| Stark (preset) |
Live manifest: https://shade-agent-worker.cryptoblac.workers.dev/api/wallet
Live infra
Surface | URL |
MCP endpoint | |
Public discovery |
|
Instant test key |
|
Ready-to-paste configs |
|
x402 manifest | |
MCP manifest | |
Status | |
TEE report | |
Shade Agent wallet | https://shade-agent-worker.cryptoblac.workers.dev/api/wallet |
Receipt verifier (UI) | |
Postman collection | https://yieldagentx402.app/postman/yieldagentx402.postman_collection.json |
Contributing
Issues and PRs on the public SDK packages are welcome here. Platform-level changes (gateway, policy engine, TEE worker) happen in a private repo — open an issue if you have a feature request and we'll triage.
License
MIT — see LICENSE.
Available Tools
18 toolsyax_audit_complianceARead-onlyIdempotent
Audits recent agent activity against your policy rules and flags violations. Returns compliant vs flagged run counts, violation details, and a Filecoin-anchored compliance report CID.
| Name | Required | Description | Default |
|---|---|---|---|
| period | No | Time period to audit: '24h', '7d', '30d'. Defaults to '7d'. | |
| policy_id | No | Optional specific policy version to audit against, e.g. 'policy_v12'. Defaults to current. | |
| format | No | Report format: 'summary' or 'full'. Defaults to 'summary'. |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | True if audit ran. |
| run_id | No | Run ID for receipt retrieval. |
| compliant_runs | No | Number of runs that passed policy. |
| flagged_runs | No | Number of runs that violated policy. |
| violations | No | Details of each policy violation: run_id, rule, severity. |
| report_cid | No | Filecoin CID of the anchored compliance report. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare it read-only, idempotent, and non-destructive. The description adds behavioral details about output (compliant/flagged counts, violation details, Filecoin CID), which goes beyond the annotations.
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, well-structured sentence that immediately conveys the tool's purpose and outputs, with no extraneous 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?
Given the tool has 3 parameters with full schema descriptions and an output schema, the description adequately explains the tool's function and return values, requiring no further 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?
The input schema has 100% coverage with parameter descriptions. The description does not add significant meaning beyond what the schema provides, meeting the baseline 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?
The description clearly states the tool audits agent activity against policy rules and flags violations, specifying what it returns. However, it does not explicitly differentiate from sibling tools like yax_check_policy, which may serve a similar purpose.
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 provides no guidance on when to use this tool versus alternatives, nor does it mention when not to use it. There is no contextual usage advice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
yax_build_email_sequenceA
Builds a personalized cold email sequence for a list of prospects. Researches each prospect and writes tailored copy. Returns subject lines, body, and send schedule per prospect.
| Name | Required | Description | Default |
|---|---|---|---|
| prospects | Yes | List of prospect objects. Each needs at minimum: email and name. Optional: company, title, linkedin_url. | |
| offer | Yes | One sentence describing your offer or value proposition, e.g. 'We help SaaS companies reduce churn by 30%'. | |
| sequence_length | No | Number of emails in the sequence. Defaults to 3. | |
| tone | No | Email tone: 'professional', 'casual', or 'direct'. Defaults to 'professional'. |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | True if sequence was built. |
| run_id | No | Run ID for receipt retrieval. |
| sequences | No | Array of email sequences per prospect. Each has subject lines, body copy, and send schedule. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnlyHint=false and destructiveHint=false, but the description adds context: it researches each prospect and writes tailored copy. No contradictions. However, it doesn't disclose any side effects or limitations beyond what's implied by annotations.
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 main action, and every word earns its place. No redundancy or fluff.
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?
The tool has moderate complexity with 4 params and an output schema (present but not detailed). The description covers the core functionality, though it doesn't mention output schema specifics, which is acceptable as the schema handles that.
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% with descriptions for all 4 parameters. The description adds value by stating it researches prospects and writes tailored copy, which complements parameter meanings but doesn't add significant detail beyond schema for each param.
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 clearly states the tool builds a personalized cold email sequence, researches prospects, and writes tailored copy, specifying the verb 'builds' and resource 'cold email sequence'. It distinguishes from siblings like `yax_enrich_lead_data` (data enrichment) and `yax_score_leads` (scoring) by focusing on email generation.
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 use when needing personalized cold email sequences but lacks explicit when-to-use/when-not-to-use guidance. No alternatives or exclusions are mentioned, leaving the agent to infer context from purpose alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
yax_check_policyARead-onlyIdempotent
Checks if an action would be approved by your policy without running it. Returns approved/denied, remaining spend cap, and whether human approval is required.
| Name | Required | Description | Default |
|---|---|---|---|
| action_type | Yes | The action category to check against policy, e.g. 'payment', 'email', 'on_chain'. | |
| parameters | No | Action parameters to evaluate, including amount and recipient if applicable. |
Output Schema
| Name | Required | Description |
|---|---|---|
| decision | No | Policy decision: approved, denied, or requires_approval. |
| policy_version | No | Version of the policy that was evaluated, e.g. policy_v12. |
| shade_guard | No | ShadeGuard check result: pass or fail. |
| cap_remaining_usd | No | Remaining spend cap in USD for this agent in the current period. |
| requires_approval | No | Whether this action would require human approval before executing. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, destructiveHint, idempotentHint. The description adds details on return values and emphasizes no execution, enhancing transparency without contradicting annotations.
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?
Single concise sentence covering purpose, behavior, and key outputs with no redundancy or extraneous 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?
For a simple check tool with 2 parameters and an output schema, the description fully covers what the agent needs: purpose, dry-run nature, and return values. No missing essential 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%, so the description adds little beyond schema. It mentions 'amount and recipient' but that's already in the schema description. 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?
The description clearly states it checks if an action would be approved by policy without executing it, and lists return values (approved/denied, spend cap, human approval needed). This distinguishes it from sibling tools like yax_run_secure_workflow or yax_submit_approval.
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 use for dry-run policy checks before execution, but does not explicitly state when not to use or mention alternatives. Still provides clear context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
yax_collect_ar_invoicesA
Analyzes open invoices by age (30/60/90+ days) and sends escalating follow-up emails to overdue clients. Returns invoice count, total overdue amount, and emails sent per bucket.
| Name | Required | Description | Default |
|---|---|---|---|
| aging_buckets | No | Optional custom aging thresholds in days, e.g. [30, 60, 90]. Defaults to [30, 60, 90]. | |
| send_emails | No | If true, sends follow-up emails to overdue clients. Defaults to true. | |
| escalate_at | No | Days overdue at which to escalate to a senior contact or legal notice. Defaults to 90. |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | True if AR run succeeded. |
| run_id | No | Run ID for receipt retrieval. |
| invoices_scanned | No | Total invoices analyzed. |
| overdue_count | No | Number of overdue invoices. |
| total_overdue_usd | No | Total USD value of overdue invoices. |
| buckets | No | Invoice counts per aging bucket: bucket_30, bucket_60, bucket_90_plus. |
| emails_sent | No | Number of follow-up emails dispatched. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide no behavioral details beyond safety hints. Description fully compensates: reveals it sends escalating emails, lists return values (invoice count, overdue amount, emails sent per bucket). No contradiction with annotations.
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 with no fluff. First sentence front-loads purpose and behavior; second lists outputs. 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?
With full schema coverage, safety annotations, and an output schema, the description is complete. It covers purpose, behavior, and returned data without needing to repeat structured fields.
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% with clear parameter descriptions. Description adds no new meaning beyond schema; it references default buckets but doesn't enhance parameter understanding. 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?
Description uses specific verb+resource: 'Analyzes open invoices by age (30/60/90+ days) and sends escalating follow-up emails to overdue clients.' Clearly states action, target, and behavior, distinguishing it from siblings like yax_forecast_cash_flow or yax_get_receipt.
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 explicit when-to-use or when-not-to-use guidance. The description implies usage for overdue invoice follow-up but doesn't compare to alternatives or state prerequisites (e.g., 'Use when you need to send automated reminders').
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
yax_control_workflowBDestructive
Stop (cancel) or resume (approve human gate) an orchestration workflow run for this agent.
| Name | Required | Description | Default |
|---|---|---|---|
| workflow_id | Yes | Orchestration runId. | |
| action | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Description does not add behavioral traits beyond annotations. Annotations show destructiveHint=true, but description omits consequences of stopping or resuming, such as impact on ongoing processes or required 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?
Very concise single sentence that front-loads the main actions (stop/resume) and clearly states the target resource.
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 output schema and destructive annotation, description is minimally adequate but lacks details on outcomes, prerequisites, or state dependencies. Could include more for a 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 coverage is 50% (workflow_id has description, action has enum but no description). Description adds value by explaining 'approve human gate' for resume, but does not elaborate on workflow_id or action values 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?
The description clearly states the tool stops (cancels) or resumes (approves human gate) orchestration workflow runs. It uses specific verbs and resource, and distinguishes from siblings like yax_run_secure_workflow and yax_list_runs.
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 use stop vs resume, or when to use this tool over alternatives like yax_run_secure_workflow. The description only states what it does without context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
yax_enrich_lead_dataA
Parses a raw lead email, form submission, or webhook payload into a structured contact record, enriches it, and logs it to your CRM. Returns name, email, company, phone, and ICP score.
| Name | Required | Description | Default |
|---|---|---|---|
| source | Yes | Where the lead came from: 'email', 'form', 'webhook', or 'manual'. | |
| raw_content | No | Raw email body, form submission JSON, or webhook payload to parse. | |
| crm_push | No | Push enriched lead to CRM after intake. Defaults to true. |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | True if intake succeeded. |
| run_id | No | Run ID for receipt retrieval. |
| lead | No | Structured lead record: name, email, company, phone, source, enrichment, ICP score. |
| crm_synced | No | True if lead was pushed to CRM. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate mutation (readOnlyHint=false) and external calls (openWorldHint=true). The description adds context by stating that data is enriched and logged to CRM, which aligns well and provides extra detail on side effects.
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, no unnecessary words, front-loaded with action and result. Efficiently communicates the core functionality.
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 the presence of annotations, full input schema, and a clear description of return values, the description provides sufficient context for an agent to understand and invoke the tool 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% with clear descriptions for each parameter. The description adds general context about parsing and enriching but does not elaborate on parameter-specific details 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?
The description uses specific verbs ('parses', 'enriches', 'logs') and clearly identifies the resource (raw lead data) and output fields. It distinguishes from sibling 'yax_score_leads' which likely only scores, making this tool's role 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 lists input sources (email, form, webhook, manual) implying when to use, but does not explicitly state when not to use or provide comparisons to sibling tools like 'yax_score_leads' for alternative scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
yax_forecast_cash_flowARead-onlyIdempotent
Generates a week-by-week cash flow forecast across base, optimistic, and pessimistic scenarios. Returns inflow/outflow projections and a Filecoin-anchored report CID for board or lender use.
| Name | Required | Description | Default |
|---|---|---|---|
| horizon_weeks | No | Number of weeks to forecast. Defaults to 13 (one quarter). | |
| scenarios | No | Scenarios to model: ['base', 'optimistic', 'pessimistic']. Defaults to all three. | |
| include_ar | No | Include accounts-receivable projections. Defaults to true. |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | True if forecast succeeded. |
| run_id | No | Run ID for receipt retrieval. |
| forecast | No | Week-by-week cash flow projection array with inflows, outflows, and net position per scenario. |
| report_cid | No | Filecoin CID of the anchored forecast report. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Consistent with annotations (readOnlyHint, idempotentHint). Adds Filecoin-anchored report detail. No contradictions.
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, no unnecessary words. Efficiently conveys purpose and key outputs.
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?
Output schema exists, so return values need not be described. Sufficient context for a read-only forecasting tool with no side 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?
Schema coverage is 100%, so description adds little beyond schema. It mentions 'week-by-week' and scenario names, but these are already in schema descriptions.
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?
Description clearly states it generates a week-by-week cash flow forecast across base, optimistic, and pessimistic scenarios, and returns inflow/outflow projections and a CID. Differentiates from siblings like yax_audit_compliance and yax_monitor_churn_risk, which are unrelated.
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?
Mentions use for 'board or lender use', providing context. No explicit when-not-to-use or alternatives, but sibling tools are diverse and not direct competitors.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
yax_get_attestationARead-onlyIdempotent
Checks whether the TEE enclave is operational. Returns enclave status, the verifiable mrEnclave hash, and timestamp of last attestation. Use before high-value actions.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | True if status check succeeded. |
| status | No | Enclave status: 'operational' or 'degraded'. |
| enclave_hash | No | mrEnclave hash — verifiable on-chain against the published TEE manifest. |
| last_attestation | No | ISO 8601 timestamp of the last successful attestation. |
| tee_provider | No | TEE provider, e.g. NEAR AI Cloud. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Description aligns with annotations (readOnlyHint, idempotentHint) and adds details about returned fields. No contradictions. Could mention more about authorization or rate limits, but annotations already cover safety.
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: one for purpose/outputs, one for usage guidance. No wasted words, front-loaded with action verb.
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, no-parameter tool with output schema and strong annotations, the description is complete. It covers purpose, outputs, and usage 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?
No parameters exist, so schema coverage is 100%. Description does not need to add anything, and it doesn't. Perfect 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?
Clearly states it 'che checks whether the TEE enclave is operational' and specifies exact outputs (enclave status, mrEnclave hash, timestamp). Differentiates from siblings by being specific to attestation.
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?
Explicit guidance: 'Use before high-value actions.' This gives clear context for when to invoke. No explicit 'when not to use' or comparison to siblings, but the context is adequate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
yax_get_capabilitiesARead-onlyIdempotent
Returns every tool available on this server, what each one does, and when to use it. Call this first when connecting to understand the platform.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| differentiators | No | What makes YieldAgentX402 unique vs other MCP servers. |
| security | No | TEE enclave details, ShadeGuard policy engine, and receipt anchoring. |
| tool_categories | No | All available tool categories with tool names and recommended use cases. |
| getting_started | No | Recommended first call sequence for a new agent. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint, idempotentHint, etc. The description adds context on response content (tool descriptions and usage). No contradictions.
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 verb 'Returns', and no extraneous words. Highly efficient.
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 the existence of an output schema and the tool's simple discovery function, the description fully covers what the tool does and when to use 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?
No parameters exist, so baseline 4. No additional parameter information 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 clearly states the tool returns every tool available, their purpose, and usage. It distinctly positions itself as a discovery tool, differentiating from sibling 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?
Explicitly instructs 'Call this first when connecting to understand the platform.' While it doesn't mention when not to use or alternatives, the guidance is clear for its role.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
yax_get_receiptARead-onlyIdempotent
Fetches the full signed receipt for any past run. Returns policy result, TEE attestation, input/output hashes, and Filecoin + BTFS proof CIDs.
| Name | Required | Description | Default |
|---|---|---|---|
| run_id | Yes | The run ID to retrieve, returned by yax_execute_action or yax_pay_x402, e.g. run_7f29c91a. |
Output Schema
| Name | Required | Description |
|---|---|---|
| run_id | No | The run identifier. |
| policy | No | Full policy result including version, ShadeGuard decision, and approval identity. |
| tee_attestation | No | TEE attestation identifier. |
| input_hash | No | SHA-256 hash of the action inputs. |
| output_hash | No | SHA-256 hash of the action outputs. |
| proof | No | Filecoin CID and BTFS CID for the anchored receipt. |
| receipt_signature | No | Cryptographic signature over the full receipt. |
| anchored_at | No | ISO 8601 timestamp of anchoring. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnly, non-destructive, idempotent behavior. The description adds value by detailing the receipt contents (policy result, attestation, hashes, CIDs), providing behavioral context beyond annotations.
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 two sentences (25 words), front-loaded with the action, and contains no superfluous 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?
Given the tool's simplicity (1 parameter, output schema present), the description fully covers purpose and return contents. No gaps for an agent to understand the 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 coverage is 100% with a clear description for the single parameter 'run_id'. The tool description does not add additional semantic meaning beyond the schema, so 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?
The description clearly states 'Fetches the full signed receipt for any past run' with specific verb and resource. It lists the key return fields (policy result, attestation, hashes, CIDs), distinguishing it from siblings like yax_verify_receipt and yax_get_attestation.
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 when a receipt is needed ('for any past run') but provides no explicit guidance on when to use this tool versus alternatives like yax_verify_receipt or conditions for use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
yax_get_wallet_statusARead-onlyIdempotent
Returns the agent's wallet balance, spend cap, remaining cap for this period, and wallet address. Use before a payment to confirm funds are available.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| balance_usdc | No | Current wallet balance in USDC. |
| spend_cap_usd | No | Configured maximum spend cap in USD per period. |
| cap_remaining_usd | No | Remaining spend cap in USD for the current period. |
| custody | No | Custody model: always 'non-custodial'. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and idempotentHint true, so the bar is low. The description adds the return fields and usage context, which is helpful but not rich behavioral detail.
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 with no wasted words: first sentence lists return fields, second gives usage advice. Front-loaded and efficient.
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 read tool with output schema and no parameters, the description covers purpose and usage adequately. It could mention that the output schema details the returned data, but that is not required.
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?
No parameters exist, and schema coverage is 100%, so baseline 3 applies. The description adds nothing about parameters, which is acceptable since there are none.
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 clearly specifies the tool returns wallet balance, spend cap, remaining cap, and wallet address, which is a distinct resource from siblings like payment processing or compliance 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 description explicitly states 'Use before a payment to confirm funds are available,' providing a clear use case, but does not mention when not to use or compare to alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
yax_list_runsARead-onlyIdempotent
Lists recent agent runs with status and policy result. Filter by outcome (approved/denied/escalated) to audit activity or find run IDs for receipt lookup.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Number of runs to return. Maximum 50, default 20. | |
| outcome | No | Filter runs by policy outcome. Use 'denied' to audit blocked actions. | all |
| since | No | ISO 8601 date string. Return only runs after this timestamp. |
Output Schema
| Name | Required | Description |
|---|---|---|
| runs | No | Array of run summary objects, each with run_id, status, policy result, and receipt CIDs. |
| total | No | Total number of runs matching the filter. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true. Description adds no contradictory or additional behavioral details beyond purpose, maintaining consistency but not adding safety 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?
Two sentences that are direct and to the point, with zero wasted words. Front-loaded with the main action and resource.
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 an output schema present, description does not need to explain return values. Covers main purpose and filtering. Could mention ordering (e.g., most recent first) but not critical.
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 description does not need to add parameter details. It mentions filtering by outcome but adds no new meaning beyond the schema descriptions.
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?
Clearly states it lists recent agent runs with status and policy result, and distinguishes from siblings like yax_get_receipt by mentioning finding run IDs for receipt lookup.
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 clear usage context: filter by outcome to audit activity or find run IDs. Does not explicitly state when not to use or name alternatives, but implication is sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
yax_monitor_churn_riskA
Flags customers at risk of churning based on usage and payment patterns, and drafts a re-engagement email per account. Returns a prioritized risk list with churn score and outreach copy.
| Name | Required | Description | Default |
|---|---|---|---|
| customer_ids | No | Optional list of customer IDs to check. If omitted, scans all active customers. | |
| risk_threshold | No | Risk level to flag: 'high', 'medium', or 'all'. Defaults to 'high'. | |
| draft_emails | No | If true, drafts a re-engagement email per at-risk account. Defaults to true. |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | True if monitor ran. |
| run_id | No | Run ID for receipt retrieval. |
| at_risk | No | At-risk customer records with churn score, signals, and drafted email. |
| total_flagged | No | Total number of customers flagged. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=false and openWorldHint=true, so the description adds value by stating that it drafts emails and returns a prioritized risk list. With annotations providing baseline, the description effectively discloses the key side effect of draft creation.
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 two sentences, front-loaded with the main action, and contains no fluff. Every sentence adds meaningful 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?
Given the tool has an output schema and complete parameter descriptions, the description covers the core functionality well. It could mention defaults for risk_threshold and draft_emails, but those are already in the schema, so the description is sufficiently 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?
The input schema has 100% description coverage for all three parameters, so the baseline is 3. The description does not add additional meaning beyond the schema; it only summarizes the output, not input 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 clearly states the tool flags churn risk and drafts re-engagement emails, which is a specific verb+resource combination. It distinguishes from siblings like yax_build_email_sequence by combining risk monitoring and email drafting in one action.
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 for churn monitoring and re-engagement outreach, but does not explicitly mention when to use this tool versus alternatives (e.g., yax_build_email_sequence or yax_score_leads). No when-not-to-use guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
yax_process_x402_paymentADestructive
Sends an x402 payment to any EVM, NEAR, or Stacks address. Validates against your spend cap before signing. Returns transaction hash and signed receipt.
| Name | Required | Description | Default |
|---|---|---|---|
| recipient | Yes | Recipient address: EVM 0x address, Stacks SP address, or NEAR account name. | |
| amount | Yes | Payment amount as a decimal string, e.g. '0.50'. Validated against policy spend cap. | |
| token | No | Token symbol to pay with. Supported: USDC, STX, NEAR, ETH. Defaults to USDC. | USDC |
| memo | No | Optional human-readable memo attached to the payment transaction. |
Output Schema
| Name | Required | Description |
|---|---|---|
| run_id | No | Unique run identifier for this payment. |
| tx_hash | No | On-chain transaction hash of the settled payment. |
| status | No | Payment status: completed or denied. |
| proof | No | Filecoin and BTFS CIDs anchoring the payment receipt permanently. |
| receipt_signature | No | Cryptographic signature over the payment receipt. |
| anchored_at | No | ISO 8601 timestamp of receipt anchoring. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (destructiveHint: true), the description adds that the tool validates against a spend cap and returns a transaction hash and signed receipt. This gives useful behavioral context without contradicting annotations.
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 two sentences, front-loaded with the main action, and every sentence adds value. No wasted words, highly efficient.
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 schema fully described, annotations present, and mention of return values, the tool is well specified. Minor missing details about prerequisites (e.g., wallet state) are acceptable given openWorldHint.
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?
Input schema has 100% description coverage, so parameters are well documented. The description adds no new meaning beyond the schema, earning the baseline score 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 clearly states the tool sends an x402 payment to EVM, NEAR, or Stacks addresses using a specific verb and resource. It distinguishes itself from all sibling tools, which cover different domains like audit or email sequences, leaving no ambiguity.
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 for sending payments but does not explicitly state when to use it versus alternatives, such as checking wallet status or verifying receipts. It provides no exclusions or comparative guidance, leaving some ambiguity for an AI agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
yax_run_secure_workflowADestructive
Runs any agent action — email, API call, on-chain tx, or workflow — with policy enforcement and TEE attestation. Returns a run ID, policy decision, and signed Filecoin-anchored receipt.
| Name | Required | Description | Default |
|---|---|---|---|
| intent | Yes | Human-readable description of what the agent intends to do, e.g. 'Send invoice follow-up email to client ABC'. | |
| action_type | Yes | Action category: 'api_call', 'payment', 'email', 'on_chain', 'data_read', or 'workflow'. | |
| parameters | No | Action-specific parameters such as recipient address, amount, endpoint URL, or payload body. | |
| spend_cap_override | No | Optional per-call spend cap in USD. Must be less than or equal to the agent's configured policy cap. | |
| webhook_url | No | Optional https:// URL. When the run reaches a terminal state, the gateway POSTs the signed receipt to this URL with X-YAX-Signature: hmac-sha256=<hex>. Eliminates polling. |
Output Schema
| Name | Required | Description |
|---|---|---|
| run_id | No | Unique identifier for this run, e.g. run_7f29c91a. |
| status | No | Run status: completed, denied, or pending_approval. |
| policy | No | ShadeGuard policy result including decision, version, and guard status. |
| tee_attestation | No | TEE attestation identifier for hardware-verified execution paths. |
| proof | No | Filecoin CID and BTFS CID for permanent tamper-proof proof storage. |
| receipt_signature | No | Cryptographic signature over the full receipt payload. |
| anchored_at | No | ISO 8601 timestamp when the receipt was anchored. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark the tool as destructive (mutating) and open-world. The description adds value beyond annotations by disclosing policy enforcement, TEE attestation, and a signed Filecoin-anchored receipt, which are critical behavioral traits. It does not contradict annotations.
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 two sentences long, front-loads the core action and key features (policy, attestation, receipt), and contains no redundant information. Every word serves a purpose, making it 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?
Given the tool's complexity (multiple action types, policy, TEE, receipt), the description covers the essential aspects. It mentions the return values (run ID, policy decision, receipt) and security guarantees. While it omits details about optional parameters like spend_cap_override and webhook_url, these are fully documented in the schema. The presence of an output schema further reduces the need to describe return format in the description.
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 input schema has 100% coverage with descriptions for all 5 parameters, so the description's burden is low. The description adds no additional parameter-level meaning beyond what the schema provides; it only gives a high-level output summary (run ID, policy decision, receipt). This meets the baseline expectation.
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 clearly states the tool 'Runs any agent action' and lists examples (email, API call, on-chain tx, workflow), making the purpose specific and distinct from siblings. However, it does not explicitly differentiate itself from sibling tools like yax_process_x402_payment or yax_check_policy, which could cause ambiguity for an AI agent deciding between 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 description implies universal applicability ('any agent action') but offers no guidance on when to use this tool versus specialized siblings (e.g., yax_process_x402_payment for payments, yax_check_policy for policy checks). There is no mention of exclusions, prerequisites, or alternative tools, leaving the AI agent without decision support.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
yax_score_leadsA
Scores inbound leads by conversion likelihood and syncs enriched records to your CRM. Returns each lead with a score (0–100), tier (hot/warm/cold), and enrichment data.
| Name | Required | Description | Default |
|---|---|---|---|
| leads | Yes | Array of lead objects. Each must have at minimum an 'email' field. Optional: name, company, phone, source. | |
| crm_push | No | If true, syncs scored results to your connected CRM. Defaults to true. | |
| score_model | No | Scoring model to use. Options: 'default', 'b2b', 'saas', 'real_estate'. Defaults to 'default'. |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | True if the workflow ran successfully. |
| run_id | No | Run ID for receipt retrieval. |
| leads | No | Scored and enriched lead records with score (0–100), tier (hot/warm/cold), and enrichment fields. |
| crm_synced | No | True if results were pushed to CRM. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses that the tool writes to the CRM (matching readOnlyHint=false) and returns scores and enrichment data. This adds behavioral context beyond annotations, though it omits prerequisites like connected CRM or potential side effects.
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 dense sentence that front-loads the core action and outputs. No filler words; every part 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?
Given the tool has 3 well-documented parameters and an output schema, the description adequately covers the purpose and results. It could mention side effects or prerequisites but is complete enough for an agent to understand and invoke 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 coverage is 100%, so the description does not need to add much. It mentions the minimum requirement of email, which is already in the schema. The description does not add new semantic info for parameters 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?
The description clearly states the tool scores inbound leads by conversion likelihood and syncs enriched records to CRM, with specific output details (score 0–100, tier, enrichment data). This distinguishes it from sibling yax_enrich_lead_data, which likely only enriches without scoring.
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 for leads needing scoring and CRM sync but does not explicitly state when to use this tool vs alternatives like yax_enrich_lead_data. No when-not-to-use guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
yax_submit_approvalB
Approve or deny a pending policy approval token for the authenticated agent.
| Name | Required | Description | Default |
|---|---|---|---|
| approval_id | Yes | Policy approval token. | |
| decision | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate this is not read-only. Description adds that it is for the authenticated agent, but does not disclose side effects, required permissions, or what happens upon approval/denial, leaving 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 sentence that is concise and front-loaded, containing no extraneous 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 moderate complexity, the description is too minimal. It does not explain the expected response, error conditions, or prerequisites (e.g., agent must have a pending approval), making it incomplete for a state-changing 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 50%; only 'approval_id' has a description ('Policy approval token'), while 'decision' lacks one. The tool description provides no additional parameter information, so it fails to compensate for the missing schema description.
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?
Description clearly states the action (approve or deny), the resource (pending policy approval token), and the agent (authenticated). It is specific and distinguishes from sibling tools, none of which handle approval submission.
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?
Implies usage when needing to approve or deny a pending approval token, but lacks explicit guidelines on when to use versus alternatives or prerequisites such as having a pending approval.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
yax_verify_receiptARead-onlyIdempotent
Confirms a receipt's cryptographic signature is valid and its Filecoin anchor exists. Returns verified: true/false, signature status, and anchor CIDs.
| Name | Required | Description | Default |
|---|---|---|---|
| run_id | Yes | Run ID of the receipt to verify. | |
| filecoin_cid | No | Optional Filecoin CID to verify directly, instead of looking it up by run ID. |
Output Schema
| Name | Required | Description |
|---|---|---|
| verified | No | True if the signature is valid and the Filecoin anchor matches. |
| signature_ok | No | Whether the cryptographic signature over the receipt is valid. |
| anchor_exists | No | Whether the Filecoin anchor CID resolves and matches the receipt content. |
| filecoin_cid | No | The Filecoin CID that was verified. |
| verified_at | No | ISO 8601 timestamp of when verification was performed. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint and idempotentHint. The description adds value by detailing the verification process (cryptographic signature and Filecoin anchor) and specific return fields (verified status, signature status, anchor CIDs), enhancing transparency beyond annotations.
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 core action, no unnecessary words. Efficient and clear.
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 the tool's simplicity (2 params, annotations cover safety), the description adequately covers purpose, behavior, and outputs. With an output schema referenced, no major information 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?
Schema covers all parameters with descriptions (100% coverage). The description adds minimal extra meaning beyond the schema, only clarifying that filecoin_cid is an alternative lookup. 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?
The description clearly states it verifies a receipt's cryptographic signature and Filecoin anchor existence, with specific verbs 'confirms' and 'returns', and distinguishes it from siblings like yax_get_receipt which likely retrieves without verification.
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 use this tool versus alternatives (e.g., yax_get_receipt) or when not to use it. The description implies usage for verification but lacks explicit context.
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. Dates show when Glama detected each change.
18 tool updates
v0.1.0- First observed
yax_audit_compliance - First observed
yax_build_email_sequence - First observed
yax_check_policy - First observed
yax_collect_ar_invoices - First observed
yax_control_workflow - First observed
yax_enrich_lead_data - First observed
yax_forecast_cash_flow - First observed
yax_get_attestation - First observed
yax_get_capabilities - First observed
yax_get_receipt - First observed
yax_get_wallet_status - First observed
yax_list_runs - First observed
yax_monitor_churn_risk - First observed
yax_process_x402_payment - First observed
yax_run_secure_workflow - First observed
yax_score_leads - First observed
yax_submit_approval - First observed
yax_verify_receipt
TDQS
Most tools have distinct purposes (e.g., audit vs. email sequence vs. payment), but slight overlap exists between yax_enrich_lead_data and yax_score_leads (both deal with leads) and between yax_run_secure_workflow and yax_control_workflow (both manage workflows). Descriptions clarify differences.
All tools follow the consistent pattern 'yax_verb_noun' in snake_case, e.g., yax_check_policy, yax_forecast_cash_flow. No mixing of styles or irregular names.
18 tools is appropriate for a multifunctional agentic hub covering audit, email, invoices, leads, workflow, payments, and attestation. Each tool serves a clear niche without redundancy.
Covers major business operations (CRM, invoicing, payments, compliance, workflow), but lacks tools for direct policy editing or advanced CRM management. Minor gaps exist for a fully autonomous agent.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Policy-gated MCP treasury for AI agents — x402 subscribe, 50+ tools, multi-chain.
AI/LLM agent output audit MCP: policy eval, tamper-evident chain, AI safety, x402 USDC on Base.
AgentGuard — 20-tool AI safety MCP: policy preflight, risk scoring, audit logging, rate limits.
Pre-execution safety layer for autonomous agent wallets via MCP and x402.
Related MCP Servers
- AlicenseAqualityCmaintenanceCryptographic accountability for AI agents. Ed25519-signed receipts for every MCP tool call. Constraints, chains, AI judgment, invoicing, and local dashboard included.24131MIT
- AlicenseAqualityBmaintenanceUniversal governance layer for AI agents — MCP-native, fail-closed, LNN interpretability. Governed receipts, IPFS audit proofs, and rollback for any agent in any framework.382Apache 2.0
- AlicenseBqualityAmaintenanceA governance proxy for AI tools — every MCP/agent tool call is policy-gated, secret-redacted, and written to a hash-chained, offline-verifiable audit trail.13MIT
- AlicenseNot gradedqualityAmaintenanceDeterministic, auditable payment policy enforcement for AI agents. It provides pre-action authorization with scopes, budgets, allowlists, and signed mandates via an MCP server.MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Fabio662/yieldagentx402-sdks'
If you have feedback or need assistance with the MCP directory API, please join our Discord server