Skip to main content
Glama
dinggi5

Kura

Server Quality Checklist

100%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v0.4.0

  • Disambiguation5/5

    Each tool has a distinct purpose: balances, history, wallet state, payment requests, agent lookup, and paid resource fetching. There is no meaningful overlap between them, and each description clearly scopes its responsibility.

    Naming Consistency4/5

    The get_* tools follow a consistent verb_noun pattern right away, and request_payment and lookup_agent also follow it. x402_fetch is slightly inconsistent with the others, but it remains recognizable and does not create real confusion.

    Tool Count5/5

    Six tools is well-scoped for a wallet/payment server: three read-only state queries, one payment request, one agent lookup, and one paid fetch. Each tool earns its place without redundancy.

    Completeness4/5

    The tool surface covers the core wallet operations an agent needs: checking balances, reading transaction history, requesting payments, fetching paid resources, and verifying agents. Minor gaps exist—such as no way to inspect limits or manage network settings—but those are user-controlled in the wallet app, so the set feels reasonably complete.

  • Average 4.5/5 across 6 of 6 tools scored. Lowest: 3.9/5.

    See the Tool Scores section below for per-tool breakdowns.

    • No community issues in the last 6 months
    • 89 commits in the last 12 weeks
    • Last stable release on
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI is passing
  • This repository is licensed under MIT License.

  • This repository includes a README.md file.

  • Tools from this server were used 6 times in the last 30 days.

  • This repository includes a glama.json configuration file.

  • This server has been verified by its author.

How to sync the server with GitHub?

Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.

To manually sync the server, click the "Sync Server" button in the MCP server admin interface.

How is the quality score calculated?

The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).

Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.

Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).

Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.

Tool Scores

  • Behavior4/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    There are no annotations, so the description carries the transparency burden. It discloses meaningful behavior: ordering, limit default, and the full status semantics, including x402-specific states and what settle_tx means. It doesn't describe error behavior or response container, but it goes well beyond a minimal definition.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    Three efficient sentences with no filler, and the most important outcome is front-loaded. The status enumeration is dense but justified because there's no output schema; structurally it's clean and scannable.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness4/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    For a simple one-parameter read tool with no output schema, the description supplies necessary context: what is returned, ordering, status vocabulary, and default limit. Some response-shape details are unstated, but the status enumeration compensates for the missing output schema.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    The only parameter, limit, is fully documented in the schema with default and max. The description adds 'Use limit to cap how many come back (default 20)', but this largely restates the schema and offers no material new semantic info.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description uses a concrete verb ('returns'), names the resource ('the active account's recent transaction attempts'), and explicitly includes ordering ('newest first'). This clearly distinguishes the tool from sibling get_balances/get_wallet_status without needing to inspect schemas.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines3/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The description makes the intended use inferable: when an agent needs recent transaction attempts of the active account. However, it doesn't explicitly say when not to use it, nor does it contrast alternatives like get_wallet_status or x402_fetch, so the usage guidance stays implicit rather than directive.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior4/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations, the description carries full responsibility. It discloses the absence of the `eth` field on Arc and warns against summing balances, plus states the error condition (no wallet). It does not explicitly state that the operation is read-only, but 'Reads' implies non-mutation. It is transparent but could explicitly mention read-only to be fully clear.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is moderately sized but every sentence adds value. The core purpose is front-loaded, and the critical caveat about Arc is included without unnecessary elaboration. It could be slightly more compact, but the detail is justified given the network-specific behavior.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness5/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    For a zero-parameter read tool with no output schema, the description provides essential behavioral context: what fields to expect, the special case for Arc, and the failure condition. An agent can predict the return shape and understand the cross-chain nuance without additional documentation. This is complete for its complexity.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters4/5

    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 has no burden to explain parameters. The baseline for no-param tools is 4, and the description correctly focuses on what the tool returns rather than input semantics.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly identifies the tool as reading two balance types (USDC and gas token) for the active account on the active network, with specific chain names. It distinguishes itself from sibling tools by its focus on balances only, and the mention of the `eth` field and its absence on Arc adds precision.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines4/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    While it does not explicitly list alternatives or exclusion scenarios, it provides strong contextual cues (active account, active network, chain-specific behavior) that imply when to use it. The note about never adding USDC and gas on Arc is a critical usage guideline, but it does not state when to prefer other tools like get_history or get_wallet_status. Slightly short of perfect guidance.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior5/5

    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 thoroughly walks through the GET request, handling of a 402 response, user approval, EIP-3009 signature construction, and re-request with the X-PAYMENT header. It also discloses approval defaults, autopay behavior, per-payment and daily limits, the emergency lock, and explicitly warns never to send a password as an argument. This is exemplary transparency for a complex payment-flow tool.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness5/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is dense but every sentence earns its place: purpose, flow, fallback, approval behavior, safety warning, argument summary, and return values. It is front-loaded with the core action and reads naturally despite covering a multi-step process. The length is justified by the complexity of the tool.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness4/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    The description explains the full behavior, safety constraints, and return fields, which is important given the absence of an output schema. It lists the returned keys (paid, status, http_status, body, amount/pay_to/settlement). However, it does not detail error cases such as user rejection, network failures, or the distinction between status and http_status, leaving minor gaps for a tool with this complexity.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema description coverage is 100%, so the schema already documents all three parameters in detail. The description adds a small amount of context for memo ('the user reads it to decide'), but it does not add meaningful semantics for url or agent_id beyond what the schema provides. The baseline of 3 is appropriate because the schema does the heavy lifting.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The opening sentence states a specific verb and resource: 'Fetches an x402 paid resource (a URL).' It then describes the full fetch-and-pay flow, making the tool's purpose unmistakable. It is clearly distinct from sibling tools like get_balances or get_history, and it references request_payment only to clarify the approval mechanism, not the core purpose.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines4/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The description makes it clear that this tool is for fetching a URL that may trigger a payment, and it explains what happens when no payment is required. It references request_payment for approval behavior, which implicitly signals the sibling relationship, but it does not explicitly state when to choose x402_fetch over request_payment or other alternatives. No exclusions or when-not-to-use guidance is given, but the context is clear.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior4/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    No annotations are provided, so the description must carry the full burden of behavioral disclosure. It states 'No password needed — read only', discloses state value semantics, and clarifies that account switching can only be done by the user. These are valuable non-obvious behaviors for an agent. It falls short of 5 only by not mentioning error cases or what happens when no wallet is present, but for this simple read the disclosure is quite adequate.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness5/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is about 85 words and front-loads the core action then clarifies the fields. Every sentence contributes: the state vs. address, the accounts list, the active-account context, and the read-only note. There is no filler. One minor phrasing in 'state is encrypted (normal), legacy, or none' could be clearer, but it does not materially hurt readability.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness5/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    With no output schema, this description is the complete contract for what the tool returns. It defines the 'state' enum, 'address', 'accounts' with index/address/label, and 'account' as active index. It also weaves in why this matters for sibling tools and that the user alone can switch accounts. For a parameter-less read-only status call, this is complete enough.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters4/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    This tool takes 0 parameters and the schema is complete (empty). With no parameters, the description does not need to add parameter meaning. The parameter_semantics baseline for 0 params is thus a 4, and the description has no unnecessary parameter-related bloat.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description explicitly states the verb and resource: 'Returns the wallet's state and address.' It then enumerates exactly which fields are returned (state, address, accounts, account) and even gives possible state values. It differentiates itself from sibling tools by noting that balances, history, and payment requests all use the active account, making clear why this wallet-status read is distinct.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines4/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The description provides clear context: 'Balances, history, and payment requests all use the active account, and only the user can switch accounts, in the wallet app.' That tells an agent this tool supplies the account context needed before or alongside the sibling calls. It does not explicitly say 'call this before get_balances/get_history/request_payment', nor does it name the alternatives, so it stops short of a full when/when-not instruction.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior5/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations provided, the description carries the full behavioral disclosure burden and does so thoroughly. It states the operation is read-only and on-chain only, clarifies that the wallet does not fetch the website, enumerates the returned fields, and prominently warns about the trust implications of permissionless registration and feedback. This exceeds typical descriptions in transparency.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is long but front-loaded with the core purpose and then systematically covers parameters, return values, and safety caveats. Every sentence adds information, but the length is near the upper bound for a tool definition; some of the caveat text could arguably be tightened. Still, structure is logical and skimmable.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness5/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Despite having no output schema and no annotations, the description gives a complete picture: what the tool does, which network it operates on, what parameters do, what is returned, and how to interpret the results safely. The warning about trusting the agent number source and the permissionless nature of registration is critical context that would otherwise be missing. Nothing essential for correct invocation or interpretation is omitted.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters4/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    The input schema already covers 100% of the parameters with descriptions, so the baseline is 3. The description adds meaningful value by explaining agent_id as 'the agent's number in the Identity Registry' and by clarifying that pay_to and resource trigger comparisons against the registered wallet and on-chain domain. This goes beyond the schema's field-level descriptions.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description opens with a specific verb and resource: 'Reads an agent's ERC-8004 record from the registry on the active Base network.' It clearly distinguishes itself from sibling tools by explicitly noting it is read-only, on-chain only, and never fetches the agent's website, which separates it from x402_fetch and the balance/history tools.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines4/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The description makes the usage context clear: call it with an agent_id to read the registry record, and optionally pass pay_to/resource for comparisons. It also gives important guidance about when the result is meaningful, warning that registration is permissionless and only a mismatch is a strong signal. It does not explicitly name sibling alternatives or state 'use this instead of X', but the context is sufficiently clear.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior5/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations present, the description carries the full burden of explaining side effects cell. It discloses the approval window, the 5-minute wait, the autopay exception, app-enforced per-payment and emergency-lock limits, and the security-relevant fact that passwords must never be supplied.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is dense and front-loaded with the core action before moving into details.example. The parameter walk-through is efficient, though the long middle sentence about autopay could be slightly better structured.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness5/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    The tool has no output schema, yet the description states the return shape: status, tx hash, and explorer link. Context such as user-approval flow, timeouts, limits, autopay exceptions, and parameter usage is all present, making the tool safely callable without additional documentation.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters5/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Even though schema coverage is high, the description adds meaning beyond parameter names: token defaults to USDC, amount is a decimal string, memo is user-facing, and agent_id is used to verify the recipient's registered wallet address. It also tells the agent that password is not a valid argument.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The first sentence, 'Asks the user to make a payment,' clearly identifies the tool's action and target, and the rest of the description clarifies that it initiates a user-approved payment rather than sending funds directly. It is unambiguous and distinct enough from the sibling tools.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines5/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The description gives explicit operational guidance: always fill in the memo because the user reads it, supply agent_id only if a service provided it, and never pass a password as an argument. It also clarifies when automatic approval is possible versus when user approval is required.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

GitHub Badge

Glama performs regular codebase and documentation scans to:

  • Confirm that the MCP server is working as expected.
  • Confirm that there are no obvious security issues.
  • Evaluate tool definition quality.

Our badge communicates server capabilities, safety, and installation instructions.

Card Badge

Kura MCP server – quality and maintenance score on Glama

Copy to your README.md:

Score Badge

Kura MCP server – quality and maintenance score on Glama

Copy to your README.md: