Skip to main content
Glama

create_action

Create a follow-up tied to a person — a to-do for the relationship (e.g. 'send the deck', 'intro to Ana'). In Team context, pass team_id and assigned_to to create it for any teammate against a Team-visible relationship. RECOMMENDED: include both assigned_to and remind_at whenever ownership and timing are known; neither is required. @mention a name in content to link someone in the relationship owner's network. Read open ones via get_person (relationship.actions); close them with complete_action or edit them with update_action.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
tagsNoOptional tags.
contentYesWhat needs doing. @mention a name in your network to link them.
team_idNoSelected Team organization id from account_status. Required with assigned_to; connected Team chats supply it automatically.
person_idYesThe person this follow-up is about.
remind_atNoRECOMMENDED date to revisit or complete this action (ISO timestamp). Omit only for genuinely open-ended work.
assigned_toNoRECOMMENDED for Team actions: exact teammate name, email, or user id. Omit only when ownership is genuinely undecided.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
okYesWhether noticed completed the operation.
dataNoThe operation result when ok is true.
errorNoA human-readable error when ok is false.

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "$schema": "http://json-schema.org/draft-07/schema#",
      +  "additionalProperties": true,
      +  "properties": {
      +    "data": {
      +      "additionalProperties": true,
      +      "description": "The operation result when ok is true.",
      +      "properties": {
      +        "action_id": {
      +          "type": "string"
      +        },
      +        "id": {
      +          "type": "string"
      +        },
      +        "person_id": {
      +          "type": "string"
      +        },
      +        "remind_at": {
      +          "type": [
      +            "string",
      +            "null"
      +          ]
      +        },
      +        "status": {
      +          "type": "string"
      +        },
      +        "title": {
      +          "type": "string"
      +        }
      +      },
      +      "type": "object"
      +    },
      +    "error": {
      +      "description": "A human-readable error when ok is false.",
      +      "type": "string"
      +    },
      +    "ok": {
      +      "description": "Whether noticed completed the operation.",
      +      "type": "boolean"
      +    }
      +  },
      +  "required": [
      +    "ok"
      +  ],
      +  "type": "object"
      +}
  2. First observed

TDQS

A5/5.0
Behavior5/5

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

Annotations only indicate non-readOnly, non-idempotent, non-destructive hints. The description adds substantial behavioral context beyond that: it explains the @mention linking mechanism, the Team-visible relationship nuance, and the semantics of recommended optional fields (assigned_to, remind_at). It effectively communicates the side effects and constraints of the operation without contradicting any annotations.

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 front-loaded with the core purpose, then progressively covers team context, recommendations, and alternative actions. Every sentence adds essential information—there is no filler. The structured flow makes it easy to parse and act on, and the final sentence routes to related tools seamlessly.

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?

Despite the tool's moderate complexity (6 params, multiple contexts, sibling interactions), the description covers the full invocation surface: what it creates, how to use it in Team vs. personal context, which options are recommended vs. optional, how @mentions work, and how to handle the created action afterward (read/close/edit). The output schema exists, so return values need no explanation. Nothing an agent needs to call it correctly is missing.

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?

All parameters already have schema descriptions (100% coverage), but the description enriches them meaningfully. It clarifies the relationship between team_id and assigned_to ('Required with assigned_to; connected Team chats supply it automatically'), defines the @mention behavior in content, and marks remind_at as 'RECOMMENDED' with a categorical reason ('Omit only for genuinely open-ended work'). This goes well beyond the schema.

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 opens with a specific verb+resource: 'Create a follow-up tied to a person — a to-do for the relationship.' It clearly distinguishes this tool from siblings by naming complete_action and update_action for closing and editing, and it gives concrete examples ('send the deck', 'intro to Ana'). The purpose is unmistakable.

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 provides explicit guidance on when to use this tool and when to use alternatives: 'Read open ones via get_person', 'close them with complete_action or edit them with update_action.' It also covers the Team context condition (when to pass team_id and assigned_to) and recommends when to include certain fields, leaving no ambiguity about the decision process.

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

B3.4/5.0
Disambiguation3/5

The tool set is organized around distinct resources, and the descriptions work hard to separate them, but several close pairs remain easy to confuse: add_memory vs memory_save vs add_note, accept_identity_match vs suggest_identity_match, and dismiss_identity_match vs mark_different_people. An agent will often need to read very subtle signals (who originated the content, pending vs initiating a merge, soft vs durable rejection) to pick the right tool.

Naming Consistency3/5

Most tools follow a clear verb_noun snake_case pattern like create_list, update_person, and delete_view, which is readable and mostly predictable. However, the memory tools break the pattern (memory_save, memory_get, memory_search instead of save_memory/get_memory/search_memory), and a few noun-style names (my_profile, network_summary, account_status) add inconsistency.

Tool Count1/5

At 57 tools, this is an extremely large surface that exceeds the calibration threshold for an extreme mismatch. The scope is broad, but many tools are micro-specialized variations of the same concept, such as four memory-related tools and seven identity-match tools, which makes the count feel inflated rather than well-scoped.

Completeness4/5

The tool set provides thorough lifecycle coverage for the core domain: people can be added, updated, searched, and removed; lists, views, actions, and scheduled tasks have create/read/update/delete; and identity matching has accept, dismiss, differentiate, and suggest paths. Minor gaps exist, such as no direct memory/note deletion or intro deletion, but agents can generally complete workflows without hitting dead ends.

Resources