Skip to main content
Glama
emiliaprotocol

emilia-mcp-server

Official

ep_generate_zk_proof

Proves a trust claim (e.g., score > threshold) without revealing receipt contents or identities. Returns a proof_id for public verification, keeping transaction history private.

Instructions

Generate a privacy-preserving commitment proof. Proves a trust claim (e.g., score > 0.85 in the financial domain, or > 50 verified receipts) WITHOUT revealing receipt contents, counterparty identities, or transaction details. Uses HMAC-SHA256 commitments + Merkle trees. Returns a proof_id you can share publicly — verifiers call ep_verify_zk_proof with only the proof_id and learn nothing about your transaction history. Essential for privacy-sensitive contexts: healthcare (HIPAA), legal (privilege), finance (NDA/MNPI), and any situation where sharing transaction history is not possible. Requires your EP API key (you can only prove claims about your own entity).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
entity_idYesYour EP entity ID. Must match the API key used to authenticate.
claim_typeYesscore_above: global behavioral score > threshold. domain_score_above: per-domain score > threshold (requires domain). receipt_count_above: total receipts > threshold (integer count).
thresholdYes0.0–1.0 for score claims (e.g. 0.85 = 85th percentile behavioral score). Positive integer for receipt_count_above (e.g. 50 = at least 50 receipts).
domainNoRequired for domain_score_above claims. Which behavioral domain to prove.
Behavior4/5

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

With no annotations, the description bears full burden. It discloses the cryptographic mechanism (HMAC-SHA256 + Merkle trees), the return of a publicly shareable proof_id, and the verification flow via ep_verify_zk_proof. It does not cover error conditions or performance, but the key behaviors are well described.

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 tightly written (~80 words, 5 sentences) with no redundant phrases. Each sentence contributes: purpose, examples, mechanism, use cases, and prerequisite.

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 complex tool with no annotations or output schema, the description covers purpose, usage, mechanism, and use cases. It lacks details on error handling or limits, but is sufficient for an agent to decide when to invoke.

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?

Given 100% schema coverage, the description adds marginal value beyond the schema. It provides example thresholds (0.85, 50) and reiterates the entity_id requirement, but the schema already describes all parameters adequately.

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 generates a privacy-preserving commitment proof, with specific examples (score > 0.85, >50 receipts) and explicit contrast with revealing transaction history. It distinguishes from sibling tools like ep_verify_zk_proof and ep_issue_commit.

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 explicitly lists privacy-sensitive contexts (healthcare, legal, finance) and states the requirement for the entity's own API key. It implies when not to use (when privacy not needed) but does not name specific alternative tools.

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

Install Server

Other Tools

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/emiliaprotocol/emilia-protocol'

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