import_attio_person
Import one Attio person into a campaign as a unified lead plus its campaign contact, using the email address a person chose from the import preview.
# MCP tool reference
1 callable tools.
Use tools/call at https://mcp.schedulerzero.com/mcp with the exact tool name and arguments below. The /tools/ paths in this view are documentation identifiers, not HTTP endpoints. Request execution is disabled for this reference.
Inputs are shown for personal API keys (bound) and for OAuth/delegated agents. Output schemas describe MCP structuredContent: native objects pass through; arrays, scalars and null use a data wrapper. Text content retains the native JSON result.
[Connect a client](/mcp/connect) · [Authentication and authorization](/authentication) · [Generated auth guide](/auth.md) · [Download tool catalog](/mcp-catalog.json) · [Agent documentation](/llms.txt)
## import_attio_person
Import one Attio person into a campaign as a unified lead plus its campaign contact, using the email address a person chose from the import preview.
Use after read_attio_records' person_import_preview, once the email to import is settled. The result says whether the lead was created or matched and reports any contact point that stayed with another lead.
Refused with Conflict when that email is already a contact in the campaign — it is never enrolled twice. For more than one person, use import_attio_list, which is durable.
Obtain the user's explicit authorization before invoking a write or destructive action. This is a client interaction requirement, not a server-issued approval token.
Scopes: lead:import, integration:read
Risk: write; confirmation: explicit; idempotency: supported.
### Input schema (personal API key)
```json
{
"type": "object",
"properties": {
"workspaceId": {
"type": "string",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|[fF]{8}-[fF]{4}-[fF]{4}-[fF]{4}-[fF]{12})$",
"format": "uuid"
},
"import": {
"type": "object",
"properties": {
"recordId": {
"$ref": "#/$defs/ProviderId"
},
"campaignId": {
"type": "string",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|[fF]{8}-[fF]{4}-[fF]{4}-[fF]{4}-[fF]{12})$",
"format": "uuid"
},
"selectedEmail": {
"$ref": "#/$defs/EmailAddress"
},
"mappingId": {
"$ref": "#/$defs/AttioFieldMappingId"
},
"customFieldValues": {
"type": "object",
"additionalProperties": true,
"minProperties": 0,
"maxProperties": 100
}
},
"required": [
"recordId",
"campaignId",
"selectedEmail"
],
"patternProperties": {
"^(?!(?:recordId|campaignId|selectedEmail|mappingId|customFieldValues)$)[\\s\\S]*$": false
},
"additionalProperties": true,
"propertyNames": {
"type": "string",
"enum": [
"recordId",
"campaignId",
"selectedEmail",
"mappingId",
"customFieldValues"
]
}
}
},
"required": [
"workspaceId",
"import"
],
"patternProperties": {
"^(?!(?:workspaceId|import)$)[\\s\\S]*$": false
},
"additionalProperties": true,
"propertyNames": {
"type": "string",
"enum": [
"workspaceId",
"import"
]
},
"$defs": {
"ProviderId": {
"type": "string",
"minLength": 1,
"maxLength": 512
},
"EmailAddress": {
"type": "string",
"minLength": 3,
"maxLength": 320,
"pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$"
},
"AttioFieldMappingId": {
"type": "string",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|[fF]{8}-[fF]{4}-[fF]{4}-[fF]{4}-[fF]{12})$",
"format": "uuid"
},
"ShortText": {
"type": "string",
"minLength": 1,
"maxLength": 256
}
}
}
```
### Input schema (OAuth / delegated agent)
```json
{
"type": "object",
"properties": {
"workspaceId": {
"type": "string",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|[fF]{8}-[fF]{4}-[fF]{4}-[fF]{4}-[fF]{12})$",
"format": "uuid"
},
"import": {
"type": "object",
"properties": {
"recordId": {
"$ref": "#/$defs/ProviderId"
},
"campaignId": {
"type": "string",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|[fF]{8}-[fF]{4}-[fF]{4}-[fF]{4}-[fF]{12})$",
"format": "uuid"
},
"selectedEmail": {
"$ref": "#/$defs/EmailAddress"
},
"mappingId": {
"$ref": "#/$defs/AttioFieldMappingId"
},
"customFieldValues": {
"type": "object",
"additionalProperties": true,
"minProperties": 0,
"maxProperties": 100
}
},
"required": [
"recordId",
"campaignId",
"selectedEmail"
],
"patternProperties": {
"^(?!(?:recordId|campaignId|selectedEmail|mappingId|customFieldValues)$)[\\s\\S]*$": false
},
"additionalProperties": true,
"propertyNames": {
"type": "string",
"enum": [
"recordId",
"campaignId",
"selectedEmail",
"mappingId",
"customFieldValues"
]
}
}
},
"required": [
"workspaceId",
"import"
],
"patternProperties": {
"^(?!(?:workspaceId|import)$)[\\s\\S]*$": false
},
"additionalProperties": true,
"propertyNames": {
"type": "string",
"enum": [
"workspaceId",
"import"
]
},
"$defs": {
"ProviderId": {
"type": "string",
"minLength": 1,
"maxLength": 512
},
"EmailAddress": {
"type": "string",
"minLength": 3,
"maxLength": 320,
"pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$"
},
"AttioFieldMappingId": {
"type": "string",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|[fF]{8}-[fF]{4}-[fF]{4}-[fF]{4}-[fF]{12})$",
"format": "uuid"
},
"ShortText": {
"type": "string",
"minLength": 1,
"maxLength": 256
}
}
}
```
### Output schema (structuredContent)
```json
{
"$defs": {
"AttioImportId": {
"type": "string",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|[fF]{8}-[fF]{4}-[fF]{4}-[fF]{4}-[fF]{12})$",
"format": "uuid"
},
"ShortText": {
"type": "string",
"minLength": 1,
"maxLength": 256
},
"AttioImportPersonResult": {
"type": "object",
"properties": {
"importId": {
"$ref": "#/$defs/AttioImportId"
},
"campaignContactId": {
"type": "string",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|[fF]{8}-[fF]{4}-[fF]{4}-[fF]{4}-[fF]{12})$",
"format": "uuid"
},
"leadId": {
"type": "string",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|[fF]{8}-[fF]{4}-[fF]{4}-[fF]{4}-[fF]{12})$",
"format": "uuid"
},
"leadCreated": {
"type": "boolean"
},
"conflicts": {
"type": "array",
"items": {
"type": "object",
"properties": {
"kind": {
"type": "string",
"enum": [
"email",
"phone"
]
},
"value": {
"$ref": "#/$defs/ShortText"
},
"ownedByLeadId": {
"type": "string",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|[fF]{8}-[fF]{4}-[fF]{4}-[fF]{4}-[fF]{12})$",
"format": "uuid"
}
},
"required": [
"kind",
"value",
"ownedByLeadId"
],
"patternProperties": {
"^(?!(?:kind|value|ownedByLeadId)$)[\\s\\S]*$": false
},
"additionalProperties": true,
"propertyNames": {
"type": "string",
"enum": [
"kind",
"value",
"ownedByLeadId"
]
}
},
"maxItems": 100
}
},
"required": [
"importId",
"campaignContactId",
"leadId",
"leadCreated",
"conflicts"
],
"patternProperties": {
"^(?!(?:importId|campaignContactId|leadId|leadCreated|conflicts)$)[\\s\\S]*$": false
},
"additionalProperties": true,
"propertyNames": {
"type": "string",
"enum": [
"importId",
"campaignContactId",
"leadId",
"leadCreated",
"conflicts"
]
}
}
},
"type": "object",
"anyOf": [
{
"allOf": [
{
"$ref": "#/$defs/AttioImportPersonResult"
},
{
"type": "object"
}
]
},
{
"type": "object",
"properties": {
"data": {
"allOf": [
{
"$ref": "#/$defs/AttioImportPersonResult"
},
{
"not": {
"type": "object"
}
}
]
}
},
"required": [
"data"
],
"additionalProperties": false
}
]
}
```
### Underlying API operations
- `attioImports.person`: `POST /v1/workspaces/:workspaceId/integrations/attio/imports/person`