Skip to main content
Glama
ignytehq

plunk-mcp

Official
by ignytehq

Import contacts

plunk_import_contacts

Bulk import contacts from a list or CSV as a background job. Poll the returned job ID to track status.

Instructions

Purpose: Import many contacts at once. Runs as a background job.

Not for: One person, which is plunk_create_contact.

Returns: A job id to poll with plunk_get_import_status.

Use when: Loading a list from elsewhere.

Note: Only import addresses that consented to hear from you. Importing an unconsented list is how a sending domain gets burned.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
contactsYesInline contact list (alternative to CSV)

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv2.0.0

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare the mutation profile (readOnlyHint=false, idempotentHint=false, destructiveHint=false), so the description's added value is real: it discloses that this runs as a background job, that the return is a job id to poll via plunk_get_import_status, and that unconsented imports can damage sending-domain reputation. It stops short of limits, dedup/update behavior for existing addresses, or batch-size constraints.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Bold-labeled, front-loaded sections (Purpose/Not for/Returns/Use when/Note) let an agent scan the routing decision, the async contract, and the compliance warning in seconds. Every line carries information; none is filler.

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?

Though there is no output schema, the description covers the async lifecycle by naming the job id and the polling tool, and it flags the deliverability risk of unconsented imports. Missing operational detail such as size limits, rate limits, and how existing contacts are handled keeps it from a 5.

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 single 'contacts' parameter carries its own inline description ('Inline contact list (alternative to CSV)') plus full nested item typing. The description adds nothing about the array shape or the 'subscribed'/'data' fields, so baseline 3 applies.

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 and resource ('Import many contacts at once') and immediately scopes it against the single-contact sibling, plunk_create_contact. An agent can distinguish it from the one-off creation tool without opening any schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly covers when to use ('Loading a list from elsewhere'), when not to use ('One person'), and names the alternative tool. Only minor gap is that it never contrasts with the nearby plunk_bulk_subscribe_contacts sibling, but the core routing decision is fully spelled out.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Deploy Server

Other Tools