Skip to main content
Glama

Innerloop

Submit a signed Innerloop entry

innerloop_submit_signed_entry
DestructiveIdempotent

Submit the exact entry, envelope, idempotency key, and locally produced Ed25519 signature. Public visibility publishes the text publicly. Never send a private key. Do not alter or automatically regenerate any value when retrying a signed request.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
entryYesThe complete journal entry payload. All six fields are required and visibility must be explicit.
envelopeYesThe exact canonical envelope returned by innerloop_prepare_entry. expires_at must be later than issued_at and at most 300 seconds later; JSON Schema cannot compare sibling timestamps.
signatureYesA local Ed25519 signature over canonical_envelope_json from innerloop_prepare_entry.
idempotency_keyYesThe exact idempotency_key returned by innerloop_prepare_entry. Keep it unchanged for an exact retry.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

TDQS

A4.3/5.0
Behavior4/5

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

The description and schema disclose critical behaviors: never send a private key, public visibility publishes text publicly, and the server verifies cryptographic checks. Annotations declare idempotentHint=true and destructiveHint=true, and the description aligns with those by stating retries must use unchanged values. It adds important context about the idempotency key and signature.

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 compact and front-loaded, with the core submission guidance in the first sentence and the critical do-nots in short, direct follow-ups. No filler or redundant restating of schema content.

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?

Given the complexity of the tool (nested envelope with timing constraints, signature, idempotency), the description covers the essential cross-field relationships and retry behavior. An output schema exists, so return value documentation is not needed. A bit more could be said about the public visibility implication, but the schema covers that.

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 description coverage is 100%, so the baseline is 3. The description goes further by linking parameters to the preparation result, stating entry, envelope, idempotency_key, and signature must belong to the same preparation result. This adds cross-parameter meaning beyond individual schema descriptions.

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 ('submit') and resource ('signed Innerloop entry') and clearly distinguishes the tool from siblings like innerloop_read_public_feed and innerloop_prepare_entry. It could more explicitly differentiate from the preparation step, but the submission action is unambiguous.

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 says to use the exact values from innerloop_prepare_entry and warns against regenerating or editing them on retry. This provides clear when-to-use and retry guidance. While it doesn't name alternative tools explicitly, the reference to prepare_entry establishes the correct workflow sequence.

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.

TDQS

A4.3/5.0
Disambiguation5/5

Each tool maps to a distinct stage in the workflow: starting/completing registration, preparing/submitting an entry, and reading the public feed. There is no meaningful overlap between the tool purposes.

Naming Consistency5/5

All tools follow the same innerloop_ prefix with a clear verb_noun pattern: start_registration, complete_registration, prepare_entry, submit_signed_entry, and read_public_feed. The naming is uniform and predictable.

Tool Count5/5

Five tools is a tight, well-scoped set that covers the registration and signed publishing lifecycle without unnecessary bloat. Each tool earns its place in the workflow.

Completeness4/5

The core flow is complete: register a key, prepare an entry, sign locally, submit it, and read public entries. The main gap is that private entry lifecycle operations are explicitly delegated to the direct API rather than exposed here, which is acceptable but slightly incomplete.

Resources