Payram
Server Details
PayRam is a self-hosted crypto payment gateway. You deploy it on your own server — no signup, no KYC, no third-party custody. Accept USDT, USDC, Bitcoin, and ETH across Ethereum, Base, Polygon, and Tron.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
Full call logging
Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.
Tool access control
Enable or disable individual tools per connector, so you decide what your agents can and cannot do.
Managed credentials
Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.
Usage analytics
See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.
Tool Definition Quality
Average 3.7/5 across 51 of 51 tools scored. Lowest: 2.6/5.
Most tools have clear, distinct purposes with detailed descriptions. However, the large number of generate_* and snippet_* tools for different frameworks and purposes (payment route, status, etc.) could cause confusion, though descriptions help differentiate them.
Names generally follow a verb_noun pattern (e.g., check_node_sync, create_payment_link), but there are inconsistencies like 'snippet_express_payment_route' (noun without verb) and 'snippet_' prefix used as a verb, deviating from the convention.
With 51 tools, the server is excessively large. Many tools are framework-specific code generators that could be consolidated into one parameterized tool, making the set unwieldy and potentially overwhelming for agents.
The tool set covers a broad range of Payram's functionality: payments, payouts, referrals, webhooks, node health, setup, and documentation. Minor gaps exist (e.g., no refund tool), but overall the surface is fairly complete for typical integration workflows.
Available Tools
51 toolsassess_payram_projectAssess Payram readiness in an existing codebaseBInspect
Inspects dependency files, frameworks, and .env status to suggest the next integration actions.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| summary | Yes | |
| envStatus | Yes | |
| frameworks | Yes | |
| detectedFiles | No | |
| packageManagers | Yes | |
| payramDependencies | Yes | |
| recommendedNextSteps | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations are absent, so the description must carry full behavioral disclosure. While 'Inspects' and 'suggests' imply a read-only advisory operation, the description fails to confirm it is non-destructive, does not specify which dependency files are examined (package.json, requirements.txt, etc.), does not enumerate supported frameworks, and omits any mention of filesystem permission requirements or the implicit dependency on the current working directory.
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 11-word sentence that efficiently captures the core action. However, given the tool's complexity (scanning multiple file types across potentially diverse tech stacks), the density leaves critical contextual gaps. It is appropriately brief but under-delivers on necessary scoping details.
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 empty input schema and an existing output schema, the description correctly avoids replicating return value documentation. However, for a codebase assessment tool, the description lacks essential context regarding which technologies are supported, what 'readiness' criteria are evaluated, and how the tool handles missing files or unsupported frameworks. This leaves significant ambiguity for the agent.
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 defines zero parameters (additionalProperties: false). Per calibration guidelines, zero parameters warrants a baseline score of 4, as there are no parameter semantics to elaborate upon 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?
The description uses specific verbs ('Inspects', 'suggests') and identifies concrete targets (dependency files, frameworks, .env status). The combination of the tool name and description effectively distinguishes this assessment tool from siblings like 'scaffold_payram_app' (creation) and 'test_payram_connection' (network testing), though it does not explicitly name these 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?
The description provides no guidance on when to invoke this tool versus alternatives. It does not indicate prerequisites (e.g., 'run this before scaffolding'), does not clarify its relationship to 'prepare_payram_test' or 'generate_setup_checklist', and offers no exclusion criteria (when NOT to use it).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_node_syncCheck Node SyncAInspect
Per-chain node health verdict: healthy / lagging / unreachable / listener-down. Computes how old each RPC node’s last block is — any non-BTC chain older than 10 minutes (BTC: 90 minutes, since BTC blocks every ~10m) is flagged as lagging or not syncing. Also checks the chain’s listener worker. When something is wrong it names the exact remediation (usually restart_payram_worker). Read-only — run this first; restart second; re-run this ~60s after a restart to confirm recovery.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| chains | Yes | |
| issues | Yes | |
| healthy | Yes | |
| workers | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description fully discloses the tool's behavior: it is read-only, computes block age with specific thresholds for BTC vs non-BTC, checks the listener worker, and names exact remediation. No contradictions or missing behavioral details.
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 concise yet packed with essential information. It could be slightly more structured (e.g., separate sentences for verdict, logic, and usage), but it is efficient and fronts the purpose.
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 parameters, the description fully covers what the tool does, how it works, what results to expect, and the recommended workflow. It provides complete guidance for the agent to use 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?
The input schema has zero parameters and 100% schema coverage, so the description does not need to add parameter details. It still adds value by explaining the logic and outputs, earning baseline score of 4.
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 specifies that the tool provides a per-chain node health verdict with clear statuses (healthy, lagging, unreachable, listener-down) and explains the detection logic (block age, thresholds). This distinguishes it from sibling tools, which are about different functionalities.
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 'Read-only — run this first; restart second; re-run this ~60s after a restart to confirm recovery.' It also indicates when to use it and the remediation action, providing clear context for when to invoke this tool vs others.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_payment_readinessCheck Payment ReadinessAInspect
Diagnoses what is NOT yet set up to accept payments, per blockchain: missing deposit wallet, chain/currency not enabled for the project, or a stopped listener worker. Read-only — reports gaps and points to the CLI for wallet setup; it does not create wallets itself.
| Name | Required | Description | Default |
|---|---|---|---|
| externalPlatformId | No | Project/platform ID to check currency enablement for (auto-resolved if omitted) |
Output Schema
| Name | Required | Description |
|---|---|---|
| chains | Yes | |
| allReady | Yes | |
| projectId | Yes | |
| readyChains | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Explicitly states read-only nature and that it does not create wallets, but lacks details on error behavior or prerequisites. Without annotations, it carries the burden adequately.
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 efficient sentences, front-loaded with action and scope, no redundant 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?
Covers purpose, read-only nature, and next steps. Missing error handling or prerequisites, but output schema may compensate.
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 description only restates the parameter's purpose without adding new meaning.
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 diagnoses payment readiness issues (missing wallet, chain/currency not enabled, stopped listener). It uses a specific verb 'Diagnoses' and distinguishes from siblings like assess_payram_project by specifying exactly what it checks.
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 diagnosing gaps and points to CLI for wallet setup, but does not explicitly compare to sibling tools or provide when-not-to-use conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_payment_linkCreate Payment LinkAInspect
Creates a PayRam checkout (payment) link and returns the hosted URL plus a reference_id. Authenticates with the Merchant API-Key (set PAYRAM_API_KEY). This WRITES — it creates a real payment request. The customer chooses the chain/currency on the hosted checkout. Poll status later with lookup_payment (or GET /api/v1/payment/reference/{reference_id}).
| Name | Required | Description | Default |
|---|---|---|---|
| customerID | Yes | Your internal customer identifier (sent as customerID, required) | |
| amountInUSD | Yes | Payment amount in USD (must be > 0) | |
| customerEmail | Yes | Customer email (required — the backend validates it as a non-empty email) |
Output Schema
| Name | Required | Description |
|---|---|---|
| url | Yes | |
| host | No | |
| reference_id | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations, but description explicitly labels the tool as WRITES (creates real payment request). Discloses authentication method and that customer chooses chain/currency on hosted checkout. Return values are mentioned. Could add rate limits or idempotency, but adequate for creation 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?
Three sentences, each serving a distinct purpose: action/outputs, auth/nature, and post-action guidance. No redundancy or unnecessary 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?
With 3 required params, output schema exists, and no nested objects, the description covers purpose, auth, mutation, and subsequent polling. Lacks error scenarios but overall complete for this tool's 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?
Schema coverage is 100% with detailed descriptions for each of the three required parameters. Description adds no new parameter-level information beyond what schema provides, meeting baseline for 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?
Specific verb 'creates' with clear resource 'PayRam checkout (payment) link' and explicit outputs (hosted URL + reference_id). Distinct from sibling tools like 'lookup_payment' and 'search_payments'.
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?
States authentication requirement ('Merchant API-Key') and mutation nature ('this WRITES'). Provides post-usage guidance: 'Poll status later with lookup_payment'. Lacks explicit when-not-to-use but context is sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
explain_payment_flowPayment Flow GuideAInspect
Describe how payments move from customer initiation through settlement.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| notes | No | |
| title | Yes | |
| sections | Yes | |
| description | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden for behavioral disclosure. It only states the tool describes a flow, offering no details on side effects, safety, or whether it reads or writes data. While presumably read-only, the description should explicitly confirm this given the lack of 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?
A single, clear sentence that is front-loaded and contains no extraneous information. Every word earns its place, making it 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 no parameters and an existing output schema, the description is minimally complete. However, it does not differentiate its scope from sibling tools like 'explain_referral_flow', leaving some ambiguity. A brief note on its unique focus would improve completeness.
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 has zero parameters, so the input schema fully covers parameter semantics. The description adds no value beyond the schema, but with no parameters, the baseline score is 4.
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 explicitly states the tool describes the payment flow from initiation to settlement, which is a specific verb+resource. It distinguishes itself from sibling tools like 'explain_payram_basics' by focusing on the general payment flow rather than a specific system.
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 guidance on when to use this tool versus alternatives. With multiple 'explain' tools available, agents may lack clarity on which one to invoke. The description does not mention conditions, prerequisites, or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
explain_payram_basicsPayram Basics OverviewBInspect
Explain Payram's product pillars, architecture, payments, and payouts capabilities.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| notes | No | |
| title | Yes | |
| sections | Yes | |
| description | No |
Tool Definition Quality
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 only states the tool 'explain's topics but does not disclose that it is read-only, safe, or free of side effects. No behavioral traits like authentication needs or rate limits are mentioned.
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 sentence of 10 words, concisely stating the tool's purpose without any fluff or redundancy. It is front-loaded and 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?
Given the tool has no parameters, an output schema is present, and it is a straightforward informational tool, the description adequately covers the main topics. However, it could be slightly more complete by indicating the result type (e.g., text explanation) but is not necessary due to the 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?
The input schema has zero parameters. Per the rubric, this yields a baseline score of 4. The description does not add parameter information, 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 clearly states that the tool explains Payram's product pillars, architecture, payments, and payouts capabilities. It uses a specific verb and lists the topics, which distinguishes it from siblings like 'explain_payment_flow' but could be more specific to differentiate from all similar explain 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 provides no guidance on when to use this tool versus alternatives such as 'explain_payram_concepts' or 'explain_payment_flow'. There is no mention of prerequisites, context, or exclusions, leaving the agent 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.
explain_payram_conceptsCore Payram ConceptsAInspect
Glossary-backed explanation of Payram terminology and constraints.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| notes | No | |
| title | Yes | |
| sections | Yes | |
| description | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description notes it is 'glossary-backed,' suggesting a lookup function. However, with no annotations, it lacks details on side effects, caching, or authentication requirements. The behavioral disclosure is minimal but not contradictory.
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, efficient sentence that gets straight to the point. No extraneous information, and it is front-loaded with the key action: explanation of terminology and constraints.
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 (no parameters, output schema exists), the description is sufficient to understand the tool's basic purpose. It does not specify what concepts are covered, but the title 'Core Payram Concepts' provides that 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?
There are no parameters, so the description adds no parameter meaning. The baseline for zero parameters is 4, as the schema already covers all necessary information.
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 explains Payram terminology and constraints using a glossary. However, it does not differentiate from sibling explain tools like 'explain_payment_flow' or 'explain_payram_basics', which could lead to ambiguity in tool selection.
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 usage guidance is provided. The description does not indicate when to use this tool over alternative explain tools, nor does it specify any prerequisites or context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
explain_referral_flowReferral Flow GuideAInspect
Detail the referrer/referee lifecycle and required APIs.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| notes | No | |
| title | Yes | |
| sections | Yes | |
| description | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It accurately describes a read-only explanatory function but does not explicitly state it is non-destructive or mention any side effects, which is adequate for a simple informational 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?
The description is a single efficient sentence that immediately conveys the purpose. Every word earns its place with no 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?
Given the presence of an output schema (context indicates true) and no parameters, the description is complete for this explanatory tool. It sufficiently covers the scope without needing to detail return values.
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 are no parameters, so schema coverage is 100%. Baseline 4 applies; the description adds no parameter info, which is acceptable given zero 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 details the referrer/referee lifecycle and required APIs, which is specific and distinct from sibling tools like 'explain_referrals_basics' or 'explain_payment_flow'.
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. It lacks context like prerequisites or exclusion criteria, making it less helpful for selection among many sibling explain tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
explain_referrals_basicsReferral Basics OverviewAInspect
Summarize how Payram referral campaigns are configured and managed.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| notes | No | |
| title | Yes | |
| sections | Yes | |
| description | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits. It indicates the tool 'summarizes,' which implies a read-only, safe operation. However, it does not explicitly state that it does not modify data, require authentication, or have side effects. The description is adequate but minimal.
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 sentence with no unnecessary words. It is highly concise and immediately conveys the tool's purpose.
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 no parameters and an output schema exists, the description is largely complete. It clearly states what the tool does, but could be enhanced by listing the specific aspects covered in the summary (e.g., configuration, management, key settings).
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 has zero parameters, and the schema description coverage is 100% (empty properties). The description does not need to add parameter information since none exist, earning the baseline score of 4.
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's function: 'Summarize how Payram referral campaigns are configured and managed.' It uses a specific verb ('summarize') and identifies the resource ('Payram referral campaigns'), distinguishing it from siblings like 'explain_referral_flow' which focuses on the flow rather than basics.
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 the tool is used for obtaining a basic overview of referral campaigns, but it provides no explicit guidance on when to use this tool versus alternatives such as 'explain_referral_flow' or 'explain_payram_basics'. There is no mention of prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_env_templateGenerate Payram .env TemplateAInspect
Creates a .env template for configuring a merchant backend to talk to a self-hosted Payram server.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| notes | No | |
| title | Yes | |
| variables | Yes | |
| envExample | Yes | |
| description | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations provided, the description bears full responsibility for behavioral disclosure but omits critical details such as whether the template is returned as content or written to disk, what specific environment variables it includes, or whether it overwrites existing files. The description only states the high-level intent without exposing operational characteristics.
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 consists of a single twelve-word sentence that immediately communicates the core purpose without filler words or redundant phrases. Every element—verb, resource, and context—contributes essential meaning to the tool's identity.
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?
While the tool has minimal complexity with zero parameters and an output schema handling return documentation, the description lacks contextual details about the template contents or usage timing that would compensate for the absence of annotations. It adequately identifies the function but omits helpful implementation 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 contains zero parameters, establishing a baseline score per the evaluation rubric. The description appropriately makes no attempt to describe nonexistent parameters, avoiding unnecessary verbosity.
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 the specific verb 'Creates' with the clear object '.env template,' and further specifies the scope as 'configuring a merchant backend to talk to a self-hosted Payram server.' It effectively distinguishes itself from sibling scaffolding and code snippet generation tools by focusing specifically on environment configuration files.
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 fails to specify when this tool should be preferred over alternatives like scaffold_payram_app or generate_setup_checklist, nor does it mention prerequisites such as requiring a self-hosted Payram server to be running first. No exclusions or contextual triggers are provided to guide agent selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_mock_webhook_eventGenerate mock Payram webhook eventAInspect
Generates a snippet to send mock Payram webhook events to your local endpoint for testing.
| Name | Required | Description | Default |
|---|---|---|---|
| status | Yes | Payment status to simulate in the mock webhook event | |
| language | Yes | Language/tool for the mock webhook request (curl for command-line testing) |
Output Schema
| Name | Required | Description |
|---|---|---|
| meta | Yes | |
| notes | No | |
| title | Yes | |
| snippet | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It clarifies the operation is code generation ('Generates a snippet') and mentions the local endpoint target, but omits disclosure about side effects, safety (read-only nature), or that it returns code rather than executing network calls.
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 single 15-word sentence is tightly constructed with zero redundancy. Every phrase serves a purpose: the action ('Generates'), the artifact ('snippet'), the function ('send mock Payram webhook events'), the target ('local endpoint'), and the context ('for testing').
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 rich input schema (100% coverage), the presence of an output schema, and only 2 straightforward parameters, the description provides adequate context for the tool's scope. However, additional behavioral transparency would strengthen it given the lack of annotations.
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?
With 100% schema description coverage, the baseline is 3. The description adds valuable context by specifying 'to your local endpoint' and 'for testing', which helps interpret the 'status' parameter (simulated payment status sent locally) and 'language' parameter (choice affects the generated test code format).
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 ('Generates') and identifies the resource clearly ('snippet to send mock Payram webhook events'). It distinguishes itself from siblings like generate_webhook_handler by specifying 'mock' events and 'local endpoint' testing context, though it does not explicitly contrast with 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?
The description includes 'for testing' which implies the intended use case, but lacks explicit when/when-not guidance or named alternatives despite being in a crowded namespace of generate_* and snippet_* tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_payment_http_snippetGenerate HTTP payment snippetCInspect
Generates a raw HTTP sample for creating a Payram payment in the requested language.
| Name | Required | Description | Default |
|---|---|---|---|
| language | Yes | Programming language for the HTTP payment creation snippet |
Output Schema
| Name | Required | Description |
|---|---|---|
| meta | Yes | |
| notes | No | |
| title | Yes | |
| snippet | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It fails to clarify whether this tool performs a side-effect-free code generation (documentation) or actually triggers a payment creation. It also doesn't disclose the output format despite mentions of multiple language targets.
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 efficient sentence with no redundant words. However, given the high sibling density and potential for confusion with other snippet generators, the extreme brevety leans toward under-specification rather than optimal 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?
Adequate for a single-parameter tool with 100% schema coverage and an existing output schema, but minimal given the complex ecosystem of similar snippet-generation tools. Missing crucial context about side effects and sibling differentiation that would be expected for this tool density.
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% (the 'language' parameter is fully documented in the schema with enum values). The description mentions 'in the requested language' which maps to the parameter but adds no additional semantics regarding syntax constraints or selection guidance beyond the schema definition.
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 identifies the action ('Generates'), output type ('raw HTTP sample'), and domain ('Payram payment'). The term 'raw HTTP' implicitly distinguishes it from SDK and route snippet siblings, though it doesn't explicitly name 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?
No guidance is provided on when to select this tool versus the sibling SDK snippet, route snippet, or status snippet generators. Given the dense sibling landscape with similar names, explicit selection criteria (e.g., 'use when you need to see the underlying HTTP request without SDK abstraction') is absent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_payment_route_snippetGenerate payment route snippetBInspect
Generates a ready-to-use backend endpoint (e.g., /api/pay/create) that creates a Payram payment.
| Name | Required | Description | Default |
|---|---|---|---|
| framework | Yes | Web framework for the payment route handler (Express.js or Next.js) |
Output Schema
| Name | Required | Description |
|---|---|---|
| meta | Yes | |
| notes | No | |
| title | Yes | |
| snippet | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden but only partially succeeds. It clarifies the generated code is 'ready-to-use' and for creating payments specifically, but omits critical behavioral details: whether this writes files to disk or returns code strings, what the output schema contains, or whether the generated endpoint includes validation/error handling.
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 efficient sentence with no wasted words. The example endpoint path is useful and specific. Minor deduction for not front-loading the multi-framework nature to distinguish from single-framework snippet siblings.
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 output schema exists (not shown but indicated in context) and only one simple parameter, the description adequately covers the tool's purpose. However, given the crowded namespace of similar generation tools and lack of annotations, it should explicitly clarify its relationship to framework-specific alternatives.
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% (the single 'framework' parameter is fully documented with enum values and description). The description adds no parameter information, but baseline 3 is appropriate when the schema already provides complete 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 uses specific verb 'Generates' with clear resource 'backend endpoint' and scope 'that creates a Payram payment'. The example path (/api/pay/create) helps. However, it fails to explicitly distinguish from similar siblings like `snippet_express_payment_route` or `generate_payment_sdk_snippet` which generate similar outputs.
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 provided on when to use this multi-framework tool versus the framework-specific `snippet_*` alternatives, or when to prefer this over SDK snippets (`generate_payment_sdk_snippet`) or HTTP examples (`generate_payment_http_snippet`).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_payment_sdk_snippetGenerate SDK payment snippetBInspect
Generates backend code using the official Payram JS/TS SDK to create a payment.
| Name | Required | Description | Default |
|---|---|---|---|
| framework | Yes | Target framework for the SDK payment snippet. generic-http provides a framework-agnostic example. |
Output Schema
| Name | Required | Description |
|---|---|---|
| meta | Yes | |
| notes | No | |
| title | Yes | |
| snippet | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It discloses the generative nature (creates backend code) and the technology (Payram JS/TS SDK), but omits details about side effects, idempotency, or whether it returns a string vs. writes to disk.
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 sentence with no redundant words. However, the brevity comes at the cost of contextual completeness, as critical distinguishing details for the sibling-heavy environment are omitted.
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?
Despite having a complete input schema and output schema, the description fails to address the high complexity of the environment with multiple similar generation tools (SDK vs HTTP vs Route). Lacks guidance needed to select the correct variant.
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%, establishing a baseline of 3. The description mentions 'JS/TS SDK' which contextually frames the framework parameter values, but does not explicitly elaborate on the parameter semantics beyond what the schema already defines.
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 (Generates), resource (backend code), and scope (payment creation) using the official SDK. Mentions 'JS/TS SDK' which helps distinguish from the HTTP and Route snippet siblings, though it doesn't explicitly contrast with them.
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 no guidance on when to prefer the SDK snippet over the HTTP snippet or Route snippet siblings. Also omits prerequisites like SDK installation requirements.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_payment_status_snippetGenerate payment status snippetBInspect
Generates backend code to query the status of a Payram payment.
| Name | Required | Description | Default |
|---|---|---|---|
| style | Yes | Style of code snippet: sdk uses the Payram SDK, http uses raw HTTP requests |
Output Schema
| Name | Required | Description |
|---|---|---|
| meta | Yes | |
| notes | No | |
| title | Yes | |
| snippet | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden but omits critical behavioral details: what programming languages are supported, whether the generated code includes error handling, if it's idempotent, or authentication requirements. Only states the high-level intent.
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 sentence, front-loaded with no redundancy. Every word serves a purpose in conveying the tool's function.
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 operates in a crowded 'snippet generator' ecosystem, the description is minimally sufficient. However, it fails to mention that this generates 'status query' specifically versus other payment operations, which would help navigate the many similar sibling tools.
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 the 'style' parameter well-documented. The description adds no parameter-specific context, but baseline 3 is appropriate given the schema comprehensively documents the single enum parameter.
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 verb (generates), output type (backend code), and specific purpose (query payment status), distinguishing it from payment creation tools. However, it doesn't explicitly differentiate from siblings like 'generate_payment_sdk_snippet' which may generate code for other payment operations.
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 provided on when to use this versus 'lookup_payment' (which directly queries status) versus other snippet generators. No mention of prerequisites or when code generation is preferred over direct API calls.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_payout_recipient_flow_snippetGenerate 3-step recipient payout flow snippetAInspect
Generates the recommended OTP-verified payout flow: create recipient → validate OTP → create payout against the saved recipient. Use this for repeat beneficiaries; use generate_payout_sdk_snippet for one-off direct payouts.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| meta | Yes | |
| notes | No | |
| title | Yes | |
| snippet | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It adequately describes the tool's behavior as generating a code snippet, which is inherently non-destructive. Could mention that it returns sample code/instructions, but the flow description is sufficient.
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 concise sentences, front-loaded with purpose and clear sibling differentiation. 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 0 parameters and presence of an output schema, the description is complete: explains the output type (snippet), the three-step flow, and usage context. No missing details.
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 0 parameters with 100% coverage. Baseline is 4 per rules. Description adds no parameter info, but none 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 generates a 3-step OTP-verified payout flow snippet, naming each step. It distinguishes from sibling tool generate_payout_sdk_snippet by specifying use for repeat beneficiaries vs one-off payouts.
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 tells when to use this tool (repeat beneficiaries) and when to use the sibling (one-off direct payouts). No ambiguity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_payout_sdk_snippetGenerate payout SDK snippetBInspect
Generates a backend code snippet for creating a payout using the Payram JS/TS SDK.
| Name | Required | Description | Default |
|---|---|---|---|
| framework | Yes | Target framework for the payout SDK snippet |
Output Schema
| Name | Required | Description |
|---|---|---|
| meta | Yes | |
| notes | No | |
| title | Yes | |
| snippet | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. Mentions 'backend code snippet' and 'JS/TS' language, but lacks disclosure on whether this mutates state, what the snippet structure looks like, or how it differs from HTTP snippets.
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 12-word sentence with action verb front-loaded. No redundant information, efficiently 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?
Adequate for a single-parameter snippet generator with output schema present. Core purpose is explained, though gaps exist around the 'generic-http' vs 'SDK' relationship and differentiation from sibling tools.
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%, meeting baseline of 3. Description mentions 'JS/TS SDK' which contextualizes the framework parameter, though creates slight confusion with the 'generic-http' enum value that isn't explained.
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 specific verb (generates), resource (payout SDK snippet), and distinguishes from siblings (payout vs payment, SDK vs HTTP/status variants). Mentions Payram JS/TS SDK specificity.
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 guidance on when to use this versus generate_payout_status_snippet or HTTP snippet alternatives. Sibling differentiation is implied by resource names only.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_payout_status_snippetGenerate payout status SDK snippetBInspect
Generates backend code to query the status of a payout using the Payram SDK.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| meta | Yes | |
| notes | No | |
| title | Yes | |
| snippet | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions generating code but does not specify the output format, language, dependencies, or any side effects (e.g., if it simulates or requires actual SDK setup). This leaves gaps in understanding how the tool behaves beyond the basic action.
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, efficient sentence that directly states the tool's function without unnecessary words. It is front-loaded with the core action and resource, making it easy to parse quickly.
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 that there is an output schema (which should cover return values), no parameters, and no annotations, the description is minimally adequate. However, it lacks details on behavioral aspects like code format or integration context, which could be helpful for an agent to use the tool effectively in practice.
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 0 parameters with 100% coverage, so no parameter documentation is needed. The description does not add parameter details, which is appropriate, but it could have optionally clarified that no inputs are required. Baseline is 4 for zero parameters, as the schema fully covers the absence of 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?
The description clearly states the action ('Generates backend code') and the resource ('to query the status of a payout using the Payram SDK'), making the purpose specific and understandable. However, it does not explicitly differentiate from similar sibling tools like 'generate_payment_status_snippet' or 'generate_payout_sdk_snippet', which might cause confusion about when to use this specific tool.
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, such as other snippet-generation tools in the sibling list. It lacks context about prerequisites, target scenarios, or exclusions, leaving the agent to infer usage based on the name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_referral_route_snippetGenerate referral route snippetBInspect
Generates a backend route such as /api/referrals/create for logging referral events.
| Name | Required | Description | Default |
|---|---|---|---|
| framework | Yes | Web framework for the referral route handler (Express.js or Next.js) |
Output Schema
| Name | Required | Description |
|---|---|---|
| meta | Yes | |
| notes | No | |
| title | Yes | |
| snippet | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It successfully indicates the generated code is for 'logging referral events,' providing behavioral context. However, it fails to disclose output format details (string vs file), idempotency, or whether the tool is read-only code generation versus stateful 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?
Single sentence that is front-loaded and information-dense. The example path ('/api/referrals/create') efficiently conveys intent without verbosity. No filler or redundant text.
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 simple single-parameter input and presence of an output schema (which handles return value documentation), the description adequately covers the tool's scope. For a code generation utility, the description sufficiently indicates what gets generated.
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 ('Web framework for the referral route handler'), so the baseline is appropriately 3. The description provides minimal additional parameter semantics beyond implying the framework parameter via 'backend route,' but no additional syntax or validation details are necessary given the excellent schema 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 it 'Generates a backend route' with a concrete example ('/api/referrals/create') and specifies the domain ('referral events'). The 'backend route' wording distinguishes it from sibling SDK generators (e.g., generate_referral_sdk_snippet), though it could explicitly state the distinction between server-side routes versus client SDKs.
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 provided on when to use this specific tool versus the numerous sibling snippet generators (e.g., generate_referral_sdk_snippet, generate_referral_validation_snippet, or the payment route equivalents). Given the high similarity between tools, explicit selection criteria are needed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_referral_sdk_snippetGenerate referral SDK snippetCInspect
Generates a backend route or service snippet to create a referral event using the Payram SDK.
| Name | Required | Description | Default |
|---|---|---|---|
| framework | Yes | Target framework for the referral SDK snippet |
Output Schema
| Name | Required | Description |
|---|---|---|
| meta | Yes | |
| notes | No | |
| title | Yes | |
| snippet | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must carry the full behavioral burden but fails to disclose idempotency, authentication requirements embedded in the snippet, or error handling patterns. It also omits that only 'generic-http' framework is currently supported, which is critical context given the parameter enum constraint.
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 single sentence is front-loaded and efficient with no filler words. However, the conflation of 'backend route' and 'service snippet' slightly dilutes the clarity without adding useful disambiguation.
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 output schema exists, the description appropriately omits return value details. However, it misses the opportunity to clarify SDK-specific behaviors, the relationship to the Payram SDK instantiation pattern, or why one would choose this over the HTTP snippet generator.
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%, establishing a baseline of 3. The description adds no semantic context about the 'framework' parameter or the limitation of only supporting 'generic-http', leaving all parameter documentation to 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?
The description clearly identifies the action ('Generates'), the output type ('backend route or service snippet'), and the specific domain ('create a referral event using the Payram SDK'). It distinguishes itself from HTTP and route variants by specifying 'SDK', though the inclusion of 'backend route' creates minor ambiguity with 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?
No guidance is provided on when to use the SDK snippet versus the route snippet (generate_referral_route_snippet), HTTP snippet, or validation snippet siblings. The description lacks prerequisites, framework recommendations, or exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_referral_status_snippetGenerate referral status snippetCInspect
Generates code to fetch referral progress, rewards, or status.
| Name | Required | Description | Default |
|---|---|---|---|
| style | Yes | Style of code snippet: sdk uses the Payram SDK, backend-only shows direct API calls |
Output Schema
| Name | Required | Description |
|---|---|---|
| meta | Yes | |
| notes | No | |
| title | Yes | |
| snippet | Yes |
Tool Definition Quality
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 'generates code' but omits critical behavioral details: what programming languages are supported, what the output schema contains, whether files are written to disk, or authentication requirements for the generated code.
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 redundancy. However, extreme brevity becomes a liability given the tool's position among many siblings; a second sentence distinguishing its purpose would improve utility without sacrificing 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?
Despite having an output schema, the description provides insufficient context for agent selection. It omits the output format, doesn't clarify if this generates client-side or server-side code, and fails to map the 'style' parameter's impact on the resulting snippet 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?
The input schema has 100% description coverage for the 'style' parameter, which is fully documented in the JSON schema. The description adds no parameter-specific context, so it earns the baseline score of 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 clearly states the action (generates code) and the target functionality (fetch referral progress, rewards, or status). However, it fails to differentiate from siblings like generate_referral_sdk_snippet or generate_referral_route_snippet, which is critical given the crowded namespace of 50+ similar snippet generators.
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 provided on when to select this tool versus the dedicated SDK or route-specific generators. The existence of the 'style' parameter suggests flexibility, but the description doesn't explain when users should prefer this generic version over specialized alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_referral_validation_snippetGenerate referral validation snippetBInspect
Generates a snippet to validate referral IDs, statuses, and eligibility.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| meta | Yes | |
| notes | No | |
| title | Yes | |
| snippet | Yes |
Tool Definition Quality
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 but only states that it generates a snippet without clarifying the output format, programming language, whether the snippet is static or dynamic, or what 'validation' entails in terms of code structure or return 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 consists of a single efficient sentence that avoids redundancy and places the key action upfront. It is appropriately sized but borders on underspecified given the lack of behavioral context; however, every word earns its place without wasting space.
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?
While adequate for a zero-parameter tool that returns its payload via the output schema (documented separately), the description lacks necessary context about the snippet's programming language, framework, or structural format that would fully prepare an agent to utilize the generated output effectively amidst similar tools.
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 contains zero parameters, which establishes a baseline score of 4 per the rubric. The description appropriately requires no additional parameter clarification since there are no inputs to document, though it does implicitly confirm no configuration is needed for the validation logic.
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 the specific verb 'Generates' and clearly identifies the resource as a validation snippet for referrals. It distinguishes itself from siblings like generate_referral_route_snippet and generate_referral_sdk_snippet by specifying the validation scope covers IDs, statuses, and eligibility specifically, rather than routing or SDK integration.
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 invoke this tool versus the numerous sibling snippet generators (e.g., generate_referral_sdk_snippet, generate_referral_route_snippet, or generate_referral_status_snippet), nor does it mention prerequisites, required context, 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.
generate_setup_checklistGenerate Payram Setup ChecklistBInspect
Returns a step-by-step checklist of everything a merchant must configure to start using Payram.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| items | Yes | |
| notes | No | |
| title | Yes | |
| description | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full disclosure burden. While 'Returns' correctly implies a read-only operation, the description omits other behavioral traits such as authentication requirements, whether the checklist is static or dynamic, caching behavior, or prerequisites like merchant ID 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?
The description is a single, front-loaded sentence with no waste. The key action ('Returns') appears first. However, it could earn a 5 by including sibling differentiation or usage guidance within the same sentence structure.
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 empty input schema and existence of an output schema (as indicated in context signals), the description adequately covers the basic operation. However, the high density of sibling setup tools creates a gap in contextual completeness regarding how this checklist relates to the actual onboarding 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?
The input schema contains zero parameters (empty object). Per the rubric, zero parameters establishes a baseline score of 4, as there are no parameter semantics to clarify beyond what the 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 description uses the specific verb 'Returns' with resource 'step-by-step checklist' and scope 'everything a merchant must configure to start using Payram.' It clearly identifies the target user (merchants) distinguishing it from agent-focused siblings like 'get_agent_setup_flow', but does not explicitly differentiate from other setup-related tools like 'onboard_agent_setup' or 'scaffold_payram_app'.
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 the numerous setup-related alternatives (e.g., 'onboard_agent_setup', 'scaffold_payram_app', 'prepare_payram_test'). Given the high sibling density in the setup/configuration domain, explicit selection criteria are needed but absent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_webhook_event_routerGenerate Payram webhook event routerBInspect
Generates a backend event router that dispatches Payram webhook events to domain handlers.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| meta | Yes | |
| notes | No | |
| title | Yes | |
| snippet | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden but only partially delivers. It discloses the dispatching behavior ('dispatches...to domain handlers') but omits critical behavioral details: what format the generation produces (code, config, JSON), whether it is idempotent, or if there are 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?
Single dense sentence is front-loaded with the action verb. While efficiently structured, the extreme brevity (9 words after the initial clause) is insufficient to cover necessary behavioral context given the lack of annotations and sibling tool differentiation.
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?
Adequate for identifying the tool's core purpose but incomplete given complexity. Lacks expected details for a generation tool: output language/format, architecture pattern specifics, or relationship to webhook handlers. Presence of output schema excuses return value explanation, but usage context remains thin.
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 contains zero properties. Per evaluation rules, zero parameters establishes a baseline score of 4. The description requires no parameter clarification, though it could have elaborated on why no inputs are needed (e.g., generates template).
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?
Clear verb ('Generates') and resource ('backend event router') with specific functional detail ('dispatches Payram webhook events to domain handlers'). Distinguishes implicitly from sibling 'generate_webhook_handler' by defining the router's dispatching role, though explicit comparison is absent.
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 provided on when to invoke this versus similar sibling tools like 'generate_webhook_handler' or code snippet generators. No mention prerequisites or setup requirements despite being a generation tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_webhook_handlerGenerate Payram webhook HTTP handlerCInspect
Generates backend code to handle Payram webhook HTTP requests.
| Name | Required | Description | Default |
|---|---|---|---|
| framework | Yes | Web framework for the webhook handler code |
Output Schema
| Name | Required | Description |
|---|---|---|
| meta | Yes | |
| notes | No | |
| title | Yes | |
| snippet | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With zero annotations provided, the description carries the full disclosure burden but reveals almost nothing about behavioral traits. It does not specify what the generated code includes (signature verification, error handling, parsing logic) or what format the output takes (complete file vs. snippet).
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 single sentence is appropriately concise and front-loaded with the action. However, it is arguably underspecified for the complexity of webhook integration (security considerations, framework differences), suggesting brevity may have been prioritized over completeness.
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?
Despite having an output schema (reducing description obligations), the tool competes with 10+ similar code generation siblings in the same namespace. The description fails to establish its unique value proposition or explain Payram-specific webhook requirements (e.g., signature verification) that the generated code presumably handles.
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 only one parameter, meeting the baseline expectation. The description adds no semantic depth beyond the schema's 'Web framework for the webhook handler code' definition, but the schema adequately documents the enum options.
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 the basic action (generates backend code) and domain (Payram webhooks), but fails to distinguish from similar siblings like 'generate_webhook_event_router' or the various 'snippet_*' tools. Agents cannot determine when to choose this over framework-specific snippet tools without additional context.
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 provided on when to use this tool versus the numerous code generation alternatives (snippet_express_payment_route, generate_webhook_event_router, etc.). No mention of prerequisites like needing a Payram account or webhook endpoint URL.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_agent_setup_flowGet Agent Setup FlowAInspect
Returns the step-by-step setup flow for deploying PayRam as an agent. Covers install, wallet creation, faucet funding, contract deployment, and first payment. Includes chain recommendations (ETH Sepolia for testnet, Base for mainnet), faucet URLs, card-to-crypto prerequisites, and status/recovery commands for interrupted sessions.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| title | Yes | |
| markdown | Yes | |
| description | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. Excellently compensates by disclosing specific content scope (faucet URLs, card-to-crypto prerequisites), chain recommendations, and edge case handling ('status/recovery commands for interrupted sessions'). 'Returns' implies read-only, though explicit safety declaration would strengthen further.
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 tightly-constructed sentences: purpose declaration, coverage enumeration, and additional resources. Zero redundancy despite high information density. Front-loaded with the essential verb and resource type.
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?
Comprehensive coverage of what the setup flow contains (specific chains, faucet sources, recovery scenarios) despite the existence of an output schema. For a zero-parameter retrieval tool, the description provides exceptional context about the returned payload's structure and content domains.
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 contains zero parameters (empty object with additionalProperties: false). With no parameters requiring semantic explanation, the baseline score of 4 applies as per evaluation rules.
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 ('Returns') + resource ('step-by-step setup flow for deploying PayRam as an agent') clearly identifies this as a retrieval tool. The detailed content list (faucet URLs, chain recommendations, recovery commands) distinguishes it from sibling 'onboard_agent_setup' (which likely performs actions) and 'generate_setup_checklist' (which produces templates).
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 context through extensive content enumeration (install, wallet creation, contract deployment, specific chains like ETH Sepolia/Base), allowing agents to infer this is for documentation retrieval. Lacks explicit 'when to use vs onboard_agent_setup' guidance, but the 'Returns' framing and content details make the retrieval vs. execution distinction clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_daily_volumeGet Daily VolumeAInspect
Returns the total payment volume for a given date, with breakdowns by network and currency. Only counts FILLED (completed) payments. Defaults to today if no date is specified.
| Name | Required | Description | Default |
|---|---|---|---|
| date | No | Date in YYYY-MM-DD format. Defaults to today (UTC). | |
| externalPlatformId | No | Optional. Auto-discovered from your account if omitted. |
Output Schema
| Name | Required | Description |
|---|---|---|
| date | Yes | |
| byNetwork | Yes | |
| byCurrency | Yes | |
| totalPayments | Yes | |
| totalVolumeUSD | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses that only FILLED payments are counted, defaults to today, and the externalPlatformId is optional and auto-discovered. It does not mention rate limits, authentication, or error handling, but is adequate for a read-only 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?
Two sentences, each adding critical information. They are front-loaded with the main purpose, then detail on default behavior. 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?
Given that an output schema exists (so return values are documented), the description covers purpose, filtering criteria, defaults, and parameter semantics thoroughly. It is complete for a straightforward volume retrieval 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%, and the description adds significant value: date format YYYY-MM-DD, default to today, and externalPlatformId is optional with auto-discovery. This is informative 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?
The description clearly states it returns total payment volume for a given date with breakdowns by network and currency, and specifies that only FILLED payments are counted. This is a specific verb+resource that distinguishes it from siblings like get_payment_summary.
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 clear context: defaults to today if no date is specified, and only counts completed payments. However, it does not explicitly state when to use this tool versus alternatives like search_payments or get_payment_summary.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_payment_summaryGet Payment SummaryAInspect
Returns payment counts: total, open, closed, and cancelled. Useful for a quick overview of payment activity.
| Name | Required | Description | Default |
|---|---|---|---|
| externalPlatformId | No | Optional. Auto-discovered from your account if omitted. |
Output Schema
| Name | Required | Description |
|---|---|---|
| openCount | Yes | |
| totalCount | Yes | |
| closedCount | Yes | |
| cancelledCount | Yes |
Tool Definition Quality
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 successfully communicates the aggregation nature (grouping by status), but omits other critical behavioral traits like real-time vs. cached data, permission requirements, or rate limiting that would help an agent understand operational constraints.
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, zero waste. The first sentence front-loads the core functionality (what counts are returned), and the second sentence justifies the use case (quick overview). Every word earns its place with no redundancy or 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?
Given the tool has only one optional parameter and an output schema exists, the description adequately covers the essentials without needing to detail return values. However, it could briefly acknowledge the platform scoping behavior implied by 'externalPlatformId' to fully contextualize the data 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?
With 100% schema description coverage for the single 'externalPlatformId' parameter (documented as optional and auto-discoverable), the schema speaks for itself. The description adds no parameter-specific guidance, meeting the baseline expectation when schema coverage is comprehensive.
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 ('Returns') and clearly identifies the resource as 'payment counts' with explicit categorization ('total, open, closed, and cancelled'). This aggregation focus effectively distinguishes it from siblings like 'search_payments' (likely detailed listing) and 'lookup_payment' (specific record retrieval).
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 'Useful for a quick overview of payment activity' provides implied usage context, suggesting it's for high-level dashboards rather than detailed investigation. However, it fails to explicitly contrast with 'search_payments' or state when NOT to use this versus alternative tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_payram_doc_by_idGet Payram Doc By IDAInspect
Returns the markdown for a Payram doc given its id, e.g. "features/payouts".
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| id | Yes | |
| url | No | |
| path | Yes | |
| markdown | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided. The description implies a read-only operation by stating 'returns the markdown', but does not explicitly confirm no side effects, auth requirements, or error behavior (e.g., if id is invalid). The description is minimal but not contradictory.
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 sentence with an example. No unnecessary words. Efficient and front-loaded.
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 retrieval tool with an output schema, the description is sufficient. It covers the essential information: what it does and what input is needed. No additional details about return values are necessary given the 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?
The input schema defines id with only type and minLength (0% description coverage). The description adds an example ('features/payouts') that clarifies the expected format, which is critical for correct usage.
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 (returns markdown), resource (Payram doc), and input (id). The example clarifies the expected format. It distinguishes from sibling list_payram_docs by focusing on a single doc retrieval.
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 example of the id format, guiding proper usage. However, it lacks explicit guidance on when to use this tool versus alternatives (e.g., list_payram_docs) or any prerequisites or limitations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_payram_linksPayram Important LinksBInspect
Surface official documentation, website, and community links.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| notes | No | |
| title | Yes | |
| sections | Yes | |
| description | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must fully disclose behavior. It states the tool 'surfaces' links, implying a read-only operation, but does not mention whether the links are static or dynamic, any rate limits, or what the output format is. The presence of an output schema is not acknowledged.
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, clear sentence with no unnecessary words. It is appropriately concise for a tool with no parameters, but could be slightly more informative about the scope of links.
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 description minimally covers the tool's purpose. While an output schema exists (relieving the need to describe return values), the description lacks context on when to use this tool versus siblings and does not hint at the variety or categorization of links. It is adequate but not comprehensive.
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 has zero parameters, and the input schema is empty. The description adds no parameter information because none is needed. Following the baseline for 0 parameters, a score of 4 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 uses a clear verb 'surface' and specifies the resource as 'official documentation, website, and community links.' It effectively distinguishes from sibling tools like get_payram_doc_by_id which focuses on a single document, and list_payram_docs which lists all docs. However, it could be slightly more specific about what constitutes 'important links.'
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 such as get_payram_doc_by_id or list_payram_docs. The user is left to infer usage from the tool name and description alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_referral_dashboard_guideReferral Dashboard GuideAInspect
Explain how to embed and manage the referral dashboard experience.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| notes | No | |
| title | Yes | |
| sections | Yes | |
| description | No |
Tool Definition Quality
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. The verb 'explain' implies a read-only instructional output, but the description does not specify side effects, permissions, or output format. The presence of an output schema may compensate, but the description itself is minimal.
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 that conveys the core purpose without any superfluous words. It is efficiently structured for quick agent parsing.
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 (no parameters) and the presence of an output schema, the description is minimally adequate. However, it could benefit from elaborating on what 'manage' entails or what aspects of the dashboard are covered, especially to differentiate it from similar sibling tools.
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 has zero parameters, so the baseline is 4. The description does not need to add parameter information, and the schema coverage is trivially 100%.
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's purpose with a specific verb 'explain' and a distinct resource 'referral dashboard experience'. It effectively distinguishes itself from sibling tools like 'explain_referral_flow' or 'explain_referrals_basics' by focusing on embedding and managing the dashboard.
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. It does not mention prerequisites, context, or exclusions, leaving the agent without sufficient decision-making information.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_unswept_balancesGet Unswept BalancesAInspect
Returns unswept (unsettled) balances across all wallets, broken down by blockchain and currency. Shows sweep readiness status for each entry (sweep, sweep_in_progress, sweep_not_allowed, no_balance).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| balances | Yes | |
| totalWallets | Yes |
Tool Definition Quality
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 effectively documents the behavioral states of the returned data (the four sweep statuses) and implies read-only nature via 'Returns.' Missing explicit statements about safety, idempotency, or real-time vs cached data that annotations would typically cover.
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 zero waste. First sentence establishes scope and resource; second sentence enumerates status values. Information is front-loaded and every clause 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 existence of an output schema and zero input parameters, the description appropriately focuses on documenting the sweep status enum values and data structure. Complete for a simple read-only data retrieval tool, though explicit mention of read-only safety would strengthen 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?
Input schema has zero parameters. Per rubric baseline for zero parameters is 4. The description correctly requires no additional parameter clarification since the tool takes no 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?
Uses specific verb 'Returns' with clear resource 'unswept (unsettled) balances' and scope 'across all wallets, broken down by blockchain and currency.' The parenthetical clarification '(unsettled)' explains domain terminology, and the focus on sweep readiness distinguishes it from sibling payment/volume 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?
Provides implicit usage context by enumerating sweep readiness statuses (sweep, sweep_in_progress, etc.), hinting at when the tool is relevant for settlement operations. However, lacks explicit guidance on when to use this versus get_daily_volume or get_payment_summary for financial reporting.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_currenciesList Supported CurrenciesAInspect
Lists every blockchain currency PayRam supports on this node (chain code, network, currency code). Public endpoint — works with only PAYRAM_BASE_URL set, no API key or JWT required. Use this to discover valid blockchainCode/currencyCode values before creating payments or payouts.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| count | Yes | |
| currencies | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses the public nature and no credential requirement. Though it doesn't mention pagination or rate limits, the tool has no parameters and an output schema exists, making further detail unnecessary.
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 primary purpose and followed by usage advice. No extraneous 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 list tool with no parameters and an output schema, the description fully covers purpose, usage context, and key behavioral trait (public). No 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 has zero parameters, so the baseline is 4. No parameter documentation is needed; the description adds no param info but that's 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 lists every blockchain currency supported on the node, specifying the output fields (chain code, network, currency code). It is distinct from sibling tools, which focus on payments, payouts, referrals, etc.
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 advises using this tool to discover valid values before creating payments or payouts, and notes it is a public endpoint requiring only PAYRAM_BASE_URL. No alternative tools are needed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_payram_docsList Payram DocsAInspect
Lists the available Payram doc ids relative to docs/payram-docs-live. Optionally scope by a prefix such as "features".
| Name | Required | Description | Default |
|---|---|---|---|
| prefix | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| docs | Yes | |
| count | Yes | |
| prefix | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden for behavioral disclosure. It only states a listing operation with no mention of authentication requirements, rate limits, or output characteristics (e.g., format, pagination). As a read operation, it is not destructive, but the description lacks depth.
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 extremely concise with two sentences, no redundancy, and front-loaded purpose. Every word serves a function.
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 listing tool with one optional parameter, the description covers the core function and scoping. It could mention the output is a list of IDs, but since an output schema exists (though not shown), this is acceptable.
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 has no description for the 'prefix' parameter (0% coverage). The description adds meaning by explaining it is optional for scoping and provides an example ('features'), which compensates for the schema gap.
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 explicitly states it lists available Payram doc ids relative to a specific path, with optional prefix scoping. This clearly indicates the tool's purpose and distinguishes it from siblings like get_payram_doc_by_id which retrieves a single document.
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 an example of using the prefix parameter ('features'), but does not explicitly state when to use this tool versus alternatives such as get_payram_doc_by_id or explain_payram_basics. It leaves usage context implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_platformsList PlatformsAInspect
Lists all external platforms (projects) for the authenticated user. Use this to discover your platform ID, which other tools auto-resolve if omitted.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| count | Yes | |
| platforms | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It mentions authentication scope but lacks disclosure of behavioral traits like pagination, rate limits, error conditions (e.g., no platforms found), or caching. However, it does clarify the functional purpose (ID discovery) beyond a tautological 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?
Two sentences with zero waste. First sentence establishes function; second sentence establishes usage context. Information is front-loaded and 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?
Appropriate for a simple zero-parameter listing tool. Output schema exists (per context signals), so return values need not be described. Description adequately covers intent and usage context, though a brief note on what constitutes a 'platform' in this ecosystem would elevate it to 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?
Zero parameters present, establishing baseline 4 per rubric. The description correctly implies no filtering is available (lists 'all' platforms), which aligns with 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?
Specific verb 'Lists' with clear resource 'external platforms (projects)' and scope 'for the authenticated user'. The parenthetical clarification that platforms are projects adds precision, and mentioning that other tools 'auto-resolve' the platform ID distinguishes this discovery tool from sibling utilities.
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 states when to use: 'Use this to discover your platform ID'. It also clarifies relationship to alternatives by noting other tools auto-resolve the ID if omitted, implying this is primarily for explicit ID discovery rather than mandatory pre-flight calls.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_recipientsList Payout RecipientsAInspect
Lists saved withdrawal recipients (payout beneficiaries). Use this to find a recipient ID for the 3-step payout flow, or to check whether a beneficiary is already OTP-verified (status "active") before creating a payout.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| count | Yes | |
| recipients | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description implies a read-only operation (lists) and adds the behavioral detail that it returns status 'active' for OTP-verified beneficiaries. No negative traits mentioned, but none are expected for this 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?
Two sentences, front-loaded with action and resource, followed by usage context. 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?
Given no parameters, the description provides sufficient context for an agent to use the tool: it lists recipients with IDs and verification status. The output schema likely provides additional detail.
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%. The description adds no param-specific information, which is appropriate. Baseline 4 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 clearly states the tool lists saved withdrawal recipients (payout beneficiaries) and distinguishes its use for finding recipient IDs and checking OTP verification status, separating it from siblings like create_payment_link or generate_payout_sdk_snippet.
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 use cases are given (find recipient ID for payout flow, check OTP verification status). No explicit alternatives or exclusions, but the context is clear enough for a simple list tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lookup_paymentLookup PaymentBInspect
Look up payments by transaction hash, email, reference ID, customer ID, or invoice ID. Returns up to 5 matching payments with full details.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Search query: transaction hash, email address, reference ID (UUID), customer ID, or invoice ID. The backend auto-detects the query type. | |
| externalPlatformId | No | Optional. Auto-discovered from your account if omitted. |
Output Schema
| Name | Required | Description |
|---|---|---|
| payments | Yes | |
| totalCount | Yes |
Tool Definition Quality
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 adds valuable context about the result limit ('up to 5 matching payments') and output richness ('full details'), but omits other critical behavioral traits such as read-only nature, error handling when no matches are found, or rate limiting concerns.
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 consists of two highly efficient sentences. The first sentence front-loads the core functionality and query types; the second sentence clarifies the return value constraints. There is no redundancy or wasted 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 an output schema (per context signals) and relatively simple input structure (2 parameters), the description is sufficiently complete. It appropriately mentions the return behavior without duplicating the output schema. It could be improved by noting error cases or the specific advantage of using this over the search alternative.
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%, establishing a baseline of 3. The description reinforces the query parameter semantics by listing the searchable identifiers, but adds no additional context beyond what the schema already provides (e.g., no format examples, no clarification on the auto-detection logic mentioned in 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?
The description clearly states the verb (look up), resource (payments), and specific identifiers supported (transaction hash, email, reference ID, customer ID, invoice ID). However, it does not explicitly differentiate from the sibling tool `search_payments`, which could create ambiguity about when to use lookup versus search.
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, particularly `search_payments`. It also fails to mention prerequisites, error conditions, or when not to use the tool (e.g., when partial matching is needed).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
onboard_agent_setupGet Payram Agent Onboarding GuideAInspect
Returns the complete autonomous agent setup guide for deploying Payram without any web UI or human interaction.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| title | Yes | |
| markdown | Yes | |
| description | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full disclosure burden. 'Returns' signals a read operation, and 'complete' suggests comprehensive content, but it omits auth requirements, rate limits, output format details, or whether this requires prior project assessment (given `assess_payram_project` exists).
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 15-word sentence with zero waste. Front-loaded verb 'Returns', every qualifying phrase ('complete', 'autonomous', 'without any web UI') adds distinguishing value for sibling differentiation.
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?
Simple retrieval tool with output schema present, so return values need not be described. However, for an onboarding tool, it omits prerequisites (e.g., whether to run after `assess_payram_project`) and setup requirements that would complete the usage 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?
Zero parameters present. Per scoring rules, 0 params equals baseline score of 4. The schema is trivially complete with no additional semantic context needed from the 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?
The description uses specific verb 'Returns' with resource 'autonomous agent setup guide'. The phrase 'without any web UI or human interaction' effectively distinguishes this from UI-based setup tools in the sibling list (like `generate_setup_checklist` or scaffold tools). However, it doesn't explicitly differentiate from the similarly-named `get_agent_setup_flow` 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?
The description implies usage context through 'autonomous' and 'without any web UI', suggesting when to use it (agent deployments). However, it lacks explicit when-not guidance or naming alternatives like `get_agent_setup_flow` for non-autonomous setups.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
payram_doctorDiagnose a PayRam setup (one call)AInspect
Staged, read-only health diagnosis: server reachability -> merchant API key -> admin JWT -> payment readiness (wallets + listener workers). Returns ranked likely causes with exact fix commands for the first failing stage. Run this FIRST when anything PayRam-related fails.
| Name | Required | Description | Default |
|---|---|---|---|
| apiKey | No | Merchant API key (per-project). Defaults to PAYRAM_API_KEY. Obtain headlessly: ./setup_payram_agents.sh ensure-api-key | |
| baseUrl | No | PayRam server base URL. Defaults to PAYRAM_BASE_URL. The installer publishes on port 80 (http://localhost), not :8080. |
Output Schema
| Name | Required | Description |
|---|---|---|
| healthy | Yes | |
| findings | Yes | |
| nextSteps | Yes | |
| failedStage | Yes | First failing stage: reachability | api-key | jwt | readiness; null when healthy |
| likelyCauses | Yes | Ranked causes for the first failing stage |
Tool Definition Quality
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 clearly states the tool is read-only, staged, and returns 'ranked likely causes with exact fix commands for the first failing stage'. This fully discloses behavior and output format.
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 wasted words. The first sentence front-loads the most critical information (staged, read-only, diagnosis). Every phrase 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 two optional parameters, high schema coverage, and an output schema (implied but present), the description is complete. It covers purpose, usage, behavior, and output, leaving no obvious gaps for this diagnostic 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 both parameters described. The description adds value beyond schema by mentioning defaults (PAYRAM_API_KEY, PAYRAM_BASE_URL), a port detail (80 vs :8080), and a command to obtain the API key headlessly. This provides useful context.
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 is a 'staged, read-only health diagnosis' tool. It enumerates the specific stages (server reachability, merchant API key, admin JWT, payment readiness) and says to 'run this FIRST when anything PayRam-related fails', distinguishing it from other 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 says 'Run this FIRST when anything PayRam-related fails', providing clear when-to-use guidance. However, it does not explicitly state when not to use it or mention alternatives, though sibling tools exist. Slight deduction for lack of exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
prepare_payram_testPayram Test Readiness ChecklistAInspect
Confirm hosting, credentials, and environment variables before generating demo apps.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| notes | No | |
| title | Yes | |
| sections | Yes | |
| description | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description reveals the tool's purpose (checking readiness) but does not explicitly state it is non-destructive or read-only. Without annotations, the agent must infer that it only reads configuration. No details on what happens if checks fail or what the response looks like.
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 extremely concise: a single, clear sentence with no unnecessary words. It front-loads the key action and 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 zero parameters and an existing output schema, the description is minimal. It lacks information about the output format or what the tool returns (e.g., success/failure, missing items). For a check tool, more detail on the result would improve completeness.
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 in the input schema, and schema coverage is 100%. The description does not add parameter-level detail because there are none, meeting the baseline for full 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 action ('Confirm') and the resources (hosting, credentials, environment variables), providing a specific purpose. It is distinguished from siblings like 'check_payment_readiness' by the qualifier 'before generating demo apps', though not all siblings are explicitly 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 description implies usage before generating demo apps, which gives context. However, it does not specify when not to use this tool, nor does it mention alternative tools (e.g., test_payram_connection) for other scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
restart_payram_workerRestart PayRam WorkerAInspect
REMEDIATION ACTION (write): restarts a blockchain listener worker via supervisor — the minimal fix when check_node_sync reports a chain as lagging or listener-down. Workflow: run check_node_sync first → restart the named worker → wait ~60s → run check_node_sync again to confirm recovery. A restart does NOT fix an unreachable RPC (fix the RPC config in the dashboard instead). Requires admin JWT with write_system_settings.
| Name | Required | Description | Default |
|---|---|---|---|
| all | No | Restart ALL workers. Use only when multiple chains are unhealthy. | |
| worker | No | Worker to restart: a chain code ('BASE', 'ETH', 'BTC', 'TRX', 'POLYGON' → restarts that chain's listener) or a full worker name ('base-listener'). Omit when using all=true. |
Output Schema
| Name | Required | Description |
|---|---|---|
| message | Yes | |
| restarted | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses the write nature, required permissions (admin JWT with write_system_settings), expected workflow, and limitation regarding RPC issues. However, it does not detail potential side effects like temporary service disruption or idempotency, which would make it fully transparent.
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 sentence followed by a structured workflow and exclusion note. Every sentence provides essential information with no 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?
Given the tool's simplicity (2 params, no enums) and the presence of an output schema, the description covers purpose, usage, workflow, limitations, and authorization, making it complete for an agent to 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%, and the description adds significant value beyond the schema: it clarifies that 'worker' accepts chain codes or full names (with examples), and that 'all' is for restarting all workers when multiple chains are unhealthy.
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 explicitly states the verb ('restarts') and resource ('blockchain listener worker via supervisor'), and distinguishes from sibling tools like check_node_sync by framing it as a remediation action for when check_node_sync reports lagging or listener-down.
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 clearly states when to use (when check_node_sync reports lagging or listener-down), provides a step-by-step workflow (run check_node_sync first, restart, wait, verify), and explicitly notes when not to use (does not fix unreachable RPC, use dashboard instead).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
scaffold_payram_appScaffold Payram Payments & Payouts AppAInspect
Generates a minimal full-stack app skeleton with Payram payments and payouts routes (and a simple UI) for a chosen language and framework.
| Name | Required | Description | Default |
|---|---|---|---|
| appName | No | Name for the generated application. If not provided, defaults to payram-{framework}-starter | |
| language | Yes | Programming language for the application (node for JavaScript/TypeScript) | |
| framework | Yes | Web framework to use for scaffolding the application | |
| includeWebhooks | No | Whether to include webhook handler code in the scaffolded application |
Output Schema
| Name | Required | Description |
|---|---|---|
| files | Yes | |
| appName | Yes | |
| language | Yes | |
| framework | Yes | |
| instructions | Yes |
Tool Definition Quality
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 adequately describes what gets created (routes, UI) but omits how the scaffold is delivered (file contents vs archive vs written to disk), whether generation is idempotent, or any side effects. The mention of 'minimal' and 'simple UI' provides some behavioral 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?
The single sentence is information-dense with zero waste. Key modifiers ('minimal', 'simple UI', 'full-stack') are front-loaded and specific. Every clause earns its place by clarifying scope or deliverables.
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 an output schema (which handles return value documentation) and the comprehensive input schema, the description successfully covers the tool's purpose. However, for a scaffolding tool with significant side-effect potential, it could briefly note whether it performs file system operations or returns in-memory structures.
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%, establishing a baseline of 3. The description mentions 'for a chosen language and framework' which aligns with the required parameters, but adds no additional semantic detail about parameter interactions, valid combinations (e.g., node→express/nextjs), or formatting 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 clearly states the action ('generates'), resource ('minimal full-stack app skeleton'), and scope ('Payram payments and payouts routes' plus UI). However, it does not explicitly distinguish this from the 20+ snippet/route generator siblings, which all generate code. While 'app skeleton' implies broader scope, explicit differentiation would strengthen this.
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 through 'full-stack app skeleton' (suggesting complete project setup), but provides no explicit guidance on when to choose this over the numerous snippet generators (e.g., 'use this when bootstrapping a new project, not when adding to existing code'). Usage is inferred from scope but not stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_paymentsSearch PaymentsAInspect
Search and filter payments with full control over status, network, currency, dates, webhook status, and pagination. Returns a paginated list of matching payments.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Number of results per page. Defaults to 50. | |
| query | No | Free-text search: tx hash, email, reference ID, customer ID, or invoice ID. | |
| dateTo | No | End date filter (ISO 8601, e.g. 2024-12-31T23:59:59Z). | |
| offset | No | Pagination offset. Defaults to 0. | |
| sortBy | No | Sort field. Valid: created_at, updated_at, payment_status, currency, network, block_id, from_address, to_address, invoice_id, reference_id, customer_id, email, created_by. | |
| network | No | Filter by blockchain network (e.g. BTC, ETH, TRX, BASE, POLYGON). | |
| currency | No | Filter by currency code (e.g. USDC, USDT, BTC, ETH, TRX, CBBTC). | |
| dateFrom | No | Start date filter (ISO 8601, e.g. 2024-01-01T00:00:00Z). | |
| createdBy | No | Filter by creator type. | |
| paymentStatus | No | Filter by payment status (FILLED = completed). | |
| sortDirection | No | Sort direction. Defaults to DESC. | |
| webhookStatus | No | Filter by webhook delivery status. | |
| externalPlatformId | No | Optional. Auto-discovered from your account if omitted. |
Output Schema
| Name | Required | Description |
|---|---|---|
| limit | Yes | |
| offset | Yes | |
| showing | Yes | |
| payments | Yes | |
| totalCount | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It discloses pagination and high-level filter categories but omits behavioral traits such as read-only nature, authentication requirements, rate limits, or response structure beyond pagination. For a 13-parameter tool, this is minimal 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?
Two sentences, no filler, front-loaded with action and resource. Every word earns its place, making it easy to scan quickly.
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 complexity (13 parameters, output schema present), the description adequately covers the core purpose and key filters. The existing output schema handles return details. However, a brief usage example (e.g., 'Find all payments in a date range') would improve completeness for an agent.
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 detailed parameter descriptions, so the description adds limited semantic value beyond listing filter categories (status, network, currency, dates, webhook status, pagination). The baseline of 3 is appropriate as the description does not significantly enhance understanding of 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 specifies the verb 'search and filter' and the resource 'payments', enumerating specific filter dimensions (status, network, currency, dates, webhook status, pagination) and the return type (paginated list). This differentiates it from sibling tools like lookup_payment (single payment) and generate_payment_* snippets.
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 via keywords like 'search and filter' and 'full control', but does not explicitly state when to use this tool versus alternatives (e.g., lookup_payment, list_currencies) or when not to use it. No exclusions or prerequisites are mentioned, leaving the agent to infer context from sibling names.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
snippet_express_payment_routeExpress create-payment route snippetBInspect
Returns an Express router that posts to Payram's /api/v1/payment endpoint.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| meta | Yes | |
| notes | No | |
| title | Yes | |
| snippet | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool returns an Express router but doesn't explain what that router does beyond posting to an endpoint—missing details like authentication requirements, error handling, response format, or whether it's a read-only or mutative operation. For a tool with zero annotation coverage, this leaves critical behavioral traits undocumented.
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, efficient sentence that front-loads the key information: what the tool returns and its purpose. There's no wasted text, repetition, or unnecessary elaboration, making it highly concise and well-structured for quick comprehension.
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 (returning a router snippet), the description is minimally adequate. It lacks behavioral details (e.g., how the router integrates or handles errors), but the presence of an output schema reduces the need to explain return values. However, with no annotations and incomplete guidance on usage, it doesn't fully equip an agent for effective tool selection and invocation.
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 0 parameters with 100% coverage, so no parameter documentation is needed. The description doesn't add parameter details, which is appropriate. A baseline of 4 is applied since the schema fully handles parameters, and the description doesn't need to compensate for any gaps.
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's purpose: 'Returns an Express router that posts to Payram's /api/v1/payment endpoint.' It specifies the verb ('returns'), resource ('Express router'), and target action ('posts to Payram's /api/v1/payment endpoint'), making it easy to understand what the tool does. However, it doesn't explicitly differentiate from similar sibling tools like 'snippet_fastapi_payment_route' or 'snippet_nextjs_payment_route' beyond mentioning 'Express'.
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. It doesn't mention prerequisites, context (e.g., for Express.js projects), or exclusions. Given multiple sibling tools for different frameworks (e.g., FastAPI, Next.js, Laravel), the lack of comparative guidance is a significant gap, leaving the agent to infer usage based on the 'Express' keyword alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
snippet_fastapi_payment_routeFastAPI create-payment route snippetBInspect
Returns a FastAPI handler that calls Payram's create-payment HTTP API.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| meta | Yes | |
| notes | No | |
| title | Yes | |
| snippet | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It indicates the tool returns a handler, implying code generation, but fails to explicitly confirm this generates Python code rather than performing an actual payment operation. It also omits whether the operation is read-only (safe) or has 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 single sentence is efficiently structured with no redundant words. It immediately identifies what is returned (FastAPI handler) and its purpose (calls Payram's create-payment API), placing the most critical information first.
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 low complexity (zero input parameters) and existence of an output schema, the description covers the minimum required information. However, for a code generation tool among actual payment operation tools, it should explicitly confirm this performs code generation and indicate the output format (Python code string).
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 contains zero parameters, establishing a baseline score of 4. The description correctly implies no customization is needed for this particular snippet (consistent with the empty schema), though it could have mentioned that the output is parameterized for the user's specific credentials.
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 returns a FastAPI handler for Payram's create-payment API, specifying both the framework (distinguishing it from snippet_express_payment_route, snippet_go_payment_handler, etc.) and the operation (distinguishing it from payout or referral variants). It loses one point for not clarifying its relationship to the generic generate_payment_route_snippet 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?
The description provides no guidance on when to use this tool versus the other framework-specific variants (snippet_express_payment_route, snippet_spring_payment_controller) or the generic generator. It also doesn't indicate prerequisites like having Payram API credentials configured.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
snippet_go_payment_handlerGo (Gin) create-payment route snippetAInspect
Returns a Gin handler that proxies /api/pay/create to Payram's create-payment API.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| meta | Yes | |
| notes | No | |
| title | Yes | |
| snippet | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. States it 'Returns' a handler (read-only/generative behavior), but omits whether this modifies filesystem, idempotency, authentication requirements for the generated code, or rate limits. Adequate but minimal behavioral 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?
Single efficient sentence with zero redundancy. Framework, route path, and target API identified immediately without 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?
Appropriate for a zero-parameter tool with output schema present; description need not detail return structure. However, given the dense sibling ecosystem with similar snippet generators, lacks explicit guidance on selecting this specific variant over generic or SDK alternatives.
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 per input schema. Baseline 4 applies as there are no parameters requiring semantic explanation in the description text.
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 'Returns' with clear resource 'Gin handler' and scope 'proxies /api/pay/create to Payram's create-payment API'. Explicitly identifies 'Gin' framework, distinguishing it from sibling Express, Laravel, Spring, and FastAPI snippet 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?
Implies Go/Gin context by naming the framework, but provides no explicit when-to-use guidance (e.g., 'use when building Go applications') or when-not-to-use relative to generic generate_payment_route_snippet or SDK alternatives. Agent must infer from framework name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
snippet_laravel_payment_routeLaravel create-payment route snippetBInspect
Returns a Laravel controller that posts to Payram's /api/v1/payment endpoint.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| meta | Yes | |
| notes | No | |
| title | Yes | |
| snippet | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full disclosure burden. It conveys that the tool generates executable code (a controller) that performs POST requests to a specific endpoint, which is essential behavioral context. However, lacks details on code structure, dependencies, or side effects of the generated snippet.
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 sentence of 11 words with zero redundancy. Key information (framework, artifact type, endpoint) is front-loaded and immediately scannable.
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, absolving the description from detailing return structure. However, for a code generation tool, description lacks implementation details (e.g., validation logic, error handling patterns, Laravel version compatibility) that would contextualize the snippet's utility despite the presence of 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?
Zero parameters present, warranting baseline score of 4 per rubric. Description appropriately makes no parameter claims.
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?
Clear verb ('Returns') and resource ('Laravel controller'), with specific endpoint detail ('posts to Payram's /api/v1/payment endpoint'). Mentions 'Laravel' which distinguishes from siblings like snippet_express_payment_route, though itcould more explicitly contrast with the generic generate_payment_route_snippet.
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 no explicit guidance on when to use this versus alternative framework-specific snippet tools (Express, FastAPI, Spring, etc.) or the generic generator. No prerequisites or contextual conditions mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
snippet_nextjs_payment_routeNext.js create-payment route snippetBInspect
Returns a Next.js App Router API route that calls Payram's create-payment HTTP API.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| meta | Yes | |
| notes | No | |
| title | Yes | |
| snippet | Yes |
Tool Definition Quality
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 the tool 'returns' a snippet, implying a read-only operation, but doesn't disclose behavioral traits like whether it requires authentication, rate limits, or what the output format entails. The description is minimal and lacks context on how the snippet is generated or any constraints.
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, efficient sentence that front-loads the key information: it returns a Next.js API route snippet for Payram. There's no wasted text, and it directly addresses the tool's function without unnecessary details.
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 no input parameters, an output schema exists, and no annotations, the description is minimally complete. It states what the tool does but lacks context on usage, behavioral traits, or output specifics. For a snippet generator, more guidance on when and how to use it would improve completeness, but the basics are covered.
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 0 parameters with 100% coverage, so no parameter documentation is needed. The description doesn't add parameter semantics, which is appropriate here. A baseline of 4 is applied since no parameters exist, and the description doesn't mislead about 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?
The description clearly states the tool's purpose: 'Returns a Next.js App Router API route that calls Payram's create-payment HTTP API.' It specifies the verb ('returns'), resource ('Next.js App Router API route'), and target action ('calls Payram's create-payment HTTP API'). However, it doesn't explicitly differentiate from sibling tools like 'snippet_express_payment_route' or 'snippet_fastapi_payment_route' beyond mentioning Next.js.
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 is provided on when to use this tool versus alternatives. The description doesn't mention prerequisites, context (e.g., for Next.js projects), or comparisons to siblings like other snippet generators. Usage is implied by the tool name but not explicitly stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
snippet_spring_payment_controllerSpring Boot create-payment controller snippetAInspect
Returns a Spring Boot controller that calls Payram's /api/v1/payment endpoint.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| meta | Yes | |
| notes | No | |
| title | Yes | |
| snippet | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. States it returns a controller, indicating code generation behavior, but lacks details on code structure (complete class vs method only), required imports, or dependency requirements. The mention of the specific endpoint it calls adds useful behavioral 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?
Single, well-constructed sentence with zero redundancy. Front-loaded with the action ('Returns') and framework identifier, with the endpoint detail providing necessary precision without verbosity.
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?
Appropriate for a zero-parameter code generation tool. Specifies the framework, payment endpoint, and code type (controller). Given the existence of an output schema and simplicity of the operation, this provides sufficient context for selection, though mentioning it generates Java code would add marginal value.
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 zero parameters (empty object), triggering the baseline score of 4 per evaluation rules. No parameters require semantic clarification.
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?
Excellent specificity: identifies the exact framework (Spring Boot), resource type (controller), and target endpoint (/api/v1/payment). The explicit 'Spring Boot' naming clearly distinguishes this from sibling snippet generators for Express, FastAPI, Go, Laravel, and NextJS.
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 implied usage through framework-specific naming (Spring Boot), but lacks explicit guidance on when to choose this over generate_payment_sdk_snippet or generate_payment_http_snippet. No mention of prerequisites or when NOT to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
suggest_file_structureSuggest Payram File StructureBInspect
Suggests a recommended backend folder/file structure for integrating Payram.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| root | Yes | |
| notes | No | |
| title | Yes | |
| description | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description should disclose behavioral traits. It only says 'Suggests a recommended...' but does not explain what 'suggests' entails (e.g., returns a tree, text, or code; whether it modifies files; or any side effects). This is insufficient for an agent to understand the tool's 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 concise sentence that gets straight to the point. However, it could be slightly more structured with key information front-loaded. The brevity is acceptable but not exemplary.
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 no parameters and an output schema, the description could be more complete by hinting at the output or its relation to scaffolding. The current description is adequate but leaves the agent guessing about what 'suggested structure' means in practice.
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 are zero parameters and schema coverage is 100%, so the description does not need to add parameter details. The baseline of 4 is appropriate as the description adds no irrelevant information, but it also does not clarify that the tool takes no input, which is already evident from 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?
The description clearly states the tool's purpose: 'Suggests a recommended backend folder/file structure for integrating Payram.' The verb 'suggests' and specific resource 'backend folder/file structure' make the action and target unambiguous. This distinguishes it from sibling tools that focus on specific payment/referral operations or scaffolding.
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 usage guidance is provided. The description does not indicate when to use this tool versus alternatives like 'scaffold_payram_app' (which might create the structure). There are no hints about prerequisites, context, or conditions for invoking this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
test_payram_connectionTest Payram ConnectivityAInspect
Checks the /api/v1/payment endpoint on a Payram server using baseUrl and apiKey. If they are not provided, returns a .env template you can add to your workspace.
| Name | Required | Description | Default |
|---|---|---|---|
| apiKey | No | Your Payram API key from the dashboard. If not provided, uses PAYRAM_API_KEY from environment. | |
| baseUrl | No | The base URL of your Payram server (e.g., https://your-server.example). If not provided, uses PAYRAM_BASE_URL from environment. |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | Yes | |
| baseUrl | Yes | |
| statusCode | Yes | |
| errorMessage | No | |
| payramVersion | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses the fallback behavior (returning .env template) when credentials are unavailable, but omits other behavioral details like error handling on connection failure, timeouts, or whether the check is read-only.
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 tightly constructed sentences with zero redundancy. Front-loads the primary action ('Checks... endpoint') and relegates the edge case (fallback response) to the second sentence.
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 output schema exists (per context signals), the description appropriately focuses on the conditional logic ('returns template') rather than return value structure. Covers both the success path (checking endpoint) and the credential-missing path.
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%, establishing baseline 3. The description adds valuable behavioral context explaining that omission of these optional parameters triggers the .env template return, effectively documenting the tool's conditional logic beyond the schema's type definitions.
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 ('Checks') and identifies the exact resource ('/api/v1/payment endpoint'), clearly distinguishing this from siblings like 'assess_payram_project' (assessment vs connectivity) and 'prepare_payram_test' (setup vs execution).
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 conditional clause 'If they are not provided, returns a .env template' provides implicit guidance on credential requirements, but lacks explicit 'when to use vs alternatives' guidance (e.g., when to use this instead of 'generate_env_template' directly).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!