Skip to main content
Glama

Server Details

Stamp any data to the Markovian chain for a verifiable provenance receipt. Proves timing, not truth.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Glama MCP Gateway

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

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.7/5 across 3 of 3 tools scored.

Server CoherenceA
Disambiguation5/5

Each tool has a clearly distinct purpose: creating a stamp, tracing a lineage, and verifying a stamp. There is no overlap or ambiguity between them.

Naming Consistency5/5

All tools follow a consistent naming pattern with the 'markovian_' prefix and a concise verb (stamp, trace, verify). This makes the tool set predictable and easy to navigate.

Tool Count5/5

Three tools is a well-scoped set for a provenance server, covering the core operations without unnecessary bloat. Every tool earns its place.

Completeness5/5

The domain is immutable provenance, and the set covers the full lifecycle: create, trace, and verify. There are no missing operations or dead ends.

Available Tools

4 tools
markovian_notarizeMarkovian NotarizeAInspect

Notarize any file or hash into a public transparency log cosigned by 7 independent witnesses and anchored to Bitcoin. Hash-only: pass a local file path (hashed on this machine; the file never leaves it) or a sha256 hex string — only 32 bytes reach the log. Returns a receipt with the leaf index, inclusion-proof URL, an offline c2sp.org/tlog-proof bundle URL, and the witness trust policy. Proves the hash existed no later than the covering checkpoint, in a single history everyone sees identically; does NOT prove authorship or that the content is true. Rate-limited (10/hour). Typical use: notarize an output the moment it is produced, keep the file, hand anyone the proof URL.

ParametersJSON Schema
NameRequiredDescriptionDefault
pathNoLocal file to notarize. Hashed here; never uploaded.
sha256NoAlternatively, a sha256 hex digest (with or without 'sha256:' prefix).
Behavior5/5

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

The description goes well beyond annotations by explaining privacy ('the file never leaves it'), rate limits ('Rate-limited (10/hour)'), the nature of the proof ('Proves the hash existed no later than the covering checkpoint'), and explicit disclaimers ('does NOT prove authorship'). It also discloses the receipt contents and the anchored-to-Bitcoin mechanism, giving a very clear behavioral model.

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 opening sentence immediately establishes the core purpose. Subsequent sentences incrementally add essential details (input options, return values, guarantees, limitations, rate limit, typical use) without redundancy. Every sentence carries useful information, making it dense yet digestible.

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 lacking an output schema, the description fully specifies the return value ('a receipt with the leaf index, inclusion-proof URL, an offline c2sp.org/tlog-proof bundle URL, and the witness trust policy'). It also covers privacy, proof semantics, limitations, rate limiting, and a use case, making it self-sufficient for an agent to invoke and understand the outcome.

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 provides descriptions for both parameters (path, sha256) with 100% coverage. The description adds the either/or semantics ('pass a local file path ... or a sha256 hex string') and the detail that 'only 32 bytes reach the log,' which enriches the parameter meaning without duplicating the 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 the tool's verb and resource: 'Notarize any file or hash into a public transparency log cosigned by 7 independent witnesses and anchored to Bitcoin.' It distinguishes itself from sibling tools by focusing on notarization, which is a distinct action from stamping, tracing, or verifying.

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 for when to use the tool: 'Typical use: notarize an output the moment it is produced, keep the file, hand anyone the proof URL.' It also notes a limitation ('does NOT prove authorship or that the content is true'). However, it does not explicitly mention alternatives or when not to use it, so it misses the full 5 score.

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

markovian_stampMarkovian Provenance StampAInspect

Commit any data (an AI output, a decision, a record) into a public, witnessed transparency log and get back a verifiable, tamper-evident provenance stamp (canonical markovian-provenance/v1). It proves the data existed and was committed at this time; it does NOT assert the data is correct (provenance, not truth). No wallet, account, or funding is required, the first stamp just works, and only the SHA-256 hash of your data is sent to the public API, the raw data is never stored. The returned merkle_root is the handle: save it, then call markovian_verify(merkle_root) to prove integrity later, or pass prior stamps in derived_from to build a lineage you can walk with markovian_trace. Typical use: stamp an agent output the moment it is produced, so anyone can later confirm it was not altered.

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYesExact bytes/string to stamp. Hashed server-side; raw data is not stored.
labelNoOptional human label for the stamp.
walletNoOptional. Omit and the protocol mints an ephemeral committer for you. Provide one to attribute the stamp.
derived_fromNoOptional lineage. A list of prior stamps this output was derived from, each {merkle_root, data_hash}. Bound inside the committed bytes so the link is tamper-evident; the payload is published so markovian_trace can walk it.

Output Schema

ParametersJSON Schema
NameRequiredDescription
issuerNoThe committer handle, as named in the transparency-log leaf. Attribution metadata, not a cryptographic identity.
schemaYes
verifyYes
walletYesCompatibility alias for issuer (kept because existing clients require it).
data_hashYes
stamped_atYes
attestationYes
merkle_rootYes
block_heightNoLegacy field, null for stamps after 2026-07. Historical values are internal sequence heights of a retired chain (never a Bitcoin block).
zk_commitmentNoLegacy field, null for stamps after 2026-07. Historical values are Pedersen points that shipped without an opening, so clients could never check them.
Behavior5/5

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

Discloses multiple traits beyond annotations: sends only SHA-256 hash, never stores raw data, requires no wallet/account, returns merkle_root as handle, and proves existence/time but not correctness. These details add context annotations can't convey.

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?

Every sentence contributes distinct information, structured from core action to caveats, privacy, and usage. Length is appropriate for the tool's complexity, and the key action is front-loaded.

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?

Covers purpose, usage guidelines, behavioral constraints, privacy, output handle, and lineage, all in one cohesive description. Output schema exists for return format, so no gap there. For a 4-parameter external-facing tool, this is complete.

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 already covers all 4 params, so baseline is 3. Description adds key semantics: data is hashed server-side, derived_from creates tamper-evident lineage, wallet can be omitted for ephemeral committer. This elevates 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?

Description uses 'Commit' to specify the action, identifies the resource (data) and output (provenance stamp). It explicitly names sibling tools markovian_verify and markovian_trace and contrasts its role (stamping) with verification and tracing, fully distinguishing it.

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 a concrete use case: 'stamp an agent output the moment it is produced' and clarifies it is for provenance, not correctness. It also states no account/funding required, reducing selection barriers, and refers to alternative tools for verification/tracing.

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

markovian_traceMarkovian TraceA
Read-only
Inspect

Walk and verify a stamp's full provenance lineage by merkle_root. Use this when a stamp was created with derived_from links, to map what an output was built from. Returns a MAP of the graph (not a yes/no verdict): each node carries hash_binds and anchored, each edge carries edge_verified, and valid is true only if every node and edge checks out. A node whose payload was never published is an unresolved frontier (resolved:false). Read-only. Provenance, not truth.

ParametersJSON Schema
NameRequiredDescriptionDefault
merkle_rootYesroot of the stamp to trace.
Behavior5/5

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

Annotations already declare readOnlyHint and openWorldHint. Description adds critical context: returns a map (not boolean), describes graph structure (nodes, edges, 'valid' logic, unresolved frontier), and states 'Read-only. Provenance, not truth.' No contradiction.

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?

Dense but well-structured, front-loading the main action. A few sentences could be tightened, but overall efficient.

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?

No output schema provided, so description must explain return format. It does so thoroughly: map with nodes, edges, valid flag, unresolved frontier. Covers all critical aspects of a complex trace tool.

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% but parameter description is minimal ('root of the stamp to trace'). Description adds meaning by explaining the purpose and that merkle_root is the provenance root to trace.

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?

Description clearly states the verb 'walk and verify', the resource 'stamp's full provenance lineage', and the input 'merkle_root'. It distinguishes from siblings by mentioning 'derived_from links' and contrasting with 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 Guidelines4/5

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

Explicitly says 'Use this when a stamp was created with derived_from links', providing clear context. Does not explicitly exclude alternatives but implies when to use it.

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

markovian_verifyMarkovian VerifyA
Read-only
Inspect

Look up a Markovian stamp by its merkle_root against the public verifier, with no key or account. verified:true means the stamp record exists and the response echoes its committed data_hash — recompute your content's SHA-256 and compare it to that data_hash yourself to confirm the content is unaltered. An unknown merkle_root returns verified:false. The trust-nobody path is the stamp's witnessed transparency-log leaf (log_index / inclusion URL from markovian_stamp): its inclusion proof verifies against the witnessed log head with no trust in this endpoint. Read-only; anyone can run it, including a party who does not trust the stamper.

ParametersJSON Schema
NameRequiredDescriptionDefault
merkle_rootYesmerkle_root to verify.
Behavior5/5

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

Beyond the readOnlyHint and openWorldHint annotations, the description discloses the exact meaning of verified:true (record exists and echoes data_hash), instructs the user to recompute SHA-256 for integrity, explains verified:false for unknown roots, and details the trustless verification path via the transparency log. This adds substantial behavioral context about return semantics and security properties.

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 adds critical information: the verb and resource, response semantics, unknown-root behavior, trustless alternative, and access/read-only note. It is structured logically, starting with the primary action and moving to verification details, without redundant filler.

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 there is no output schema, the description fully explains the return behavior (verified field, data_hash, inclusion proof) and tells the user exactly how to perform content verification and obtain the needed log index/URL from markovian_stamp. It covers both normal and trustless usage, making the tool self-sufficient for an AI agent.

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 only says 'merkle_root to verify,' but the description enriches this by explaining it's the stamp's merkle_root, defining behavior for known/unknown values, and connecting it to the data_hash comparison. With 100% schema coverage, the baseline is 3, but the added semantic context about verification logic justifies a 4.

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 'Look up a Markovian stamp by its merkle_root against the public verifier,' which is a specific verb+resource+parameter construction. It clearly distinguishes from siblings by focusing on verification rather than stamping (markovian_stamp) or tracing (markovian_trace), and further clarifies 'Read-only; anyone can run it.'

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 states this is the verification step and references markovian_stamp as the source of the log index/inclusion URL, making the workflow between stamp and verify explicit. It also provides the trust-nobody alternative, implying that users who don't trust this endpoint should use the witnessed inclusion proof, though it does not explicitly list exclusions or when to prefer a sibling.

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

  • A
    license
    A
    quality
    A
    maintenance
    Stamp, upgrade, and verify Bitcoin timestamps via AI agents using the OpenTimestamps protocol. No API keys required.
    8
    352
    1
    MIT
  • A
    license
    -
    quality
    F
    maintenance
    Enables AI agents to create document timestamps on a VerusID, writing directly to the Verus blockchain via a local or remote daemon.
    44
    MIT

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources