Skip to main content
Glama

List Leads

leads_list
Read-onlyIdempotent

The customer's leads, newest first, with status and outreach counts but never draft bodies. workflowRunId (a run id from workflow_runs) lists only the leads that run created or added people to, each with runContactIds and runPeople. Pass back nextCursor for the next page. Read-only. In hosts that support MCP Apps, the user also sees this result in the Revnu app.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum leads per page; default 50, range 1-100. Large records may shorten a page.
cursorNoOpaque nextCursor from the previous leads_list result. Omit for the first page; keep the same filters.
statusNoOptional status: qualified, drafted, declined, sent, replied, bounced or partially_sent. Omit for all statuses.
workflowRunIdNoRun ID returned by workflow_runs or workflow_run. Restricts results to leads linked to that run.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
leadsYes
nextCursorYesPass to the next list call; null means the last page.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changed
    • changedOutput schema / properties / leads / items / properties / runPeople / description
      Previous value: -"People the filtered workflow run added to this company's research list but not as contacts."New value: +"People the filtered workflow run returned on this company's research list but not as contacts."
    • addedOutput schema / properties / leads / items / properties / runPeople / items / properties / alreadyKnown
      Added value: +{
      +  "description": "True when the company already had this person before the run.",
      +  "type": "boolean"
      +}
    • addedOutput schema / properties / leads / items / properties / runPeople / items / properties / role
      Added value: +{
      +  "anyOf": [
      +    {
      +      "enum": [
      +        "economic",
      +        "champion",
      +        "technical",
      +        "user"
      +      ],
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "description": "Part in the deal: economic is the buyer, champion the inside advocate."
      +}
  2. Changed1 schema field changed
    • addedOutput schema / properties / leads / items / properties / runPeople
      Added value: +{
      +  "description": "People the filtered workflow run added to this company's research list but not as contacts.",
      +  "items": {
      +    "additionalProperties": true,
      +    "properties": {
      +      "email": {
      +        "type": [
      +          "string",
      +          "null"
      +        ]
      +      },
      +      "linkedinUrl": {
      +        "type": [
      +          "string",
      +          "null"
      +        ]
      +      },
      +      "name": {
      +        "type": "string"
      +      },
      +      "photoUrl": {
      +        "type": [
      +          "string",
      +          "null"
      +        ]
      +      },
      +      "profileUrl": {
      +        "type": [
      +          "string",
      +          "null"
      +        ]
      +      },
      +      "title": {
      +        "type": [
      +          "string",
      +          "null"
      +        ]
      +      }
      +    },
      +    "required": [
      +      "name",
      +      "title",
      +      "email",
      +      "linkedinUrl",
      +      "profileUrl",
      +      "photoUrl"
      +    ],
      +    "type": "object"
      +  },
      +  "type": "array"
      +}
  3. Changed12 schema fields changed
    • addedOutput schema / properties / leads / items / properties / archetype / description
      Added value: +"Customer-defined buyer or company archetype."
    • addedOutput schema / properties / leads / items / properties / companyName / description
      Added value: +"Company name, or null when not recorded."
    • changedOutput schema / properties / leads / items / properties / contact / anyOf
      Previous value: -[
      -  {
      -    "additionalProperties": true,
      -    "properties": {
      -      "email": {
      -        "type": [
      -          "string",
      -          "null"
      -        ]
      -      },
      -      "linkedinUrl": {
      -        "type": [
      -          "string",
      -          "null"
      -        ]
      -      },
      -      "name": {
      -        "type": [
      -          "string",
      -          "null"
      -        ]
      -      },
      -      "photoUrl": {
      -        "description": "Sourced profile photo; use it when displaying a person.",
      -        "type": [
      -          "string",
      -          "null"
      -        ]
      -      },
      -      "title": {
      -        "type": [
      -          "string",
      -          "null"
      -        ]
      -      }
      -    },
      -    "type": "object"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "additionalProperties": true,
      +    "properties": {
      +      "email": {
      +        "description": "Contact email address, or null when unknown.",
      +        "type": [
      +          "string",
      +          "null"
      +        ]
      +      },
      +      "linkedinUrl": {
      +        "description": "Contact's LinkedIn profile URL, when known.",
      +        "type": [
      +          "string",
      +          "null"
      +        ]
      +      },
      +      "name": {
      +        "description": "Contact's sourced full name, or null when unknown.",
      +        "type": [
      +          "string",
      +          "null"
      +        ]
      +      },
      +      "photoUrl": {
      +        "description": "Sourced profile photo; use it when displaying a person.",
      +        "type": [
      +          "string",
      +          "null"
      +        ]
      +      },
      +      "title": {
      +        "description": "Contact's job title, or null when unknown.",
      +        "type": [
      +          "string",
      +          "null"
      +        ]
      +      }
      +    },
      +    "type": "object"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • addedOutput schema / properties / leads / items / properties / contacts / items / properties / email / description
      Added value: +"Contact email address, or null when unknown."
    • addedOutput schema / properties / leads / items / properties / contacts / items / properties / linkedinUrl / description
      Added value: +"Contact's LinkedIn profile URL, when known."
    • addedOutput schema / properties / leads / items / properties / contacts / items / properties / name / description
      Added value: +"Contact's sourced full name, or null when unknown."
    • addedOutput schema / properties / leads / items / properties / contacts / items / properties / title / description
      Added value: +"Contact's job title, or null when unknown."
    • changedOutput schema / properties / leads / items / properties / createdAt / description
      Previous value: -"Unix epoch milliseconds."New value: +"When this lead was saved, as Unix epoch milliseconds."
    • addedOutput schema / properties / leads / items / properties / fields / items / properties / key / description
      Added value: +"Configured lead-column key."
    • addedOutput schema / properties / leads / items / properties / fields / items / properties / value / description
      Added value: +"Stored column value, truncated to the API's display limit."
    • addedOutput schema / properties / leads / items / properties / tags / description
      Added value: +"Labels assigned to this lead."
    • addedOutput schema / properties / leads / items / properties / vertical / description
      Added value: +"Customer-defined industry category."
  4. Changed5 schema fields changed
    • addedInput schema / properties / cursor / description
      Added value: +"Opaque nextCursor from the previous leads_list result. Omit for the first page; keep the same filters."
    • addedInput schema / properties / limit / description
      Added value: +"Maximum leads per page; default 50, range 1-100. Large records may shorten a page."
    • addedInput schema / properties / status / description
      Added value: +"Optional status: qualified, drafted, declined, sent, replied, bounced or partially_sent. Omit for all statuses."
    • addedInput schema / properties / workflowRunId / description
      Added value: +"Run ID returned by workflow_runs or workflow_run. Restricts results to leads linked to that run."
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "$schema": "http://json-schema.org/draft-07/schema#",
      +  "additionalProperties": true,
      +  "properties": {
      +    "leads": {
      +      "items": {
      +        "additionalProperties": true,
      +        "properties": {
      +          "archetype": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "companyName": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "contact": {
      +            "anyOf": [
      +              {
      +                "additionalProperties": true,
      +                "properties": {
      +                  "email": {
      +                    "type": [
      +                      "string",
      +                      "null"
      +                    ]
      +                  },
      +                  "linkedinUrl": {
      +                    "type": [
      +                      "string",
      +                      "null"
      +                    ]
      +                  },
      +                  "name": {
      +                    "type": [
      +                      "string",
      +                      "null"
      +                    ]
      +                  },
      +                  "photoUrl": {
      +                    "description": "Sourced profile photo; use it when displaying a person.",
      +                    "type": [
      +                      "string",
      +                      "null"
      +                    ]
      +                  },
      +                  "title": {
      +                    "type": [
      +                      "string",
      +                      "null"
      +                    ]
      +                  }
      +                },
      +                "type": "object"
      +              },
      +              {
      +                "type": "null"
      +              }
      +            ],
      +            "description": "Primary contact, when available."
      +          },
      +          "contacts": {
      +            "description": "Up to 50 contacts on a detail read.",
      +            "items": {
      +              "additionalProperties": true,
      +              "properties": {
      +                "email": {
      +                  "type": [
      +                    "string",
      +                    "null"
      +                  ]
      +                },
      +                "linkedinUrl": {
      +                  "type": [
      +                    "string",
      +                    "null"
      +                  ]
      +                },
      +                "name": {
      +                  "type": [
      +                    "string",
      +                    "null"
      +                  ]
      +                },
      +                "photoUrl": {
      +                  "description": "Sourced profile photo; use it when displaying a person.",
      +                  "type": [
      +                    "string",
      +                    "null"
      +                  ]
      +                },
      +                "title": {
      +                  "type": [
      +                    "string",
      +                    "null"
      +                  ]
      +                }
      +              },
      +              "type": "object"
      +            },
      +            "type": "array"
      +          },
      +          "contactsTruncated": {
      +            "description": "True when the contact cap was reached.",
      +            "type": "boolean"
      +          },
      +          "createdAt": {
      +            "description": "Unix epoch milliseconds.",
      +            "type": "number"
      +          },
      +          "domain": {
      +            "description": "Company website domain.",
      +            "type": "string"
      +          },
      +          "fields": {
      +            "description": "The customer's configured lead-column values.",
      +            "items": {
      +              "additionalProperties": false,
      +              "properties": {
      +                "key": {
      +                  "type": "string"
      +                },
      +                "value": {
      +                  "type": "string"
      +                }
      +              },
      +              "required": [
      +                "key",
      +                "value"
      +              ],
      +              "type": "object"
      +            },
      +            "type": "array"
      +          },
      +          "id": {
      +            "description": "Lead ID for lead_get and lead_update.",
      +            "type": "string"
      +          },
      +          "runContactIds": {
      +            "description": "Contacts saved by the filtered workflow run.",
      +            "items": {
      +              "type": "string"
      +            },
      +            "type": "array"
      +          },
      +          "status": {
      +            "description": "Qualification or outreach state.",
      +            "type": "string"
      +          },
      +          "tags": {
      +            "items": {
      +              "type": "string"
      +            },
      +            "type": "array"
      +          },
      +          "vertical": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          }
      +        },
      +        "required": [
      +          "id",
      +          "domain"
      +        ],
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "nextCursor": {
      +      "description": "Pass to the next list call; null means the last page.",
      +      "type": [
      +        "string",
      +        "null"
      +      ]
      +    }
      +  },
      +  "required": [
      +    "leads",
      +    "nextCursor"
      +  ],
      +  "type": "object"
      +}
  5. Changed1 schema field changed
    • addedInput schema / properties / workflowRunId
      Added value: +{
      +  "type": "string"
      +}
  6. First observed

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint/idempotentHint/destructiveHint, so safety is covered; the description nonetheless adds real context by disclosing that draft bodies are omitted and that in MCP Apps hosts the result is surfaced to the user in the Revnu app. It does not discuss permission requirements, but that is a modest gap given the annotations.

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?

Four tight sentences, front-loaded with what the tool returns, then filtering, pagination, and host behavior in descending priority. The MCP Apps sentence is the least essential but still earns its place as host-specific behavior.

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?

With an output schema present, return-shape explanation is largely unnecessary, and the description still covers filtering, pagination, and excluded content. Gaps are minor: no guidance on choosing among sibling listing tools and no note on authentication scope.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is already 100%, so the baseline is 3, but the description adds meaning beyond the schema by explaining that run-scoped results carry `runContactIds` and `runPeople`, and by framing `cursor` as an opaque pagination token that must retain the original filters.

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 (lists), the resource (customer's leads), ordering (newest first), and the returned fields (status and outreach counts, never draft bodies). It is clearly distinguishable from the single-record sibling lead_get without opening either 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?

Gives concrete operating context: `workflowRunId` narrows the list to leads a run created or touched, and `nextCursor` must be passed back to page while keeping the same filters. It never names an alternative tool or an explicit when-not condition, so the agent must infer that lead_get is for single records.

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