# Prospect programs: engage

URL: /code/mcp/prospect/verbs · Id: `page:code/mcp/prospect/verbs`

> The Prospect Verbs engage as MCP do programs, with inputs, result, refusals and an example.

Reference for [Prospect](/business/nouns/prospect), one group of [Prospect programs](/code/mcp/prospect).

### Prospect.engage
Engage records a Prospect’s first reply or raised hand and makes it a Lead that keeps its Acquisition. [Verb page](/business/nouns/prospect/engage?interface=mcp).

```text
do: return await $.Prospect.engage(input)
```

Emits [`Prospect.engaged`](/business/events/Prospect.engaged).

**Inputs**

| Input | Type | Required | Description |
| --- | --- | --- | --- |
| `prospect` | [Prospect](/business/nouns/prospect) | Yes | The Prospect that replied or raised a hand. |
| `message` | [Message](/business/nouns/message) | No | The reply or Form submission that shows the engagement. |

**Returns**

| Output | Type | Required | Description |
| --- | --- | --- | --- |
| `lead` | [Lead](/business/nouns/lead) | Yes | The new Lead, with status `new` and the Prospect’s Acquisition. |
| `prospect` | [Prospect](/business/nouns/prospect) | Yes | The Prospect who engaged. |

**Refuses when**

| Check | Error | Fix | Then call |
| --- | --- | --- | --- |
| The key is valid, but its scopes do not allow this operation. | [`forbidden`](/code/api/errors/forbidden) | Use a key whose scopes cover the operation, or ask an owner of the namespace to grant them. | None. |

**Example**

```json
{
  "name": "do",
  "arguments": {
    "code": "return await $.Prospect.engage({ prospect: 'prospect_S8bqJCxC9R' })"
  }
}
```