The Dropcontact MCP connector routes your AI agent's tool calls to Dropcontact's own MCP server through Scalekit. Each user signs in to Dropcontact once, and Scalekit stores and refreshes their tokens, so your agent never handles credentials. It comes with 6 tools.
- Tools
- 6
- What they doRead · write · destructive
- 2 · 4 · 02 read4 write0 destructive
- Users sign in with
- OAuth
- OAuth app
- Scalekit's or your own
Setup
Install the SDK
Terminal window npm install @scalekit-sdk/node dotenvTerminal window pip install scalekit-sdk-python python-dotenvSet your credentials
Add your Scalekit credentials to your
.envfile. Find values in app.scalekit.com > Developers > API Credentials..env SCALEKIT_ENVIRONMENT_URL=<your-environment-url>SCALEKIT_CLIENT_ID=<your-client-id>SCALEKIT_CLIENT_SECRET=<your-client-secret>Create the Dropcontact MCP connection
In AgentKit > Connections, create a Dropcontact MCP connection. The name you give it is the
connection_nameyour code passes. See Configure connections.Scalekit credentials are available for Dropcontact MCP server, so you don't need to register an OAuth app.
Authorize a user and make your first call
quickstart.mts import { ScalekitClient } from '@scalekit-sdk/node'import 'dotenv/config'import { createInterface } from 'node:readline/promises'const scalekit = new ScalekitClient(process.env.SCALEKIT_ENVIRONMENT_URL,process.env.SCALEKIT_CLIENT_ID,process.env.SCALEKIT_CLIENT_SECRET,)const actions = scalekit.actionsconst connector = 'dropcontactmcp'const identifier = 'user_123'// Generate an authorization link for the userconst { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })console.log('Authorize Dropcontact MCP:', link)const rl = createInterface({ input: process.stdin, output: process.stdout })await rl.question('Press Enter after authorizing...')rl.close()// Make your first callconst result = await actions.executeTool({connector,identifier,toolName: 'dropcontactmcp_check_credits',toolInput: {},})console.log(result)Terminal window npx tsx quickstart.mtsquickstart.py import osfrom scalekit import ScalekitClientfrom dotenv import load_dotenvload_dotenv()scalekit_client = ScalekitClient(env_url=os.getenv("SCALEKIT_ENVIRONMENT_URL"),client_id=os.getenv("SCALEKIT_CLIENT_ID"),client_secret=os.getenv("SCALEKIT_CLIENT_SECRET"),)actions = scalekit_client.actionsconnection_name = "dropcontactmcp"identifier = "user_123"# Generate an authorization link for the userlink_response = actions.get_authorization_link(connection_name=connection_name,identifier=identifier,)print("Authorize Dropcontact MCP:", link_response.link)input("Press Enter after authorizing...")# Make your first callresult = actions.execute_tool(tool_input={},tool_name="dropcontactmcp_check_credits",connection_name=connection_name,identifier=identifier,)print(result)Terminal window python quickstart.pyEach user signs in once. See Authorize a user for the full flow and statuses.
Tools
Pass the exact name toexecute_tooldropcontactmcp_check_creditsCheck the number of remaining Dropcontact enrichment credits for the authenticated user.Read-onlyCheck Credits
Check the number of remaining Dropcontact enrichment credits for the authenticated user. Each contact enrichment or email validation consumes 1 credit. Call this before submitting enrichment requests to verify sufficient credits are available.
Inputs
conversation_idstring- Conversation correlation ID. Present only when an earlier tool response in this conversation returned one; that value is carried unchanged on subsequent calls. Omitted on the first call.
reason_for_invocationstring- Brief explanation of why you chose this tool for the current task. Optional audit field; max 500 characters (longer values are truncated). Plain text only.
dropcontactmcp_retrieve_enrichment_resultRetrieve the result of a previously submitted enrichment or email validation request.Read-onlyRetrieve Enrichment Result
Retrieve the result of a previously submitted enrichment or email validation request. Polls until processing is complete (typically 10–60 seconds, up to 3 minutes). Call this after any submit tool returns a request_id.
Inputs
request_idstringrequired- The request ID returned by a previous submit tool call (submit_contact_enrichment_by_name, submit_contact_enrichment_by_full_name, submit_contact_enrichment_by_linkedin, or submit_email_validation). Used to poll for the enrichment or validation result.
conversation_idstring- Conversation correlation ID. Present only when an earlier tool response in this conversation returned one; that value is carried unchanged on subsequent calls. Omitted on the first call.
reason_for_invocationstring- Brief explanation of why you chose this tool for the current task. Optional audit field; max 500 characters (longer values are truncated). Plain text only.
dropcontactmcp_submit_contact_enrichment_by_full_nameSubmit a contact enrichment request using a full name and company name.WriteSubmit Contact Enrichment By Full Name
Submit a contact enrichment request using a full name and company name. Returns a request_id. Call retrieve_enrichment_result with the returned request_id to get results.
Inputs
companystringrequired- The name of the company where the contact works. Required to narrow the search and return accurate professional contact information.
full_namestringrequired- The contact's full name (first and last name combined). Used together with the company name to identify the person and find their professional email address.
conversation_idstring- Conversation correlation ID. Present only when an earlier tool response in this conversation returned one; that value is carried unchanged on subsequent calls. Omitted on the first call.
reason_for_invocationstring- Brief explanation of why you chose this tool for the current task. Optional audit field; max 500 characters (longer values are truncated). Plain text only.
dropcontactmcp_submit_contact_enrichment_by_linkedinSubmit a contact enrichment request using a LinkedIn profile URL.WriteSubmit Contact Enrichment By LinkedIn
Submit a contact enrichment request using a LinkedIn profile URL. Returns a request_id. Call retrieve_enrichment_result with the returned request_id to get results.
Inputs
linkedin_urlstringrequired- The full LinkedIn profile URL of the contact to enrich. Must be a valid linkedin.com/in/ profile URL.
conversation_idstring- Conversation correlation ID. Present only when an earlier tool response in this conversation returned one; that value is carried unchanged on subsequent calls. Omitted on the first call.
reason_for_invocationstring- Brief explanation of why you chose this tool for the current task. Optional audit field; max 500 characters (longer values are truncated). Plain text only.
dropcontactmcp_submit_contact_enrichment_by_nameSubmit a contact enrichment request using first name, last name, and company name.WriteSubmit Contact Enrichment By Name
Submit a contact enrichment request using first name, last name, and company name. Returns a request_id. Call retrieve_enrichment_result with the returned request_id to get results.
Inputs
companystringrequired- The name of the company where the contact works. Required to narrow the search and return accurate professional contact information.
first_namestringrequired- The contact's first name. Used together with last name and company to identify the person and find their professional email address.
last_namestringrequired- The contact's last name. Used together with first name and company to identify the person and find their professional email address.
conversation_idstring- Conversation correlation ID. Present only when an earlier tool response in this conversation returned one; that value is carried unchanged on subsequent calls. Omitted on the first call.
reason_for_invocationstring- Brief explanation of why you chose this tool for the current task. Optional audit field; max 500 characters (longer values are truncated). Plain text only.
dropcontactmcp_submit_email_validationSubmit an email validation request to check whether an email address is valid and deliverable.WriteSubmit Email Validation
Submit an email validation request to check whether an email address is valid and deliverable. Returns qualification: nominative, catch-all, generic, or invalid. Returns a request_id. Call retrieve_enrichment_result to get results.
Inputs
email_addressstringrequired- The email address to validate. Will be checked for deliverability and qualified as nominative, catch-all, generic, or invalid.
conversation_idstring- Conversation correlation ID. Present only when an earlier tool response in this conversation returned one; that value is carried unchanged on subsequent calls. Omitted on the first call.
reason_for_invocationstring- Brief explanation of why you chose this tool for the current task. Optional audit field; max 500 characters (longer values are truncated). Plain text only.
No tools match.