Skip to main content
Glama
This connector has been deprecated

Duplicate listing. The official PumpGTM connector is https://glama.ai/mcp/connectors/com.pumpgtm/mcp (same server, https://mcp.pumpgtm.com/mcp).

Read a lead move operation

get_lead_move
Read-onlyIdempotent

Read one saved move operation in this workspace using its operationId. Returns pending, running, completed, cancelled or failed with serverNow and executeAfter. Read-only: polling does not execute or restart a move. Results confirm moved or blocked people and include each reason. A failed operation may contain confirmed partial results. Compare requestLeadIds against results: missing people need review, and must not be assumed blocked or unmoved. Keep the operationId returned by move_leads for recovery. Returns the operation with counts and per-person results.

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": {
      "operationId": "<operationId>"
    },
    "name": "get_lead_move"
  }
}

Input Schema

NameRequiredDescriptionDefault
operationIdYesThe operationId you supplied to move_leads.
workspaceIdNoA teammate's workspace you may manage: an active workspace ID from list_team_workspaces. Omit for your own workspace. Supply on every call for a teammate.

Output Schema

NameRequiredDescriptionDefault
statusYespending, running, completed, cancelled or failed.
resultsYesConfirmed per-person outcomes so far.
serverNowYesServer time of this read; compare with executeAfter.
movedCountYesPeople confirmed moved so far.
sequenceIdYesDestination sequence ID.
operationIdYesThe move operation's ID; keep it to read or cancel the move.
blockedCountYesPeople confirmed blocked so far.
executeAfterYesTime the move starts; cancel_lead_move works only before this.
requestLeadIdsYesEvery person requested. Anyone missing from results is still unconfirmed and needs review.
sourceSequenceIdNoSource sequence the move was bound to, when one was supplied.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • addedInput schema / properties / operationId / description
      Added value: +"The operationId you supplied to move_leads."
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "$schema": "https://json-schema.org/draft/2020-12/schema",
      +  "additionalProperties": {},
      +  "properties": {
      +    "blockedCount": {
      +      "description": "People confirmed blocked so far.",
      +      "type": "number"
      +    },
      +    "executeAfter": {
      +      "description": "Time the move starts; cancel_lead_move works only before this.",
      +      "type": "string"
      +    },
      +    "movedCount": {
      +      "description": "People confirmed moved so far.",
      +      "type": "number"
      +    },
      +    "operationId": {
      +      "description": "The move operation's ID; keep it to read or cancel the move.",
      +      "type": "string"
      +    },
      +    "requestLeadIds": {
      +      "description": "Every person requested. Anyone missing from results is still unconfirmed and needs review.",
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "results": {
      +      "description": "Confirmed per-person outcomes so far.",
      +      "items": {
      +        "additionalProperties": {},
      +        "properties": {
      +          "leadId": {
      +            "description": "The person's lead ID.",
      +            "type": "string"
      +          },
      +          "message": {
      +            "description": "Plain-language explanation to show the customer.",
      +            "type": "string"
      +          },
      +          "person": {
      +            "description": "The person's name, or null when unknown.",
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "reason": {
      +            "description": "Why the person is blocked (or a safety note), or null. Codes such as outreach_started or contact_stopped.",
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "sourceSequenceId": {
      +            "description": "Sequence the person was in, or null.",
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "status": {
      +            "description": "moved or blocked.",
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "leadId",
      +          "person",
      +          "sourceSequenceId",
      +          "reason",
      +          "message",
      +          "status"
      +        ],
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "sequenceId": {
      +      "description": "Destination sequence ID.",
      +      "type": "string"
      +    },
      +    "serverNow": {
      +      "description": "Server time of this read; compare with executeAfter.",
      +      "type": "string"
      +    },
      +    "sourceSequenceId": {
      +      "description": "Source sequence the move was bound to, when one was supplied.",
      +      "type": "string"
      +    },
      +    "status": {
      +      "description": "pending, running, completed, cancelled or failed.",
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "operationId",
      +    "sequenceId",
      +    "requestLeadIds",
      +    "status",
      +    "executeAfter",
      +    "serverNow",
      +    "movedCount",
      +    "blockedCount",
      +    "results"
      +  ],
      +  "type": "object"
      +}
  2. Added

TDQS

A4.4/5.0
Behavior5/5

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

Annotations already declare readOnly/idempotent/non-destructive, and the description adds real behavior beyond them: polling will not execute or restart a move, a failed operation may still contain confirmed partial results, and missing requestLeadIds must not be assumed blocked or unmoved. Those are exactly the traps an agent could fall into when interpreting partial failure.

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 status list, read-only caveat, and partial-failure warning are front-loaded and each earns its place, but the closing sentence 'Returns the operation with counts and per-person results' largely repeats what the opening sentence and the output schema already establish. A tighter draft would cut that redundancy.

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 an output schema present the description needn't document return shape, and it still covers the terminal status set, serverNow/executeAfter timing, partial results on failure, and the reconciliation rule for missing people. Nothing an agent needs to poll and interpret this operation correctly is missing.

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%, and the schema already says operationId is the value supplied to move_leads. The description's 'using its operationId' and 'Keep the operationId returned by move_leads for recovery' reinforce that source but add little syntax or usage nuance, and workspaceId (teammate workspace) is not discussed at all. Baseline 3 is appropriate.

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 first sentence states a specific verb and resource ('Read one saved move operation') and pins it to the operationId key, which cleanly separates it from the write-side siblings move_leads and cancel_lead_move. An agent knows exactly what this returns without opening the schema.

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?

It gives clear context: poll this to track a move started by move_leads, retain the operationId for recovery, and compare requestLeadIds against results to find people needing review. It never states an explicit exclusion (e.g., when to prefer a listing or preview tool), so it falls short of the when-not guidance a 5 requires.

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