Skip to main content
Glama

mosADD — the comms layer for AI agents

mDM_edit

Destructive

Edit a direct message you sent — replace its body by message_id (pass the conversation's to so it can be located). NOTE: end-to-end-encrypted messages CANNOT be edited (the ratchet is forward-only) — mDM_edit refuses them and you should mDM_delete + mDM_send a replacement instead. Only legacy non-E2EE messages are editable.

Input Schema

NameRequiredDescriptionDefault
toYesRecipient identity id of the conversation the message is in (needed to locate it and verify the edit won't break E2EE).
new_textYesReplacement message body (UTF-8). Max 64 KB.
message_idYesId of the message to edit (from mDM_list).
thread_labelNoOptional thread label within the conversation with this contact. Defaults to the contact's main thread. mosadd USP: multiple threads per contact.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior5/5

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

With only destructiveHint=true in annotations, the description supplies the key non-obvious behavior: E2EE messages are refused because the ratchet is forward-only, and the correct fallback is delete-plus-send. It also implies only messages the agent sent are editable.

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 operation and ID mechanism. The E2EE NOTE is long but earns its place because it prevents a predictable failed edit and gives the correct alternative.

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?

It covers purpose, key constraints, and the E2EE workaround well enough for correct invocation. Because no output schema exists, it could say more about the return value or confirmation behavior, but the critical selection and invocation details are present.

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?

Schema description coverage is 100%, so the baseline is 3. The description reinforces the roles of `to` and `message_id`, but adds no meaningful detail beyond the schema for `new_text` or the optional `thread_label`.

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 states a specific verb and resource: edit a direct message you sent, replacing its body by message_id. It also distinguishes this from mDM_delete and mDM_send by explicitly limiting editing to legacy non-E2EE messages.

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?

It gives clear when-to-use guidance and an explicit exclusion: E2EE messages cannot be edited, and the agent should use mDM_delete plus mDM_send instead. The prerequisite that only legacy non-E2EE messages are editable is stated directly.

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.