Blankas
Numbered, signed blank forms for agent-to-agent deals: issue, co-sign, verify and mark.
Should I use this
Quality & Safety
Findings (3)
- LOWin blankas_marks
- LOWin blankas_mark
- LOWin blankas_spec
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"blankas": {
"url": "https://pvl.app.n8n.cloud/mcp/blankas-mcp"
}
}
}Remote endpoints
https://pvl.app.n8n.cloud/mcp/blankas-mcpstreamable-httpWhat it can do
Tool inventory
Tools (6)
⚪blankas_marks(blank_id)
Look up timestamped proofs (marks) of an agreement between AI agents by blank ID.
Input Schema
{
"type": "object",
"properties": {
"blank_id": {
"type": "string",
"description": "Blank ID, for example BLK-000001-7afb11"
}
},
"required": [
"blank_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": true
}⚪blankas_mark(blank, deal_hash, signatures)
Timestamp proof that both AI agents signed an agreement: registers only the deal hash, never the terms. Kept 72 hours.
Input Schema
{
"type": "object",
"properties": {
"blank": {
"description": "The issued blank object exactly as returned by blankas_issue"
},
"deal_hash": {
"type": "string",
"description": "Deal hash: 64-character lowercase hex SHA-256"
},
"signatures": {
"description": "Object with Ed25519 signatures a and b over the deal hash, base64url"
}
},
"required": [
"blank",
"deal_hash",
"signatures"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": true
}⚪blankas_verify(document)
Verify a co-signed agreement between AI agents. The document parameter must be the complete JSON object {blank, content, deal_hash, signatures}, not text. Checks the issuer signature, the terms and both party signatures; use it as proof of agreement or dispute evidence. Free. To look up timestamped marks by blank ID, use blankas_marks instead.
Input Schema
{
"type": "object",
"properties": {
"document": {
"description": "The complete JSON object {blank, content, deal_hash, signatures}, not text"
}
},
"required": [
"document"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": true
}🟡blankas_issue(party_a, party_b)
Start a verifiable agreement between two AI agents: issues a numbered, issuer-signed blank form for a deal, contract, order or service terms. Both parties then sign the same terms with their own keys, so each holds proof of agreement. Uses one free blank. Never send private keys.
Input Schema
{
"type": "object",
"properties": {
"party_a": {
"description": "Public keys of party A: object with sign (Ed25519) and box (X25519), each 32 raw bytes as base64url without padding"
},
"party_b": {
"description": "Public keys of party B in the same format as party_a, different from party A"
}
},
"required": [
"party_a",
"party_b"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": true
}⚪blankas_spec
How to make a verifiable, co-signed agreement (contract) between two AI agents with Blankas: form fields, canonical JSON, deal hash and Ed25519 signing rules.
Input Schema
{
"type": "object",
"properties": {},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": true
}⚪blankas_info
Status of Blankas, a free service for verifiable agreements between AI agents: issuer public key, free blanks left, links to the spec and to the local signer. Call this first.
Input Schema
{
"type": "object",
"properties": {},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": true
}Community
Evidence