Skip to main content
Glama

Postlyra.app — Telegram posts from AI chats

Assign an auto-signature

assign_signature
Idempotent

Use this when managing post auto-signatures. Set the account default, channel-specific override or single-post override. For default use custom/none; for channel/post inherit follows their defaults, none disables it, custom selects signatureId. Previously queued publication snapshots remain unchanged. Never publishes.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "target": "<target>",
      "selection": "<selection>"
    },
    "name": "assign_signature"
  }
}

Input Schema

NameRequiredDescriptionDefault
targetYesBinding to change: default for the account, channel requires channelId, post requires draftId.
draftIdNoOwner-bound draftId from search_post_drafts/create_post_draft; same as postId.
channelIdNoOwner-bound channel id from list_channels; never invent a recipient.
selectionYesSignature selection: custom requires signatureId; none disables the optional signature; inherit follows defaults for channel/post only.

Output Schema

NameRequiredDescriptionDefault
postIdNo
targetYes
draftIdNo
messageYes
revisionNo
selectionYes
nextActionNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed8 schema fields changed
    • addedInput schema / properties / channelId / description
      Added value: +"Owner-bound channel id from list_channels; never invent a recipient."
    • addedInput schema / properties / draftId / description
      Added value: +"Owner-bound draftId from search_post_drafts/create_post_draft; same as postId."
    • addedInput schema / properties / selection / description
      Added value: +"Signature selection: custom requires signatureId; none disables the optional signature; inherit follows defaults for channel/post only."
    • addedInput schema / properties / selection / properties / mode / description
      Added value: +"inherit follows defaults (channel/post only); none disables the optional signature; custom requires signatureId."
    • addedInput schema / properties / selection / properties / signatureId / description
      Added value: +"Owner-bound signatureId from list_signatures/create_signature."
    • addedInput schema / properties / target / description
      Added value: +"Binding to change: default for the account, channel requires channelId, post requires draftId."
    • addedOutput schema / properties / selection / properties / mode / description
      Added value: +"inherit follows defaults (channel/post only); none disables the optional signature; custom requires signatureId."
    • addedOutput schema / properties / selection / properties / signatureId / description
      Added value: +"Owner-bound signatureId from list_signatures/create_signature."
  2. Changed4 schema fields changed
    • addedOutput schema / properties / draftId
      Added value: +{
      +  "maxLength": 128,
      +  "minLength": 1,
      +  "type": "string"
      +}
    • addedOutput schema / properties / nextAction
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / postId
      Added value: +{
      +  "maxLength": 128,
      +  "minLength": 1,
      +  "type": "string"
      +}
    • addedOutput schema / properties / revision
      Added value: +{
      +  "minimum": 1,
      +  "type": "integer"
      +}
  3. Added

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare idempotent=true and destructive=false, so the description's contribution is the side-effect disclosure: 'Previously queued publication snapshots remain unchanged. Never publishes.' That answers the key question for a binding mutation without contradicting any annotation. It does not cover permissions or what an invalid target/mode combination returns.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Four short sentences with no filler; the intent statement is front-loaded and the mode rules follow immediately. The opening 'Use this when managing post auto-signatures' is slightly circular but costs little.

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?

With a full input schema, an output schema, and annotations covering safety and idempotency, the description supplies what structured fields cannot: scope semantics per target and the guarantee that queued snapshots and publishing are untouched. Only error handling and required-permission details are absent, and those are 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 3 is the baseline, but the description actually adds a constraint the schema does not encode: 'inherit' is only valid for channel/post, not for the default target. It also maps the `mode` values to their effects, giving real meaning beyond the enum names.

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?

States a specific verb (set/assign) and resource (post auto-signature binding) and enumerates the three scopes it operates on: account default, channel override, single-post override. This clearly separates it from create_signature/update_signature, which manage signature records rather than bindings, though those siblings are never named.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

"Use this when managing post auto-signatures" plus the per-target mode rules ('For default use custom/none; for channel/post inherit follows their defaults, none disables it, custom selects signatureId') give concrete guidance on which combination to pick. It stops short of naming alternatives (update_signature, preview_signature) or stating when not to use this tool.

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.