Skip to main content
Glama

peck-mcp

peck_messages

Read messages from the BSV social graph. Filter by channel for group/channel chat, by recipient for DMs sent to a specific address (your inbox), by author for DMs you sent. With no filter, returns the global message stream.

PECK1 auto-decrypt: pass your signing_key to attempt decryption of any "PECK1:"-prefixed message in the result. Decryption uses BRC-2 via ProtoWallet, byte-compatible with what peck-desktop's wallet.encrypt produces. Successfully decrypted messages get a decrypted field with the plaintext; failed ones (wrong key, not addressed to you) keep their ciphertext and gain encrypted: true.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNoMax messages.
authorNoAuthor BSV address — use your own to read messages you sent.
channelNoChannel name (e.g. "general").
recipientNoRecipient BSV address — use your own to read your inbox.
signing_keyNoYour privateKeyHex — enables BRC-78 auto-decrypt for ciphertexts addressed to you.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior4/5

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

With no annotations provided, the description carries the full burden, and it delivers substantial behavioral detail: the auto-decrypt mechanism, the BRC-2/ProtoWallet compatibility, the byte-compatibility with peck-desktop, and the exact result-shape changes (decrypted field vs encrypted: true). It doesn't mention pagination or rate limits, but the disclosed decryption behavior is rich and non-obvious.

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 compact paragraphs: the first front-loads the core read/filter behavior, the second explains the optional decryption feature. Every sentence carries distinct information, and there is no filler or repetition of schema field names.

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 read tool with 5 optional parameters and no output schema, the description covers the main call patterns and the one complex behavior (decryption). It doesn't specify the return envelope or pagination, but the absence of an output schema and the tool's read-only nature make those gaps minor.

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%, so the baseline is 3. The description adds real value beyond the schema by explaining the semantic role of each filter (e.g., recipient = your inbox, author = messages you sent) and the purpose of signing_key (BRC-78 auto-decrypt). This elevates it above the 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 opens with a clear verb and resource ('Read messages from the BSV social graph') and immediately distinguishes the three filtering modes (channel, recipient, author) plus the unfiltered global stream. This differentiates it from siblings like peck_feed, peck_recent, and peck_user_posts without needing to inspect their schemas.

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 maps each filter to its use case: channel for group chat, recipient for your inbox, author for sent DMs, and no filter for the global stream. It also explains when to pass signing_key (auto-decrypt PECK1 messages). This is direct when-to-use guidance with no ambiguity.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.