InboxKit MCP server
181 operations4 webhooks
Cold email infrastructure from InboxKit; buy and connect domains and Google or Microsoft mailboxes, manage DNS, warmup and sequencer exports, and watch deliverability
Try InboxKit with your agent
Connect InboxKit, then paste this into Claude, ChatGPT or Cursor. For ideas from other apps, see the use cases.
Using Corsair, show me what you can do in InboxKit on my account, then run one read-only example and show me the result.
InboxKit tools and triggers
Tools are what your agent can do in InboxKit through Corsair's MCP server. Triggers are the InboxKit events a routine can start from.
Domains
- Check AvailabilityRead-only
Whether one domain can be registered, with its price and ban status. Takes no workspace.
domains.checkAvailability
- Check BannedRead-only
Whether one domain is banned from registration. Takes no workspace.
domains.checkBanned
- Check PropagationRead-only
Whether the nameservers of these domains have propagated.
domains.checkPropagation
- Check Workspace AvailabilityRead-only
Whether domains can be used with Google Workspace or Microsoft 365.
domains.checkWorkspaceAvailability
- ConnectWrite
Connect domains you already own to the workspace and get the nameservers to set at your registrar.
domains.connect
- Get Move StatusRead-only
Whether a move started with domains.moveWorkspace has finished.
domains.getMoveStatus
- Get Renewal StatusRead-only
Renewal status of purchased domains, filtered by name, uid or status.
domains.getRenewalStatus
- Get Rotation StatusRead-only
Progress of a rotation. Poll every 30 to 60 seconds until completed, partially_completed or failed.
domains.getRotationStatus
- ListRead-only
The workspace's domains with status, nameservers and DNS records. Paginated, with filters by keyword, status and uid.
domains.list
- List AssignableRead-only
Domains that can take more mailboxes.
domains.listAssignable
- Move WorkspaceWrite
Move domains to another workspace in the team, with their mailboxes and DNS records. Run domains.previewMove first.
domains.moveWorkspace
- Preview MoveRead-only
What moving domains to another workspace would do, and why any cannot move. Nothing changes.
domains.previewMove
- Preview RotationRead-only
Whether a domain can rotate onto a replacement, which mailboxes would move and their new addresses. Nothing changes.
domains.previewRotation
- Regenerate NameserversDestructive
Create new Cloudflare zones and nameservers for domains that need reconfiguring. The registrar then has to be pointed at the new nameservers.
domains.regenerateNameservers
- RegisterDestructive
SPENDS MONEY. Register domains with contact details and configuration, paid from the wallet or a checkout. Never repeat after a timeout without checking domains.list first.
domains.register
- RemoveDestructive
Remove domains from the workspace.
domains.remove
- Remove Catch AllWrite
Remove the catch-all address from these domains.
domains.removeCatchAll
- Remove DmarcWrite
Reset these domains to the default DMARC record.
domains.removeDmarc
- Request RenewalDestructive
SPENDS MONEY. Renew purchased domains from the wallet, up to 50 at once. If the wallet cannot cover the whole batch, none are queued.
domains.requestRenewal
- RotateDestructive
Start moving every mailbox on a domain to a replacement domain in the same workspace. Mailbox addresses change. Run domains.previewRotation first.
domains.rotate
- SearchRead-only
Search for domains to register by keyword or name, with prices and Google or Microsoft availability. Limited to 50 requests a minute.
domains.search
- Set Catch AllDestructive
Send mail for unknown addresses on these domains to one email address.
domains.setCatchAll
- Set DmarcWrite
Set a custom DMARC record on these domains.
domains.setDmarc
- Set ForwardingWrite
Set or remove the website URL domains redirect to. An empty forwarding_url removes it.
domains.setForwarding
- Update ContactsWrite
Update the WHOIS contact details of a domain registered through InboxKit, for all four contact roles.
domains.updateContacts
- Update PrivacyWrite
Turn WHOIS privacy on or off for a domain registered through InboxKit.
domains.updatePrivacy
Email Insights
- Get Campaign Reply RateRead-only
Reply rate for each campaign and sequence step.
emailInsights.getCampaignReplyRate
- Get Daily StatsRead-only
Daily email volume across the workspace.
emailInsights.getDailyStats
- Get High Bounce MailboxesRead-only
Mailboxes whose bounce rate is above a threshold.
emailInsights.getHighBounceMailboxes
- Get Mailbox ActivityRead-only
Most recent email events for one mailbox, newest first.
emailInsights.getMailboxActivity
- Get Mailbox Auth FailuresRead-only
Inbound messages to one mailbox that did not pass SPF, DKIM or DMARC.
emailInsights.getMailboxAuthFailures
- Get Mailbox Body TemplatesRead-only
Groups of outbound emails from one mailbox that share a body structure.
emailInsights.getMailboxBodyTemplates
- Get Mailbox Bounce EventsRead-only
Delivery failures for one mailbox, with the reason the receiving server gave.
emailInsights.getMailboxBounceEvents
- Get Mailbox DeliverabilityRead-only
Bounce and authentication detail for one mailbox.
emailInsights.getMailboxDeliverability
- Get Mailbox First Touch FunnelRead-only
Recipients one mailbox contacted for the first time, by day.
emailInsights.getMailboxFirstTouchFunnel
- Get Mailbox HealthRead-only
Activity status for one mailbox.
emailInsights.getMailboxHealth
- Get Mailbox Message BreakdownRead-only
Sent and received messages for one mailbox, by type and by day.
emailInsights.getMailboxMessageBreakdown
- Get Mailbox Recipient Esp BreakdownRead-only
Sending volume and reply rate for one mailbox, by the recipient's email provider.
emailInsights.getMailboxRecipientEspBreakdown
- Get Mailbox Reply Rate By DomainRead-only
Emails sent and replies received for one mailbox, by recipient domain.
emailInsights.getMailboxReplyRateByDomain
- Get Mailbox Reply Time HeatmapRead-only
How quickly replies arrive at one mailbox, by day of week and hour.
emailInsights.getMailboxReplyTimeHeatmap
- Get Mailbox Sending Ip BreakdownRead-only
Sending IPs one mailbox used, with Gmail placement and blacklist status.
emailInsights.getMailboxSendingIpBreakdown
- Get Mailbox StatsRead-only
Event totals and rates for one mailbox over a period.
emailInsights.getMailboxStats
- Get Mailbox Subject AnalysisRead-only
Most common subject line keywords for one mailbox, with length statistics.
emailInsights.getMailboxSubjectAnalysis
- Get Mailbox Top Recipient DomainsRead-only
Domains one mailbox sent to most often.
emailInsights.getMailboxTopRecipientDomains
- Get Mailbox Top RecipientsRead-only
Addresses one mailbox sent to most often.
emailInsights.getMailboxTopRecipients
- Get Mailbox TrendsRead-only
Daily event counts for one mailbox, oldest first.
emailInsights.getMailboxTrends
- Get Mailbox Velocity OverlayRead-only
Hourly sending and reply volume for one mailbox.
emailInsights.getMailboxVelocityOverlay
- Get Mailbox Warmup StatsRead-only
Warmup volume for one mailbox compared with real sending, with SPF, DKIM and DMARC pass rates.
emailInsights.getMailboxWarmupStats
- Get Mailboxes HealthRead-only
Seven-day activity summary for each mailbox in the workspace.
emailInsights.getMailboxesHealth
- Get OverviewRead-only
Totals and rates across every mailbox in the workspace for a period.
emailInsights.getOverview
- Get Workspace ActivityRead-only
Most recent email events across the workspace, newest first.
emailInsights.getWorkspaceActivity
Mailboxes
- Add SignatureWrite
Add or replace the signature on several mailboxes.
mailboxes.addSignature
- BuyDestructive
SPENDS MONEY. Buy mailboxes on domains already in the workspace, from subscription slots, the wallet, or (Azure) always the wallet. Never repeat after a timeout without checking mailboxes.list first.
mailboxes.buy
- CancelDestructive
Schedule mailboxes for cancellation. Billing stops at the next renewal.
mailboxes.cancel
- Change PasswordDestructive
Change a mailbox's password. Anything signed in with the old password, such as a sequencer, stops working.
mailboxes.changePassword
- Change UsernameDestructive
Change a mailbox's username, which changes its email address.
mailboxes.changeUsername
- Check AvailabilityRead-only
Whether a username is free on a domain. Takes no workspace.
mailboxes.checkAvailability
- Delete SignatureWrite
Delete the signature from several mailboxes.
mailboxes.deleteSignature
- Generate TotpDestructive
A current two-factor code for a mailbox. Keep the result out of logs and shared chats.
mailboxes.generateTotp
- GetRead-only
One mailbox by uid.
mailboxes.get
- Get Failure ReasonRead-only
Why a mailbox failed to set up.
mailboxes.getFailureReason
- Get Resetup StatusRead-only
The most recent resetup job for a domain.
mailboxes.getResetupStatus
- Get StatusRead-only
Status of mailboxes by uid or domain.
mailboxes.getStatus
- ListRead-only
The workspace's mailboxes. Paginated, with filters by keyword, domain, platform, status and uid. Never includes passwords.
mailboxes.list
- ReactivateDestructive
CAN SPEND MONEY. Reactivate Microsoft 365 and Azure mailboxes scheduled for cancellation or whose renewal failed. With allow_charge a re-purchase may be charged to the wallet.
mailboxes.reactivate
- Reactivate RebuyDestructive
SPENDS MONEY. Approve the charge for Microsoft 365 and Azure mailboxes paused at needs_rebuy.
mailboxes.reactivateRebuy
- ResetupDestructive
Schedule a renewal-resetup for Google Workspace mailboxes. Mail delivery on the domain is paused for up to 24 hours while it runs.
mailboxes.resetup
- Show CredentialsDestructive
A mailbox's plaintext password, secret and app password, by uid or email. Keep the result out of logs and shared chats.
mailboxes.showCredentials
- UncancelDestructive
CAN SPEND MONEY. Undo a scheduled cancellation for Google Workspace mailboxes within the 10-day recovery window, so billing continues.
mailboxes.uncancel
- UpdateWrite
Update a mailbox's first or last name, profile picture or tags. To change its address, use mailboxes.changeUsername.
mailboxes.update
- Update Profile PictureWrite
Set a mailbox's profile picture from a URL.
mailboxes.updateProfilePicture
Infra Guard
- Acknowledge AlertWrite
Mark an alert as acknowledged.
infraGuard.acknowledgeAlert
- CancelDestructive
Stop InfraGuard monitoring and billing for domains.
infraGuard.cancel
- Dismiss Action ItemWrite
Dismiss an action item.
infraGuard.dismissActionItem
- EnableDestructive
SPENDS MONEY. Turn on InfraGuard monitoring for domains, billed per domain.
infraGuard.enable
- GetRead-only
The InfraGuard subscription of one domain.
infraGuard.get
- Get Action Item StatsRead-only
Action item counts for the workspace.
infraGuard.getActionItemStats
- Get Blacklist HistoryRead-only
Blacklist checks of one domain over time.
infraGuard.getBlacklistHistory
- Get Bounce HistoryRead-only
Bounce checks of one domain over time.
infraGuard.getBounceHistory
- Get Bounce MetricsRead-only
Current bounce metrics of one domain.
infraGuard.getBounceMetrics
- Get Dns HistoryRead-only
DNS checks of one domain over time.
infraGuard.getDnsHistory
- Get PricingRead-only
InfraGuard pricing.
infraGuard.getPricing
- Get StatsRead-only
InfraGuard statistics for the workspace.
infraGuard.getStats
- ListRead-only
Domains protected by InfraGuard, with their health.
infraGuard.list
- List Action ItemsRead-only
InfraGuard action items, filtered by domain, category, severity or status.
infraGuard.listActionItems
- List AlertsRead-only
InfraGuard alerts, filtered by domain, status, severity or type.
infraGuard.listAlerts
- Resolve Action ItemWrite
Mark an action item as resolved.
infraGuard.resolveActionItem
- Resolve AlertWrite
Mark an alert as resolved, with an optional note.
infraGuard.resolveAlert
- Trigger CheckWrite
Run an InfraGuard check on a domain now.
infraGuard.triggerCheck
- Update SettingsWrite
Change a domain's alert preferences, bounce thresholds and scheduled placement tests.
infraGuard.updateSettings
Warmup
- AddDestructive
SPENDS MONEY. Add warmup to mailboxes, billed monthly. Mailboxes that are not ready start once they are; activate_immediately charges the first month to the wallet now.
warmup.add
- Add Smtp MailboxesDestructive
SPENDS MONEY. Connect up to 10 SMTP mailboxes you own and start their warmup. The first month is charged to the wallet for each one that signs in.
warmup.addSmtpMailboxes
- CancelDestructive
Stop warmup and its billing for mailboxes. The mailboxes stay connected.
warmup.cancel
- Create Connect LinkDestructive
CAN SPEND MONEY. A one-time sign-in link to connect a Google Workspace or Microsoft 365 mailbox you own. Anyone with the link can use it; with start_warmup the first month is charged when it connects.
warmup.createConnectLink
- Disconnect MailboxDestructive
Disconnect a mailbox you connected yourself and cancel its warmup. Connecting it again charges a new first month.
warmup.disconnectMailbox
- GetRead-only
The warmup subscription of one mailbox, with its current settings.
warmup.get
- Get Connect LinkRead-only
What happened to a link from warmup.createConnectLink.
warmup.getConnectLink
- Get PricingRead-only
The monthly warmup price per mailbox.
warmup.getPricing
- Get StatsRead-only
Warmup counts for the workspace.
warmup.getStats
- ListRead-only
Warmup subscriptions in the workspace.
warmup.list
- List Connected MailboxesRead-only
Mailboxes you connected yourself, newest first.
warmup.listConnectedMailboxes
- PauseWrite
Pause warmup for mailboxes.
warmup.pause
- ResumeWrite
Resume warmup for mailboxes.
warmup.resume
- Update SettingsWrite
Change warmup settings for mailboxes. Only the settings you send change.
warmup.updateSettings
Billing
- Add CreditsDestructive
SPENDS MONEY. Buy wallet credits. With direct_charge the saved card is charged at once; otherwise this returns a hosted checkout link.
billing.addCredits
- Cancel SubscriptionDestructive
Cancel the active subscription.
billing.cancelSubscription
- Change SubscriptionDestructive
SPENDS MONEY. Switch to another plan or start one. May charge the saved card at once or return a payment link.
billing.changeSubscription
- Get Payment StatusRead-only
Whether a hosted-checkout or guest-mode payment has finished and its credits were applied.
billing.getPaymentStatus
- Get Portal LinkDestructive
A Stripe billing portal link for this team. Whoever holds the link can manage payment methods and invoices, so keep it private.
billing.getPortalLink
- Get Pricing PlansRead-only
Available pricing plans, with upgrade and downgrade options from the current plan.
billing.getPricingPlans
- Get SubscriptionRead-only
The current subscription and the available plans.
billing.getSubscription
- Get WalletRead-only
Wallet balance, credits used and auto top-up settings.
billing.getWallet
- Get Wallet LogsRead-only
Wallet activity log, with filters by type, kind, status, workspace and date.
billing.getWalletLogs
- List TransactionsRead-only
Wallet transactions, newest first, with the balance after each one. Send next_cursor back as cursor for the next page.
billing.listTransactions
- Update Auto TopupDestructive
CAN SPEND MONEY. Turn automatic wallet top-ups on or off and set the threshold and amount. While on, InboxKit charges the saved card with no further call.
billing.updateAutoTopup
Forwarding
- Delete RuleDestructive
Delete a rule. Its mailboxes stop forwarding.
forwarding.deleteRule
- Get CapabilitiesRead-only
What advanced forwarding can filter on for Google and Microsoft mailboxes, and the limits.
forwarding.getCapabilities
- Get RuleRead-only
One advanced forwarding rule.
forwarding.getRule
- List JobsRead-only
Status of forwarding jobs.
forwarding.listJobs
- List RulesRead-only
Advanced forwarding rules, newest first, with conditions, mailboxes and status.
forwarding.listRules
- RemoveWrite
Turn off forwarding for mailboxes.
forwarding.remove
- SetupDestructive
Forward all mail from these mailboxes to one address. Setup takes a few minutes; follow it with forwarding.listJobs.
forwarding.setup
- Setup AdvancedDestructive
Forward only the messages that match your conditions. A rule is created per Google domain or Microsoft account, and replaces any forwarding the mailbox had.
forwarding.setupAdvanced
- UpdateDestructive
Change the forwarding address of mailboxes that already forward.
forwarding.update
- Update RuleDestructive
Change a rule's conditions, match, forwarding address or mailboxes.
forwarding.updateRule
Sequencers
- AddWrite
Connect a sequencer account such as Instantly, Smartlead or Lemlist, with the fields sequencers.listPlatforms names for that platform. Most take a login and password, and a few take only an API key. No mailboxes go to it until sequencers.exportMailboxes, unless Auto Export is on for it in the InboxKit dashboard.
sequencers.add
- DeleteDestructive
Remove sequencers from the workspace. Mailboxes can no longer be exported to them.
sequencers.delete
- Export MailboxesDestructive
Send mailboxes into a sequencer, which receives their credentials. Runs in the background; follow it with sequencers.getExportStatus.
sequencers.exportMailboxes
- Get Export StatusRead-only
Status of mailbox exports, with the error if a connection failed.
sequencers.getExportStatus
- Get TagsRead-only
Tags on a sequencer account, using its platform and API key. Only Instantly has them today.
sequencers.getTags
- ListRead-only
Sequencers connected to the workspace, filtered by platform, status, keyword or uid.
sequencers.list
- List PlatformsRead-only
Every sequencer platform InboxKit supports, with the fields each one needs to connect.
sequencers.listPlatforms
- UpdateWrite
Rename a sequencer, rotate its credentials or change its auto-reconnect setting.
sequencers.update
- Verify Lemlist OtpWrite
Resume a Lemlist connection paused with verification_required, using the link and code from its email.
sequencers.verifyLemlistOtp
Inbox Placement
- Create TestDestructive
SPENDS MONEY. Run an inbox placement test from your mailboxes, once or on a schedule.
inboxPlacement.createTest
- Delete ScheduledDestructive
Delete a scheduled inbox placement test.
inboxPlacement.deleteScheduled
- Get ScheduledRead-only
One scheduled inbox placement test.
inboxPlacement.getScheduled
- Get TestRead-only
Results of one inbox placement test.
inboxPlacement.getTest
- List ScheduledRead-only
Scheduled inbox placement tests.
inboxPlacement.listScheduled
- List TestsRead-only
Inbox placement tests.
inboxPlacement.listTests
- Pause ScheduledWrite
Pause a scheduled inbox placement test.
inboxPlacement.pauseScheduled
- Resume ScheduledDestructive
CAN SPEND MONEY. Resume a scheduled inbox placement test, so its later runs are charged.
inboxPlacement.resumeScheduled
Workspaces
- CreateWrite
Create a workspace. All team members are copied into it unless admins_only is set. Set a webhook URL afterwards with workspaces.updateWebhook.
workspaces.create
- DeleteDestructive
Delete a workspace permanently.
workspaces.delete
- GetRead-only
One workspace by uid.
workspaces.get
- Invite MemberDestructive
Invite someone to a workspace, or resend an invite. Sends them an email and gives them access to its domains and mailboxes.
workspaces.inviteMember
- ListRead-only
Every workspace in the team, with its uid. Pass a uid as workspaceId to the operations that act on one workspace.
workspaces.list
- UpdateDestructive
Rename a workspace and set its webhook URL. That URL can receive mailbox passwords in plaintext, so only point it at an endpoint you control.
workspaces.update
- Update WebhookDestructive
Set a workspace's webhook URL. That URL can receive mailbox passwords in plaintext, so only point it at an endpoint you control.
workspaces.updateWebhook
Dns
- AddWrite
Add DNS records to a domain.
dns.add
- Delete RecordsDestructive
Delete DNS records from a domain, by id or all of them. Removing MX, SPF, DKIM or DMARC records stops mail from working.
dns.deleteRecords
- ListRead-only
DNS records of one domain, by name or uid.
dns.list
- RepairDestructive
Fix missing or broken email DNS records on one or more domains. Run dns.verify first to see what would change.
dns.repair
- UpdateWrite
Update DNS records on a domain.
dns.update
- VerifyRead-only
Check the health of the email DNS records of one or more domains. Nothing changes.
dns.verify
Cloudflare
- ConnectWrite
Connect domains from a Cloudflare account, using an API token or global API key. Limited to 10 requests per 5 minutes.
cloudflare.connect
- DisconnectDestructive
Disconnect Cloudflare domains from the workspace.
cloudflare.disconnect
- GetRead-only
One Cloudflare-connected domain, by uid or name.
cloudflare.get
- ListRead-only
Domains connected through Cloudflare.
cloudflare.list
- List ZonesRead-only
Zones in the connected Cloudflare account.
cloudflare.listZones
Prewarm
- BuyDestructive
SPENDS MONEY. Buy prewarmed domains with every active mailbox on them, charged to the wallet when the order is placed. Never repeat after a timeout without checking first.
prewarm.buy
- Check AvailabilityRead-only
Whether prewarmed domains are still for sale.
prewarm.checkAvailability
- Get Order StatusRead-only
Status of a prewarmed domain order.
prewarm.getOrderStatus
- Search DomainsRead-only
Search prewarmed domains for sale.
prewarm.searchDomains
- Search MailboxesRead-only
Search prewarmed mailboxes for sale.
prewarm.searchMailboxes
Tags
- AssignWrite
Add, remove or replace tags on domains or mailboxes in bulk.
tags.assign
- CreateWrite
Create a tag in the workspace.
tags.create
- DeleteDestructive
Delete a tag and remove it from everything it is on.
tags.delete
- ListRead-only
All tags in the workspace.
tags.list
Verified Domains
- AddWrite
Add a website to mask domains to. It must then be verified with a TXT record.
verifiedDomains.add
- ListRead-only
Websites the team has added for URL masking, with each one's status and TXT record.
verifiedDomains.list
- RemoveDestructive
Remove a website from the verified destinations.
verifiedDomains.remove
- VerifyWrite
Check whether the TXT record for a destination is published, and mark it verified if so.
verifiedDomains.verify
Client Id Requests
- Get StatusRead-only
Current status of a client ID request. Microsoft stays processing for minutes, so poll.
clientIdRequests.getStatus
- InitiateDestructive
Authorize an app's client ID on a domain, as a trusted app or with domain-wide delegation on Google, or tenant-wide consent on Microsoft. This can give the app access to every mailbox on the domain. The domain needs an admin mailbox.
clientIdRequests.initiate
- ListRead-only
Client ID requests, filtered by status or domain.
clientIdRequests.list
Consent Requests
- Get StatusRead-only
Current status of a consent request.
consentRequests.getStatus
- InitiateDestructive
Process an OAuth consent URL for a mailbox, by uid or username and domain, which can give that app access to the mailbox.
consentRequests.initiate
- ListRead-only
Consent requests, filtered by mailbox or status.
consentRequests.list
Account
- GetRead-only
The team's wallet balance, mailbox slots, current plan, auto top-up settings and price per mailbox.
account.get
Orders
- PlaceDestructive
SPENDS MONEY. Order new domains and their mailboxes in one request, charged to the wallet. Never repeat after a timeout without checking domains.list first.
orders.place
Connect InboxKit to Claude, ChatGPT or Cursor
- 1
Connect InboxKit in Corsair
Add your InboxKit API key once in Corsair. Corsair stores the credential encrypted and makes the InboxKit API calls for your agent, so it never goes into a prompt or a config file. Connect InboxKit
If your link lets the agent add apps, you can skip this: it gives you a sign-in link the first time it needs InboxKit. On a ChatGPT personal plan, connect InboxKit here first.
- 2
Add Corsair's MCP server to your agent
Every client uses the same address:
https://mcp.corsair.dev/mcpOpen Customize → Connectors → Add custom connector, paste the address, then select Connect.Add a custom MCP server with the address and choose OAuth. Personal plans get read tools only.Add to CursorOr add this to~/.cursor/mcp.json. Cursor opens Corsair to sign in the first time it connects.{ "mcpServers": { "corsair": { "url": "https://mcp.corsair.dev/mcp" } } }Run this, then run/mcpin Claude Code to sign in.claude mcp add --transport http corsair https://mcp.corsair.dev/mcpCodex, Gemini CLI, VS Code, Zed and other clients with OAuth sign-in work the same way. Clients without it, such as GitHub Copilot's coding agent, use a link's own address and an API key. Setup for every client
- 3
Sign in and choose what needs your approval
Your client opens Corsair to sign in. Pick a link: the apps your agent can use and a mode that decides what it may do without asking. In the default Cautious mode, InboxKit's read and write operations run right away and its 51 destructive operations wait for your approval. Strict mode asks before every write and refuses destructive operations, and Read mode allows reads only.
FAQ
Install corsair and @corsair-dev/inboxkit, add the InboxKit plugin, and connect with an API key. Then call methods like corsair.inboxkit.api.account.get() from your app. Corsair verifies webhooks, and syncs data per tenant.
Yes. InboxKit requires an API key from your InboxKit account or developer dashboard. Create credentials with access that matches what you automate, then paste them into Corsair or connect through managed auth in Hub.
Yes. One Corsair client can hit InboxKit, GitHub, Notion, Stripe, and the rest. Trigger InboxKit from a webhook, push updates to Slack, or chain actions across plugins. Same tenant context across integrations, plain TypeScript.
Teams use Corsair for cold email infrastructure from InboxKit; buy and connect domains and Google or Microsoft mailboxes, manage DNS, warmup and sequencer exports, and watch deliverability. Common builds include sync jobs, admin tooling, and agents that call InboxKit APIs from your backend. Webhook handlers react to InboxKit events and fan out to Slack, email, or other plugins in the same tenant. Local DB entities let you query synced InboxKit records without hitting the API on every read.
The SDK is open source. Self-host and you pay Corsair nothing for the integration layer. Hub bills for hosted auth and execution, not per InboxKit API call. Hub has a generous free tier. For hobby projects you can probably run the whole thing on free. Paid plans start to matter with more tenants or heavier traffic.
We maintain @corsair-dev/inboxkit in the open repo. When InboxKit ships API changes, upgrade the package. Your call sites stay typed. You should not need to rewrite the integration layer each time.
No. Corsair does not read your InboxKit data or hold individual access credentials. Credentials stay in your database. API calls run on your instance. We do not store InboxKit data on your behalf.
Yes. Add https://mcp.corsair.dev/mcp as a custom connector or MCP server in Claude, ChatGPT, Cursor, VS Code, Claude Code, Codex or any client that supports remote MCP servers with OAuth sign-in, then sign in to Corsair. On ChatGPT personal plans, custom servers currently get read tools only.
Yes. Put InboxKit on a link in Strict mode and every write waits for your approval, while destructive actions are refused. The default Cautious mode asks only before the 51 destructive InboxKit operations. You can change a link's mode at hub.corsair.dev/me.