Skip to main content
Glama

Server Details

Zero-install remote MCP server for proof-of-existence file attestation.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL
Repository
SPAZIO-GENESI/attest-mcp-remote
GitHub Stars
0
Server Listing
attest-mcp-remote

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

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.

100% free. Your data is private.
Tool DescriptionsA

Average 4.4/5 across 8 of 8 tools scored. Lowest: 3.6/5.

Server CoherenceA
Disambiguation5/5

Each tool has a clearly distinct purpose: authorization flow, attestation, verification, anchor checking, certificate lookup and creation, and health status. No overlapping responsibilities.

Naming Consistency4/5

Most tools follow verb_noun pattern (attest_hash, check_anchor, etc.), but 'authorize' is verb-only and 'service_status' is noun_noun, causing minor inconsistency.

Tool Count5/5

With 8 tools, the set is well-scoped for an attestation service, covering authorization, attestation, verification, certificate retrieval, anchor checking, and health monitoring.

Completeness4/5

Core workflow is covered (authorize, attest, verify, certificate), but lacks a tool to list all user attestations or manage sessions, a minor gap.

Available Tools

8 tools
attest_hashAInspect

Attest a work: the service binds the SHA-256 fingerprint to a server-side timestamp and signs it (HMAC). Requires a credential (device flow via authorize, or an API key header). Optional declared metadata (title/author/year/notes) are normalized and BOUND by the signature — immutable after issuance, but they remain self-declared (they don't prove authorship). Compute the SHA-256 locally if you have code execution (sha256sum <file> / shasum -a 256 <file> / certutil -hashfile <file> SHA256). NEVER send file bytes or base64 through tool arguments: this server never receives files. If you cannot compute a hash locally, point the user to the website (https://attestazione.spaziogenesi.org, full privacy: hashing happens in the browser) or the Telegram bot @SGAttestBot.

ParametersJSON Schema
NameRequiredDescriptionDefault
annoNoDeclared year/version (bound by the signature).
nameNoFile name (descriptive only, shown on the certificate).
noteNoDeclared notes (bound by the signature).
sizeNoFile size in bytes (descriptive only).
typeNoMIME type (descriptive only).
autoreNoDeclared author (bound by the signature).
sha256YesSHA-256 fingerprint of the work: 64 hexadecimal characters. Compute the SHA-256 locally if you have code execution (`sha256sum <file>` / `shasum -a 256 <file>` / `certutil -hashfile <file> SHA256`). NEVER send file bytes or base64 through tool arguments: this server never receives files. If you cannot compute a hash locally, point the user to the website (https://attestazione.spaziogenesi.org, full privacy: hashing happens in the browser) or the Telegram bot @SGAttestBot.
titoloNoDeclared title of the work (bound by the signature).
Behavior5/5

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

With no annotations, the description fully discloses behavioral traits: the service binds the fingerprint to a timestamp, signs with HMAC, and normalizes metadata which become immutable after issuance. It explicitly states metadata are self-declared and do not prove authorship. It also clarifies the server never receives files, addressing potential misuse.

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 efficiently structured, starting with the core action and then layering details: authentication, metadata behavior, hash computation instructions, and fallback options. Every sentence contributes essential context without redundancy, making it concise yet comprehensive.

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?

Given no output schema and eight parameters, the description addresses all key aspects: purpose, prerequisites, input preparation, security constraints, and alternative workflows. It leaves no significant gaps for an AI agent to misinterpret, ensuring thorough guidance for correct invocation.

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?

Schema coverage is 100%, providing a baseline of 3. The description adds value by explaining which parameters are 'bound by the signature' (immutable) versus 'descriptive only'. For the 'sha256' parameter, it provides concrete computation commands and a warning against sending files. This enriches the schema, moving it above 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 states 'Attest a work' with a clear verb and resource. It specifies binding a SHA-256 fingerprint to a timestamp and signing it. This distinguishes it from sibling tools like 'authorize' (authentication) or 'create_certificate_pdf' (output generation), making the purpose unambiguous.

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 explicitly states the requirement for a credential (device flow via 'authorize' or API key). It instructs users to compute the SHA-256 locally and NEVER send file bytes, with specific shell commands. It also provides fallback options (website, Telegram bot) when hash computation is not possible, offering clear guidance on when and how to use the tool.

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

authorizeAInspect

Start the device-flow authorization to attest works in this session (up to 20 attestations, 24h). Returns a link the USER must open in a browser and approve (anti-bot check included). After the user approves, call complete_authorization. Not needed if the connection already carries an API key header, or for verification tools.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior5/5

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

With no annotations, the description fully discloses behavior: returns a user-opened browser link with anti-bot check, limits of 20 attestations and 24h, and the two-step flow.

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?

Two sentences convey purpose, limits, user action, exceptional cases, and next step; no unnecessary 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?

For a zero-parameter tool with no output schema, the description covers the authorization flow, user interaction, limits, and relationship to siblings. Minor gap: no details on error handling or timeout.

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?

No parameters exist, so baseline is 4. The description adds value by explaining the tool's purpose and flow beyond the parameterless schema.

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 it starts device-flow authorization for attestation, specifies limits (up to 20 attestations, 24h), and distinguishes from siblings by mentioning the alternative complete_authorization and exceptions for API key or verification 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?

Provides explicit when to use (to authorize attestations), when not (if API key header present, for verification tools), and directs to call complete_authorization after user approval.

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

check_anchorAInspect

Check whether a work's SHA-256 fingerprint has an OpenTimestamps proof anchored in Bitcoin. The proof is created at attestation time and matures (pending → Bitcoin-confirmed) within a few hours.

ParametersJSON Schema
NameRequiredDescriptionDefault
sha256YesSHA-256 fingerprint of the work: 64 hexadecimal characters. Compute the SHA-256 locally if you have code execution (`sha256sum <file>` / `shasum -a 256 <file>` / `certutil -hashfile <file> SHA256`). NEVER send file bytes or base64 through tool arguments: this server never receives files. If you cannot compute a hash locally, point the user to the website (https://attestazione.spaziogenesi.org, full privacy: hashing happens in the browser) or the Telegram bot @SGAttestBot.
Behavior4/5

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

With no annotations, the description carries full burden. It discloses that the proof is created at attestation time and transitions from pending to confirmed within hours, offering useful behavioral context without contradictions.

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?

Two sentences, front-loaded with purpose, followed by timing context. 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?

The description covers purpose and maturation timing, but does not describe the return format or possible statuses. Given the simple one-parameter tool and absence of output schema, this is a minor gap.

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% and the schema already provides a detailed parameter description including hash computation instructions and privacy warnings. The tool description adds no new parameter semantics beyond what the schema provides.

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 'checks whether a work's SHA-256 fingerprint has an OpenTimestamps proof anchored in Bitcoin'. It specifies the resource (fingerprint) and action (check anchor), distinguishing it from siblings like attest_hash (which creates proofs).

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 implies when to use the tool (to verify anchor status) and provides context about maturation time, but does not explicitly list exclusions or direct users to alternative tools.

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

complete_authorizationAInspect

Complete the device-flow authorization after the user approved in the browser. Polls the service briefly; if approval hasn't happened yet, just call this tool again.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior4/5

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 that the tool polls the service briefly and may need multiple calls if approval hasn't occurred. This is good behavioral context, though it could mention retry limits or timeout behavior.

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 two sentences long and contains no filler. Every word adds value, clearly explaining purpose and retry 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?

Despite no annotations or output schema, the description fully explains the tool's role and behavior for its simplicity (no parameters). It tells an agent when to call, what it does, and how to handle non-approval.

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 has zero parameters with 100% coverage, so baseline score is 4. The description adds no parameter information, which is acceptable since there are no parameters to describe.

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 completes device-flow authorization after user approval in the browser. It specifies the action (complete authorization), resource (device-flow authorization), and distinguishes it from sibling 'authorize' which likely initiates the flow.

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 context that this tool should be used after browser approval and that if approval hasn't happened, the tool can be called again. It does not explicitly state when not to use it or mention alternatives, but the polling instruction gives clear usage guidance.

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

create_certificate_pdfAInspect

Generate and archive the certificate PDF for a fingerprint attested in this session with attest_hash. The PDF is cryptographically signed, anchored in Bitcoin (OpenTimestamps) and archived server-side; this tool returns the permanent links (the PDF itself is downloadable from its URL — it is never inlined here).

ParametersJSON Schema
NameRequiredDescriptionDefault
sha256YesSHA-256 fingerprint of the work: 64 hexadecimal characters. Compute the SHA-256 locally if you have code execution (`sha256sum <file>` / `shasum -a 256 <file>` / `certutil -hashfile <file> SHA256`). NEVER send file bytes or base64 through tool arguments: this server never receives files. If you cannot compute a hash locally, point the user to the website (https://attestazione.spaziogenesi.org, full privacy: hashing happens in the browser) or the Telegram bot @SGAttestBot.
Behavior4/5

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 that the PDF is cryptographically signed, Bitcoin-anchored via OpenTimestamps, archived server-side, and returns permanent links. It also explains how the PDF is accessed (downloadable from URL, never inlined). This adds meaningful behavioral context beyond the structured 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?

Two sentences with zero waste. The first sentence states the core action and key features (signing, anchoring, archiving). The second sentence clarifies the return behavior (permanent links, downloadable PDF). Every word adds value.

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?

Given a single parameter, no output schema, and no annotations, the description fully covers the tool's purpose, how to obtain the output, and important security/privacy details (do not send files, compute hash locally). It also mentions the return format (links) and access method (downloadable URL).

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 schema already describes the 'sha256' parameter thoroughly (format, computation methods, warnings). The description adds value by linking the hash to the session context ('attested in this session with attest_hash'), explaining why this specific hash is needed, and reinforcing the privacy aspect (never send file bytes).

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 it generates and archives a certificate PDF for a fingerprint attested in the session via 'attest_hash'. It specifies the cryptographic signing, Bitcoin anchoring, and server-side archiving, distinguishing it from sibling tools like 'lookup_certificate' or 'verify_attestation'.

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 implies usage after 'attest_hash' by mentioning 'attested in this session'. It does not explicitly state when not to use or list alternatives, but provides clear context for when the tool applies.

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

lookup_certificateAInspect

Look up whether a work's SHA-256 fingerprint has an attestation certificate in the public archive, and get its permanent links (public certificate page, PDF download, OpenTimestamps proof, browser verification). Trust model: this information is reachable only by whoever knows the fingerprint.

ParametersJSON Schema
NameRequiredDescriptionDefault
sha256YesSHA-256 fingerprint of the work: 64 hexadecimal characters. Compute the SHA-256 locally if you have code execution (`sha256sum <file>` / `shasum -a 256 <file>` / `certutil -hashfile <file> SHA256`). NEVER send file bytes or base64 through tool arguments: this server never receives files. If you cannot compute a hash locally, point the user to the website (https://attestazione.spaziogenesi.org, full privacy: hashing happens in the browser) or the Telegram bot @SGAttestBot.
Behavior4/5

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

With no annotations, the description provides important behavioral info: the trust model (only reachable by fingerprint knower), and a constraint (never send file bytes). It does not discuss rate limits or side effects, but as a read-only lookup, this 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.

Conciseness5/5

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

The description is extremely concise: three sentences and a trust model note. It front-loads the purpose, then adds practical guidance, with no unnecessary 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?

For a tool with one parameter and no output schema, the description is complete (input, output type, trust model). It does not detail the exact output structure, but that is acceptable given the tool's simplicity and the availability of the links.

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 schema already covers the SHA-256 parameter well (100% coverage). The description adds value by reinforcing the privacy/security aspect and instructing not to upload files, which goes beyond the schema's technical description.

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 looks up whether a SHA-256 fingerprint has an attestation certificate and provides specific links. It distinguishes itself from siblings like 'attest_hash' (which creates) and 'verify_attestation' (which verifies) by focusing on retrieval of existing certificates.

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 says when to use (to check for a certificate) and includes guidance on computing the hash and not sending files. It lacks explicit advice on when not to use or direct comparisons to sibling tools, 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.

service_statusAInspect

Health of the Spazio Genesi attestation service components: worker (attestation engine), archive (certificate storage), signer (PDF cryptographic signature), anchor (Bitcoin/OpenTimestamps calendars). Values: ok | degraded | down | n/d.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior2/5

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

No annotations are provided, and the description only lists possible return values. It does not disclose behavioral traits such as whether the tool is read-only, requires authentication, or has rate limits. The agent lacks understanding of side effects or safety.

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 a single, well-structured sentence that front-loads the purpose and lists components and values efficiently. Every part adds value without redundancy.

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

Completeness2/5

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

Given no output schema and no annotations, the description should explain the return format (e.g., whether it returns a single string or per-component object). It only lists components and values, leaving ambiguity about how the information is structured.

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 tool has no parameters, so baseline is 4. The description adds meaning by specifying the return values (ok, degraded, down, n/d) and components, which is helpful for interpreting results.

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: reporting health of attestation service components. It lists specific components (worker, archive, signer, anchor) and possible values, distinguishing it from sibling tools which perform other operations.

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 for checking service health but does not explicitly state when to use this tool versus alternatives, nor does it mention circumstances where it should not be used. No exclusions or context provided.

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

verify_attestationAInspect

Verify the server HMAC signature of an attestation issued by the Spazio Genesi service. Confirms that the attestation string (fingerprint + timestamp) and any declared metadata are authentic and untampered. Note: this checks the SIGNATURE only. Whether a given file matches the fingerprint must be checked locally by re-hashing the file. If the certificate carried declared metadata (title/author/year/notes), they must be provided EXACTLY as printed for the signature to verify.

ParametersJSON Schema
NameRequiredDescriptionDefault
annoNoDeclared year/version, exactly as printed (only if the certificate shows it).
hmacYesThe server HMAC signature exactly as printed on the certificate (base64, 44 characters ending with '=').
noteNoDeclared notes, exactly as printed (only if the certificate shows them).
autoreNoDeclared author, exactly as printed (only if the certificate shows it).
sha256YesSHA-256 fingerprint of the work: 64 hexadecimal characters. Compute the SHA-256 locally if you have code execution (`sha256sum <file>` / `shasum -a 256 <file>` / `certutil -hashfile <file> SHA256`). NEVER send file bytes or base64 through tool arguments: this server never receives files. If you cannot compute a hash locally, point the user to the website (https://attestazione.spaziogenesi.org, full privacy: hashing happens in the browser) or the Telegram bot @SGAttestBot.
titoloNoDeclared title, exactly as printed (only if the certificate shows it).
attestazioneYesThe attestation string exactly as printed on the certificate: "SHA-256:<hash>@<ISO timestamp>Z"
Behavior4/5

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

The description discloses behavioral traits: it only checks the signature, requires exact metadata, and warns against sending file bytes. Without annotations, this adequately covers the tool's safety and idempotency, though it could mention if the tool has side effects or rate limits.

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 concise and front-loaded with the main purpose. It uses two paragraphs efficiently, but the second paragraph could be slightly tighter. Overall, it earns its length without being verbose.

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

Completeness3/5

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

Despite clear purpose and parameter details, the description lacks information about return values or output behavior. Since there is no output schema, the agent would benefit from knowing what the tool returns (e.g., boolean success). This gap mildly reduces completeness.

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?

Schema coverage is 100% with detailed parameter descriptions. The description adds contextual value by explaining the requirement for exact metadata matching and the format of the attestation string, complementing the schema. The added meaning lifts it above the baseline of 3.

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 verifies the HMAC signature of an attestation, specifying what it confirms (authenticity and integrity of the attestation string and metadata) and what it does not (file matching). It distinguishes itself from other tools by focusing solely on signature verification.

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?

Guidance is provided on when to use this tool (for HMAC verification) and when additional steps are needed (local file hash checking). It also emphasizes exact metadata matching. However, it does not explicitly compare to sibling tools like 'attest_hash' or 'create_certificate_pdf', which could clarify alternatives.

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

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Servers

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.