MixMax ACTION
Get Contacts
Lists all your Mixmax Contacts (ie people you've emailed using Mixmax). Does not currently return contacts shared with you via shared contact groups (a performance limitiation). See the docs here
- Action
- Read only
- API key
- SDK
- MCP
IMPLEMENTATION
Call this tool
Connect a user's MixMax account once, then configure and run Get Contacts from your backend or agent.
import { PipedreamClient } from "@pipedream/sdk"
const pd = new PipedreamClient({
projectId: process.env.PIPEDREAM_PROJECT_ID!,
clientId: process.env.PIPEDREAM_CLIENT_ID!,
clientSecret: process.env.PIPEDREAM_CLIENT_SECRET!,
projectEnvironment: "production",
})
const result = await pd.actions.run({
id: "mixmax-get-contacts",
externalUserId: "{external_user_id}", // any stable ID for this user in your system
configuredProps: {
mixmax: { authProvisionId: "apn_xxxxxxx" },
sort: "Sort Field",
sortAscending: true,
},
})
console.log(result)curl -X POST https://api.pipedream.com/v1/connect/{project_id}/actions/run \
-H "Content-Type: application/json" \
-H "X-PD-Environment: production" \
-H "Authorization: Bearer {access_token}" \
-d '{
"external_user_id": "{external_user_id}",
"id": "mixmax-get-contacts",
"configured_props": {
"mixmax": { "authProvisionId": "apn_xxxxxxx" },
"sort": "Sort Field",
"sortAscending": true
}
}'// accessToken: mint a short-lived token with the Connect SDK — see the MCP guide
const transport = new StreamableHTTPClientTransport(
new URL("https://remote.mcp.pipedream.net/v3"),
{
requestInit: {
headers: {
Authorization: `Bearer ${accessToken}`,
"x-pd-project-id": "{project_id}",
"x-pd-environment": "production",
"x-pd-external-user-id": "{external_user_id}", // any stable ID for this user in your system
"x-pd-app-slug": "mixmax",
},
},
},
)
const mcp = new Client({ name: "my-agent", version: "1.0.0" })
await mcp.connect(transport)
const { tools } = await mcp.listTools()
// listTools() hands your model this tool's input schema, so it can
// fill the arguments itself:
const result = await mcp.callTool({
name: "mixmax-get-contacts",
arguments: {
sort: "Sort Field",
sortAscending: true,
},
})SCHEMA
Inputs
Pipedream supplies the connected account. Your application provides the operation-specific values below. Dynamic inputs are resolved against that user's account.
| Property | Type | Description |
|---|---|---|
sort Sort Field | string | Sort by this field in order to get a list of results to then return in pages. Optional |
sortAscending Sort Ascending | boolean | True to sort ascending (A-Z). Optional |
email Email | string[] | Exact email required. Matches case-insensitively. Optional |
name Name | string | Partial match on contact name. Matches case-insensitively. Only one name search operator supported. Optional |
groups Groups | string[] | Exact, case-sensitive match on group name. If multiple group search operators passed they will be treated as an AND (i.e. contacts returned must be in all groups). Optional Dynamic |
includeShared Include Shared | boolean | True to include contacts shared with you. Can only be used when also using any filters due to current performance limitations. Optional |
expand Expand | string[] | Fields to expand. Optional |
withAnalytics With Analytics | boolean | Include analytics in the response Optional |
dates Dates | string | A string describing the analytics date range. Optional |
limit Limit | integer | The number of results you'd like to get back. Defaults to 10. Optional |
fields Fields | string[] | By default, all APIs return all properties of the response objects. For APIs that return collections, you can have it return only specific fields. Optional |
REFERENCE
Tool details
Behavior hints are published with the component in the Pipedream registry and surface as MCP tool annotations, so an agent can reason about a tool before it calls it.
- Registry key
- mixmax-get-contacts
- Version
- 0.0.2
- App
- MixMax
- Authentication
- API key
- Read-only
- Yes
- Destructive
- No
- Open world
- Yes
- Source
- View on GitHub ↗