# Basin MCP MCP

> Basin MCP automates your entire lead capture pipeline. Connect it to your agent and let it manage form submissions, filter spam entries, and trigger webhooks instantly via natural conversation. It turns raw website data into actionable insights for sales or marketing.

## Overview
- **Category:** developer-tools
- **Price:** Free
- **Tags:** form-backend, lead-capture, spam-filtering, webhook-automation, data-collection

## Description

This MCP lets your AI client run a full-time data audit on all the leads coming through your site. Instead of logging into a dashboard to check form submissions, you just ask your agent questions. Your agent reads every new entry, checks if it's spam, and pulls out exactly the details you need—like job title or company size—and gives them to you in plain text. It keeps track of all your forms, so you know where every piece of data is coming from. Plus, if an outside system needs to know about a new lead, your agent can manually trigger webhooks for specific submissions, keeping all your downstream integrations updated without manual effort. You get real-time control over your inbound data flow right through your chat interface, and it's all managed easily within the Vinkius catalog.

## Tools

### delete_submission
Permanently removes a specific submission record from your account.

### get_account_check
Verifies that the Basin connection is active and working correctly.

### get_form
Retrieves detailed metadata for a single form you have created or are tracking.

### get_latest_submission
Gets the full details of the most recent lead submission instantly.

### get_submission
Fetches all data points for a specific, identified submission ID.

### list_form_submissions
Lists every form submission associated with a single, named form.

### list_forms
Provides a full list of all forms tracked in your Basin account.

### list_submissions
Lists every submission across all forms you have set up.

### mark_as_not_spam
Changes the status of a spam-flagged entry back to an active lead.

### mark_as_spam
Updates a submission's metadata, marking it as suspicious or junk data.

### refire_webhooks
Manually triggers webhooks for any specific submission to update linked systems.

### update_submission
Changes the metadata of an existing submission, such as updating its spam status.

## Prompt Examples

**Prompt:** 
```
Show me the latest submission from my contact forms.
```

**Response:** 
```
I've retrieved the latest submission. It's from 'John Doe' (john@example.com) via the 'Contact Us' form. He is interested in a product demo. Would you like the full details?
```

**Prompt:** 
```
Mark submission ID 'sub_abc123' as spam.
```

**Response:** 
```
Submission `sub_abc123` has been successfully marked as spam. It will no longer appear in your active lead list.
```

**Prompt:** 
```
List all forms in my Basin account.
```

**Response:** 
```
I've found 3 forms in your account: 'Contact Page', 'Newsletter Signup', and 'Ebook Download'. Which one would you like to audit?
```

## Capabilities

### Audit All Leads
List every submission across every form on your site to see a complete history of leads.

### Find Specific Data Points
Retrieve the single most recent lead or pull full details for any specific entry using natural language queries.

### Filter Spam Entries
Mark submissions as spam or restore false positives to keep your active lead list clean.

### Manage Forms Metadata
List all forms you run and get detailed information about each one's data points.

### Trigger External Actions
Manually send webhook signals for any specific submission to update third-party systems.

## Use Cases

### The Sales Team Needs a Daily Lead Report
A sales manager needs to compile a report of all leads captured yesterday. They ask the agent to use `list_form_submissions` for three key forms and then asks the agent to summarize any entries marked as spam, ensuring they only get clean contacts.

### The Ops Team Needs to Fix a Broken Pipeline
An operations engineer knows a new lead was captured but the CRM didn't update. They ask the agent to run `get_submission` on that lead and then immediately call `refire_webhooks` so the data flows correctly.

### The Marketing Team Needs an Audit
Marketing is worried about lead quality after a campaign. They ask the agent to use `list_forms` to check which forms are active, then run `get_form` on one specific form to verify its metadata.

### The Support Agent Needs Quick Info
A support agent has a ticket for a lead. Instead of asking the user for an ID, they ask the agent to use `get_latest_submission` and get the key details right in the chat to prepare a response.

## Benefits

- Audit leads without clicking through dashboards. You can use `list_submissions` to see every entry site-wide, or `list_form_submissions` for a single form's history. Your agent handles the filtering and presentation.
- Maintain data integrity instantly. If you spot spam, your agent runs `mark_as_spam`, keeping your active lead pool clean. You can reverse this using `mark_as_not_spam` when it's a false positive.
- Respond to new leads with zero delay. Use the `get_latest_submission` tool to pull the newest data point immediately, allowing you to draft a reply right away.
- Keep integrations synced automatically. When an external system needs to know about a lead, your agent calls `refire_webhooks`, ensuring nothing falls through the cracks.
- Deep-dive into specific entries. Instead of scrolling pages, ask for details and use `get_submission` to pull all data points from one ID instantly.

## How It Works

The bottom line is you interact with your lead data using conversation, not dashboards.

1. Subscribe to the Basin MCP and provide your required API Key.
2. Connect this MCP to your preferred AI client (Claude, Cursor, etc.).
3. Ask your agent a question like, 'Show me all submissions from last week' or 'Mark sub_xyz as spam'. The agent executes the necessary calls and delivers the result.

## Frequently Asked Questions

**How do I check if my Basin connection is working?**
Run the `get_account_check` tool. This verifies your API key and confirms that the MCP can communicate with your account successfully before you run any data operations.

**What's the difference between list_submissions and list_form_submissions?**
Use `list_submissions` to see every single entry across all forms. Use `list_form_submissions` when you only care about checking entries that came from one specific form name.

**Can I update a lead's data after it comes in?**
Yes, use the `update_submission` tool. You can change metadata, like marking it as spam or adding an internal status note, without creating a whole new record.

**How do I get the most recent lead quickly using Basin MCP?**
Call `get_latest_submission`. This tool bypasses listing all records and retrieves the single newest entry instantly, which is useful for real-time support triage.

**When should I use the `delete_submission` tool?**
You use this to permanently remove data that violates compliance rules or is totally incorrect. Be careful, because deleting a submission is irreversible and takes it out of your entire lead history.

**If my downstream integration fails, how do I manually trigger the webhook using `refire_webhooks`?**
You pass the specific submission ID to this tool. It forces a re-run of the webhooks associated with that entry. This is crucial for testing or recovering from failed data processing.

**How can I use `list_forms` and `get_form` to map my entire site's data collection points?**
First, run `list_forms` to see all available forms. Then, you pass a specific form ID to `get_form`. This retrieves the metadata needed to understand exactly what fields your website collects.

**If I find junk data in my leads, how do I correct the spam status using `mark_as_spam` or `mark_as_not_spam`?**
You apply these tools by submitting a specific entry ID. This changes its internal spam flag without altering the core content of the submission record itself.

**How can I check the latest lead that submitted a form?**
Use the `get_latest_submission` tool. It automatically retrieves the single most recent entry across all your forms, allowing you to respond instantly.

**Can the agent filter out spam submissions?**
Yes. Use the `mark_as_spam` tool with a Submission ID to flag suspicious entries. You can also use `mark_as_not_spam` to restore entries that were incorrectly flagged.

**Is it possible to re-send data to my CRM if it failed?**
Yes. Use the `refire_webhooks` tool by providing the Submission ID. This manually triggers any webhooks associated with that form, ensuring your external integrations receive the data.