@ordinal402/ordinal-mcp
Server Quality Checklist
Latest release: v0.1.0
- Disambiguation5/5
Each tool targets a distinct action: browsing, inspecting, trying, calling, checking payment status, and checking wallet identity. The try_service versus call_service distinction is clearly drawn by payment and settlement semantics.
Naming Consistency4/5Five of six tools follow a clear verb_noun snake_case pattern. The sole exception is wallet_address, which is a noun phrase rather than a get_* verb, but it remains readable and predictable.
Tool Count5/5At six tools, the set is tightly scoped to the service marketplace workflow: discover, inspect, try, pay, verify, and wallet identity. There is no bloat or redundancy.
Completeness4/5The core lifecycle from discovery through paid execution to settlement verification is covered. Minor gaps exist: there is no transaction history tool and no way to configure the wallet within the MCP surface, but agents can work around both.
Average 4.2/5 across 6 of 6 tools scored.
See the Tool Scores section below for per-tool breakdowns.
- No community issues in the last 6 months
- No commit activity data available
- No stable releases found
- No critical vulnerability alerts
- No high-severity vulnerability alerts
- No code scanning findings
- CI status not available
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.jsonto 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
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the behavioral disclosure burden. It communicates a read-only browsing action and lists return fields, but it does not mention potential pagination, response limits, ordering, or error conditions. Still, no destructive or surprising behavior is hinted at.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loads the primary action, and packs optional filters plus return fields compactly. It avoids verbose or redundant language while staying informative.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description names the return contents, clarifies scope ('published'), and lists the available filters, which is sufficient for basic invocation. It does not mention pagination or ordering, but the tool's simple read-only nature makes this a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already covers all four parameters, and the description adds minimal semantic value beyond restating the filters. It does clarify that query, category, and price are optional, which is useful, but it does not deeply enhance parameter understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('Browse') and the resource ('published Ordinal services'). It also distinguishes itself from related tools by emphasizing listing/browsing with optional filters, while sibling tools like call/try service would handle execution.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for discovering or filtering published services, but it does not explicitly state when to prefer this tool over siblings such as a service details tool or a test/call tool. It provides clear context ('published services') but no direct alternative guidance.
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 provided, the description carries the burden of behavioral disclosure. It clearly reveals the payment side-effect, local signing, the fact that the private key never leaves the machine, and the return payload. The ambiguous aside 'no key configured yet' keeps it from being 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.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences with no filler. The critical paid-call nature is front-loaded, and each sentence contributes distinct information: operation, security model, and return value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given there is no output schema and no annotations, the description usefully explains the return value, financial consequences, and security behavior. It could more clearly explain what 'no key configured yet' means operationally, but overall it equips an agent to call the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the input schema already documents service, input, and maxPrice meaningfully. The description adds no parameter-level semantics beyond what the schema provides, so the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Execute'), resource ('a real paid call'), and settlement context ('Robinhood Chain from this machine's wallet'). The qualifier 'real paid call' distinguishes it from try_service even without naming it, and the return value is specified.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage guidance is implied rather than explicit. The phrase 'real paid call' suggests this is for actual paid execution rather than a trial, but the description never names alternatives like try_service or check_payment_status, nor does it state when not to use this tool.
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 of disclosure, and it does well by stating that this is a lookup operation (no mutation implied) and by listing exactly what the agent will get back. It could go further by explicitly saying it is read-only and has no side effects, but 'Look up' and the lack of any write verb make the behavior clear.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, tightly worded sentence of about 18 words. It front-loads the action ('Look up') and the required input ('by hash'), then lists the three report values without any filler or redundant phrasing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness5/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
This is a simple two-parameter lookup tool with a fully documented schema and no output schema. The description tells the agent what the return will contain (success, confirmations, explorer URL), which is all that is needed to interpret the result. No complex state, side effects, or multi-step behavior needs explanation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents the 32-byte hash format and the default network. The description adds no extra meaning beyond calling it a 'Robinhood Chain transaction,' which is already reflected in the title and network enum. Baseline 3 is appropriate since the heavy lifting is done by the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Look up'), names the exact resource ('Robinhood Chain transaction'), and identifies the key identifier ('by hash'). It also states the concrete outputs (success status, confirmations, explorer URL), which leaves no ambiguity about what the tool does. The title 'Check a settlement transaction' reinforces the purpose, and none of the sibling tools overlap with this behavior.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies when to use this tool: when you have a transaction hash and need settlement status, confirmation count, or an explorer link. It does not explicitly name exclusions or alternatives, but the sibling tools are distinct enough that no disambiguation is required. A full 'when-not-to-use' statement is absent, which keeps it from a 5.
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 burden, and it discloses the response contents and the read-only nature implied by 'get' and 'full detail'. It does not explicitly mention authentication or wallet requirements, which are relevant with x402 terms, but the core behavioral contract is clear.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no filler: the first enumerates return content, the second gives the targeted when-to-use directive. Every sentence earns its place and the key term is include-detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter lookup tool with a fully described schema, the description is sufficient: it names the parameter source, return content, and the exact invocation point relative to siblings. It leaves only auth/wallet requirements to be discovered, but the x402 settlement-terms hint provides some lead.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the single param is already fully documented. The description does not repeat it or enrich it, only referring to 'the input matches the schema'. The baseline is 3 because the schema carries the parameter semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: it retrieves full detail for one service. It enumerates what is returned (input/output JSON Schema, price, example request/response, documentation, x402 settlement terms) and distinguishes itself as the single-service lookup ahead of try_service or call_service.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines5/5Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives an explicit when-to-use directive: 'Call this before try_service or call_service so the input matches the schema.' This names the relevant sibling alternatives and tells the agent the condition that selects this tool.
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. 'Reports' signals a read-only operationaine and 'whether a key is configured at all' discloses that it inspects key state. It does not mention potential errors or whether it makes network calls, but the core behavior is transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the purpose, then a practical usage hint. No fluff or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless read-only check, the description covers the key facts an agent needs: what it reports and when to use it. It doesn't specify the return format, but with no output schema and a trivial query, this is sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters4/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so the schema is complete (100% coverage). The description adds no parameter detail because none is needed; baseline for no parameters is 4.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Reports') and a clear resource (the wallet/key for this bridge), which distinguishes it from siblings like try_service, get_service_details, and check_payment_status. There is no ambiguity about what the tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The sentence 'Useful before a paid call' explicitly indicates when to invoke this tool. It does not explicitly name alternatives or exclusions, but the context is clear enough that an agent can decide to call it prior to any chargeable sibling operation.
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 burden not only for safety but also for side effects. It clearly discloses that no payment is settled and no usage is recorded, while noting that the provider's real response is returned. This gives agents essential information for safe and correct invocation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact, starts with the primary behavior, then quickly moves to validation and consequences, and closes with the intended use cases. No filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness5/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter tool with no output schema, this description covers the tool’s purpose, side effects, validation behavior, and appropriate contexts. Nothing critical is missing for an agent to decide whether and how to call it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already documents both parameters (service and input) with 100% coverage enabled. The description adds the semantic nuance that the input is validated against the service's schema reliable, which is useful but not extensive, keeping this at baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool runs a service without payment, distinct from the paid calling flow. It names the resource (a service), the verb (run), and specifies the free/demo nature, making it easily distinguishable from call_service.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states when to use this tool: for demos and checking output shape before committing to a paid call. It implies when not to use it (any final/paid operation), though it does not directly name call_service as the alternative.
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
Copy to your README.md:
Score Badge
Copy to your README.md: