Skip to main content
Glama
sipyourdrink-ltd

Bernstein - Multi-agent orchestration

bernstein_post_artifact

Attach a journal-anchored artifact to a claimed task, storing it with content-addressed integrity and returning a verifiable receipt.

Instructions

Attach a journal-anchored artifact to a task you hold the claim for.

The artifact is stored content-addressed, sealed into the lineage spine, appended to the task's Merkle-chained journal, and mirrored to the audit chain. The returned record IS the receipt: its identity is the spine entry hash, and any reviewer can re-verify the content hash offline against the same chain bernstein audit verify walks. Reposting a key appends a new version chained to the prior one. There is no way to set progress here - progress is a chain-computed projection of journaled work, never postable.

Args: task_id: The task to attach the artifact to. You must hold its claim. key: The artifact slot; reposting a key appends a new version. artifact_type: One of report (markdown body), table (columns + rows), or link (url + link_kind). poster: Your claim identity; posting against a task you do not hold is refused and the refusal is audit-recorded. body: Markdown body, for report artifacts. columns: Column headers, for table artifacts. rows: Rows of cells, for table artifacts. url: The URL, for link artifacts. link_kind: The declared link kind - preview / dashboard / document - for link artifacts.

Returns: JSON of the chain-anchored artifact record (key, version, content_hash, spine_entry_hash, journal_index, ...).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
keyYes
urlNo
bodyNo
rowsNo
posterYes
columnsNo
task_idYes
link_kindNo
artifact_typeYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes
Behavior5/5

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

With no annotations, the description fully discloses behavior: the artifact is content-addressed, sealed into the lineage spine, appended to a Merkle-chained journal, and mirrored to the audit chain. It explains the returned record as a receipt and that reposting appends a version.

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 well-structured with a clear opening sentence, followed by mechanism explanation, arg list, and return value. Each sentence adds value without redundancy, though the arg list repeats some earlier info but is justified for clarity.

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 9 parameters, 4 required, and an output schema, the description covers all necessary context: prerequisites (hold claim), behavior (append, mirror), parameter relationships (artifact_type determines fields), and the return format. It is complete and self-contained.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, but the description provides detailed explanations for each parameter, including expected values for artifact_type and the associated fields (body, columns, rows, url, link_kind). It clarifies the role of poster and the meaning of key.

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 purpose: 'Attach a journal-anchored artifact to a task you hold the claim for.' It specifies a specific verb, resource, and condition, distinguishing it from sibling tools like bernstein_approve or bernstein_status.

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 states when to use the tool (to attach an artifact) and what not to use it for ('There is no way to set progress here'). It also mentions that reposting appends a version and that posting without a claim is refused, providing clear guidance on appropriate use.

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/sipyourdrink-ltd/bernstein'

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