Skip to main content
Glama

User Activity Write Tool

user-activity-write
Destructive

Create CRM activity entries or complete scheduled activities. Requires user_id. create requires content and accepts an optional deal_id belonging to that contact, so the activity appears on both the contact and the deal. complete requires activity_id. Entries and completions are attributed to the authenticated user.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
actionYesAction to perform.
contentNoActivity content/notes (plain text, max 10000 chars). Required for "create" action.
deal_idNoOptional for create: attach the activity to this deal, which must belong to user_id. Omit or pass null for a contact-only activity.
user_idYesUser id. Required for all actions.
activity_idNoActivity ID. Required for "complete".
assigned_toNoOptional staff user ID to assign. Only used when scheduled_at is provided.
scheduled_atNoOptional future scheduled date/time for "create" (ISO 8601). If omitted, the activity is logged as completed.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedInput schema / properties / deal_id
      Added value: +{
      +  "description": "Optional for create: attach the activity to this deal, which must belong to user_id. Omit or pass null for a contact-only activity.",
      +  "type": [
      +    "integer",
      +    "null"
      +  ]
      +}
  2. First observed

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false, destructiveHint=true, and openWorldHint=false, so the agent knows this is a destructive write within a closed system. The description adds that entries are attributed to the authenticated user and that deal_id must belong to the contact, which is useful beyond the annotations. It does not mention what happens to existing data on completion or whether completion is reversible, which is important for a destructive tool.

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?

The description is three sentences, each front-loaded with the action or constraint. It wastes little space, though it could be slightly tighter by merging the first two sentences. Every sentence adds value about required fields and attribution.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a write tool with seven parameters, no output schema, and destructive annotations, the description covers required fields and attribution but omits important behavioral details such as whether completing an activity is reversible, what the response includes, or error behavior when deal_id doesn't belong to the user. It is adequate but has clear gaps for a destructive mutation.

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 coverage is 100%, so the schema already documents all parameters including enum values and conditional requirements. The description reinforces the conditional requirements (create requires content, complete requires activity_id) and adds the constraint that deal_id must belong to user_id, which is not in the schema. However, it does not elaborate on parameters like assigned_to or scheduled_at beyond what the schema says.

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 clearly states a specific verb pair (create/complete) on CRM activity entries, and the title and name align. It doesn't explicitly contrast with the sibling user-activity-read or deal-activity-write, but the mirror to user-activity-read is implied by the name. It's clearly a write tool for user activities.

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 explains what each action requires (create needs content, complete needs activity_id), which implicitly guides usage. However, it does not state when to choose this tool over the sibling user-activity-read or deal-activity-write, nor does it warn about exclusions or prerequisites beyond the required parameters.

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.

Resources