Skip to main content
Glama

projects_move_chat

Moves a chat into a project or removes it by passing a null container ID, helping reorganize chats without deleting them.

Instructions

Move a chat into a project, or pass containerId null to remove it from its project. Prefer over delete when reorganizing. Requires browsers_bind and allowProjects.

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": {
      "platform": "<platform>",
      "chatId": "<chatId>"
    },
    "name": "projects_move_chat"
  }
}

Input Schema

NameRequiredDescriptionDefault
chatIdYesChat id to move
platformYesProvider id: chatgpt | grok | grok-x | claude | copilot | qwen | deepseek | perplexity
containerIdNoTarget project id; null/omit-as-null removes the chat from its project

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changedv1.0.4
    • addedInput schema / properties / chatId / description
      Added value: +"Chat id to move"
    • addedInput schema / properties / containerId / description
      Added value: +"Target project id; null/omit-as-null removes the chat from its project"
    • addedInput schema / properties / platform / description
      Added value: +"Provider id: chatgpt | grok | grok-x | claude | copilot | qwen | deepseek | perplexity"
  2. First observedv1.0.3

TDQS

A4.5/5.0
Behavior5/5

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

Annotations only tell the agent this is a non-read-only, non-destructive, open-world mutation; the description adds the two facts annotations cannot convey: that a null containerId performs the inverse un-assignment, and that browsers_bind and allowProjects must be satisfied first. Those setup requirements are exactly the kind of pre-call context an agent needs to avoid a failed invocation.

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?

Three short sentences in a deliberate order: what it does, when to prefer it, what must be true first. No filler, and the dual-mode behavior is front-loaded.

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?

With only three parameters, full schema coverage, an explicit enum, annotations covering the safety profile, and no output schema to explain, the description covers everything needed to invoke correctly. The prerequisite callout closes the one gap that would otherwise cause a failure.

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 schema already documents all three parameters including the null-means-remove semantics for containerId. The description restates that null behavior rather than adding new meaning, so the baseline of 3 applies.

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?

States a specific verb and resource ("Move a chat into a project") and immediately covers the inverse operation ("pass containerId null to remove it from its project"). This distinguishes it from the delete-style siblings by describing reorganization rather than removal.

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?

Gives a clear preference rule — "Prefer over delete when reorganizing" — and names the enabling prerequisites (browsers_bind, allowProjects). It never states a when-not condition or names the exact delete tool among chats_delete/projects_delete, so the routing hint is directional rather than exhaustive.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.