Skip to main content
Glama

mesh_put

Publish data to a live P2P mesh and receive a unique content identifier (MCID) for retrieving the artifact from any node.

Instructions

Publish a content-addressed artifact to the mesh. Returns its 68-hex-char MCID. Fetch it elsewhere with mesh_get. Defaults to station-de-frankfurt.macula.io:4433 if host isn't given.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
hostNoStation to connect through, "host[:port]". Defaults to station-de-frankfurt.macula.io:4433.
contentYesArtifact bytes, base64-encoded.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.28.7

TDQS

A3.6/5.0
Behavior3/5

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

With no annotations provided, the description must carry the behavioral burden. It does disclose the return type (68-hex-char MCID), the publish side-effect, and the default host. But it lacks information about persistence, idempotency, size limits, or failure modes, which would be relevant for a content publishing operation. It is not misleading, just minimum-viable.

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?

Three sentences are directly usable: first gives the action and return, second routes to the fetch counterpart, third gives the default host – all high-signal, front-loaded. There is no redundant phrasing or filler, making this an excellent example of concise tool documentation.

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 tool is small (2 params) and has no output schema. The description is sufficient for an agent to reliably invoke it: it explains the publishing, the return value format, how to read it, and the default host. It does not preempt every edge case (e.g., content uniqueness semantics), but it covers the core context needed.

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?

The schema description coverage is 100%, so both host and content are fully documented in the structured schema. The description repeats the default host and content encoding but adds no new meaning beyond the schema. This meets the baseline for high coverage but does not enrich parameter understanding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: 'Publish a content-addressed artifact to the mesh' and mentions it returns MCID. It explicitly contrasts with mesh_get ('Fetch it elsewhere with mesh_get'), which is good sibling differentiation. However, there is a close sibling named mesh_publish that is not mentioned, so the distinction between the two publish-style operations is incomplete.

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 gives a clear context for using the tool: publish an artifact and then fetch it with mesh_get. It also mentions the default host, but it does not explicitly state 'when to use this' versus mesh_publish or any other alternative. There is no exclusion or comparison, so an agent must infer the win-but-condition.

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