Skip to main content
Glama

Server Quality Checklist

67%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v1.0.0

  • Disambiguation5/5

    Each tool targets a completely distinct data domain: ENS registrations, gas fees, token unlocks, and oracle health. There is no overlap in purpose or arguments, so an agent can unambiguously select the right tool.

    Naming Consistency4/5

    All tool names are lowercase snake_case and clearly descriptive (ens_expiry, gas, token_unlocks, oracle_health). They are consistent in style, though they are noun phrases rather than a verb_noun pattern, so the naming is predictable but not strictly uniform.

    Tool Count5/5

    With 4 tools, the server is well-scoped for a focused blockchain data query service. Each tool is distinct and earns its place, and the count falls comfortably within the recommended range.

    Completeness4/5

    The tool surface covers a reasonable set of read-only blockchain data queries, but some common endpoints like block details or transaction status are missing. However, the included tools are each self-contained, and the gaps are not likely to cause significant failures for the intended use case.

  • Average 4.2/5 across 4 of 4 tools scored.

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

    • No community issues in the last 6 months
    • 1 commit in the last 12 weeks
    • No stable releases found
    • 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.

  • No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.

    Tip: use the "Try in Browser" feature on the server page to seed initial usage.

  • Add a glama.json file to provide metadata about your server.

  • If you are the author, simply .

    If the server belongs to an organization, first add glama.json to the root of your repository:

    {
      "$schema": "https://glama.ai/mcp/schemas/server.json",
      "maintainers": [
        "your-github-username"
      ]
    }

    Then . Browse examples.

  • Add related servers to improve discoverability.

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?

    With no annotations provided, the description carries the full burden. It discloses the read-only nature, the payment requirement via x402 (including a challenge flow), and the key behavioral aspects such as using public RPC and computing a stale flag. It does not mention error handling, rate limits, or exact return structure, but it covers the most important behaviors.

    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 detailed but well-organized, front-loading the cost and immediately enumerating the checks. It is somewhat long but information-dense. The listing of arguments repeats schema information, which could be trimmed, but the overall structure is readable and efficient.

    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 read-only health check with no output schema, the description covers core behaviors, payment flow, and optional parameters. However, it does not specify the output format (e.g., JSON shape) or behavior on invalid inputs (e.g., bad feed address or chain), which an agent might need for robust invocation. Given the tool's complexity, the description is fairly complete but leaves some gaps.

    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 coverage is 100%, so the schema already documents all five parameters in detail. The description adds limited extra semantics, primarily explaining the x_payment flow (omitting vs passing it) and noting optional parameters. This supplements the schema slightly but does not significantly enhance meaning beyond it.

    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 states the tool's purpose: assessing Chainlink price-feed health via public RPC, with a specific list of checks performed (last-update age, latest answer, round monotonicity, stale flag, deviation). It distinguishes from sibling tools by focusing on price feed health, and the read-only nature is explicit.

    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 implies usage (checking price feed health) and explains the payment flow (omit x_payment for challenge, pass it for result), but it does not provide explicit guidance on when to use this tool versus alternatives or when not to use it. It lacks comparative context for sibling tools like gas or token_unlocks.

    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 the full burden and does well: it discloses the paid nature, the on-chain read via public RPC, the read-only characteristic, and the exact return fields (expiry date, days-left, grace period, release date, owner). It also explains the 402 challenge behavior. However, it does not mention error scenarios (e.g., invalid name) or rate limits, leaving some behavioral gaps.

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

    Conciseness5/5

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

    The description is concise and front-loaded, immediately stating the paid nature and the tool's function. Each sentence serves a purpose: payment info, what it resolves, what it returns, read-only status, and the argument/payment flow. No wasted words.

    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?

    Even without an output schema, the description lists the key returned data (expiry date, days-left, grace period, release date, owner) and explains the payment/challenge mechanism. It is reasonably complete for a lookup tool of moderate complexity, though it omits potential error conditions or formatting details. Siblings being unrelated means differentiation is not urgent.

    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 input schema already provides 100% coverage with detailed descriptions for both parameters (name and x_payment). The description adds minimal extra meaning beyond restating the argument names and the payment flow, which the schema also explains. Thus, the schema carries the heavy lifting, so a baseline 3 is appropriate.

    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 states the tool resolves ENS .eth or Basename .base.eth registration expiry on-chain. It uses specific verbs ('Resolve', 'lookup') and names the resource ('registration expiry'), distinguishing it from sibling tools like gas, token_unlocks, and oracle_health, which address different domains.

    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 for usage: it is a paid read ($0.001 via x402), and explains the two-step flow (omit x_payment to get a challenge, supply it to settle and get the result). It does not explicitly discuss when not to use it or name alternative tools, but the context is sufficient given the unrelated siblings.

    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 full burden and does an excellent job. It discloses the paid nature, the read-only trait, and the key behavior of returning a challenge without payment. It also specifies what data is returned (base fee, suggested priority, suggested max fee) and the conditional boolean when below_gwei is set. There is no mention of rate limits or error cases, but the critical behaviors are transparent enough for an agent to know what to expect.

    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 compact and front-loaded with the crucial paid indicator. However, it includes a redundant 'Args: chain (...), below_gwei (optional)' line that repeats the schema, and it omits x_payment from that enumeration (though it is mentioned later). This slight redundancy and minor inconsistency prevent a perfect score, but the overall length and structure are efficient.

    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?

    Given there is no output schema, the description adequately explains the return values: gas fee components and the optional threshold boolean. It also clarifies the payment challenge behavior. It does not specify the exact output format (e.g., JSON structure), but the core outputs are described. The tool is relatively simple, and the description is sufficiently complete for an agent to invoke it correctly.

    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 schema description coverage is 100%, so the baseline is 3. The description adds some value by explaining the x_payment flow and the challenge/settle mechanism, but it does not add much beyond the schema: chain enum values are already listed, below_gwei's threshold behavior is already in the schema, and the 'Args' line is redundant. The parameter semantics are fully captured by the schema, so no upgrade beyond baseline.

    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 states what the tool does: 'Current gas for a chain via public RPC: base fee + suggested priority + suggested max fee (gwei) at the latest block.' This is a specific verb+resource combination that also differentiates from siblings like ens_expiry, token_unlocks, and oracle_health, which serve entirely different purposes. The tool's name 'gas' is fully explained.

    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: it explains the payment requirement ('PAID $0.001 (x402, USDC on Base)') and how to settle with x_payment, plus the fallback behavior ('Without payment returns the x402 challenge; pass x_payment to settle'). It does not name explicit alternative tools, but the sibling list makes the absence of competition clear, and the usage context is well-defined by the payment flow and read-only nature.

    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, the description carries the full behavioral disclosure. It specifies the payment requirement ($0.003, x402, USDC on Base), the read-only nature, the data source (DefiLlama public emissions), the 402 challenge flow, and the behavior for tokens without a public schedule. This is comprehensive and goes well beyond the schema.

    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 concise (about 100 words), front-loaded with the critical payment flag, then states the core function, data content, disclaimers, and argument details. Every sentence carries useful information without redundancy, making it easy to parse and act on.

    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, but the description enumerates the returned information (dates, amount, % supply, human description) and the no-public-schedule edge case. It also explains the payment protocol and argument behavior. This is complete for a read-only descriptive tool.

    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 baseline is 3. The description restates what the schema already documents (token symbol/protocol/address, chain for address lookup, x_payment purpose). It adds no meaningful semantic information beyond the schema, so a score of 3 is appropriate.

    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 states the tool's function: 'Next token vesting/unlock event(s)' with specifics about unlocking date, token amount, and % of max supply. It also distinguishes itself from siblings (ens_expiry, gas, oracle_health) by focusing on token unlocks and explicitly notes it is 'NOT a price signal.'

    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 gives clear context on when to use it (when you need upcoming unlock events) and when not to (it is not a price signal). It also explains the argument formats and the payment flow, though it does not explicitly name alternatives among sibling tools.

    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

fabtally-chain-mcp MCP server

Copy to your README.md:

Score Badge

fabtally-chain-mcp MCP server

Copy to your README.md:

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/zvmzaretsky/fabtally-chain-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server