Clean

Clean finds your next customers: ICP, researched leads, replies and sequences, from any agent.

Hosted MCP Server

npx add-mcp 'https://app.tryclean.ai/v1/mcp'

Installs into Claude Code, Codex, Cursor and more

Documentation

Clean

Clean finds and researches B2B leads that match your ideal customer profile. This repo holds Clean's listing manifests for every agent marketplace (see the table below), so any agent can run that research and work with the results.

The plugin contains no server code. It only points at https://app.tryclean.ai/v1/mcp, which Clean hosts.

Layout: plugin.json at the repo root is the portable Agent Plugins manifest, .cursor-plugin/plugin.json is the Cursor Plugin manifest (adds the logo and marketplace metadata), .claude-plugin/ is the Claude Code plugin + marketplace, .agents/plugins/marketplace.json is the Codex marketplace, openai/ is the ChatGPT plugin package, server.json is the MCP Registry entry and mcp.json holds the MCP server definition. The MCP server name is clean.

Marketplaces

MarketplaceStatusListing / proofDateNeeds owner
Grok Bot (x.ai)Submittedx.ai plugin form, HTTP 200 {"success":true}2026-11-04Wait for x.ai review
Cursor MarketplaceSubmittedEmail thread with Sam at Cursor; deeplink below works today; https://cursor.com/marketplace/publish needs a Cursor sign-in2026-11-04Reply to Cursor thread / apply as publisher while signed in
MCP Registry (modelcontextprotocol.io)Liveio.github.cleanmcp/clean v1.0.0, active since 2026-11-04T07:17Z: https://registry.modelcontextprotocol.io/v0.1/servers?search=io.github.cleanmcp/clean (also feeds the VS Code/GitHub MCP gallery and PulseMCP)2026-11-04-
Claude connector directoryBlocked on ownerhttps://claude.ai/directory/manage → Submit new → MCP connector2026-11-04Paid Claude plan login as hello@, reviewer test account
Claude Code pluginLive/plugin install clean --marketplace cleanmcp/clean2026-11-04-
Anthropic plugin directoryBlocked on ownerhttps://claude.com/partners/mcp → Submit a plugin2026-11-04Same login as connector directory
ChatGPT plugin directoryPackage readyopenai/ folder, ZIP via Build the ChatGPT ZIP below; upload at https://platform.openai.com/plugins2026-11-04OpenAI org login, developer identity verification, domain challenge at app.tryclean.ai/.well-known/openai-apps-challenge, reviewer test account
Codex marketplaceLivecodex plugin marketplace add cleanmcp/clean2026-11-04-
awesome-remote-mcp-serversRow readyhttps://github.com/punkpeye/awesome-remote-mcp-servers (table row below)2026-11-04Owner opens the PR while signed in to GitHub (fork + one-row edit)
mcpservers.orgSubmitted (free plan)https://mcpservers.org/submit, confirmation "Submission Successful", review ≤2 weeks2026-11-04Approval email arrives at hello@
PulseMCPPaused by PulseMCPhttps://www.pulsemcp.com/submit says submissions paused; auto-imports from the MCP Registry2026-11-04-
mcp.soBlocked on ownerhttps://mcp.so/submit (free tier; $39 optional)2026-11-04GitHub sign-in
GlamaBlocked on ownerhttps://glama.ai/mcp/servers/add2026-11-04Glama sign-in
SmitheryNot possibleSelf-serve submissions shut down 2026-10-31; curated by Arcade2026-11-04-
Zapier MCP / MakeNot applicableThey expose their own tools as MCP servers; no third-party remote MCP directory2026-11-04-

awesome-remote-mcp-servers row: | Clean | Sales | \https://app.tryclean.ai/v1/mcp\` | OAuth2.1 & API Key | Clean |`

Build the ChatGPT ZIP

cd openai && zip -r ../clean-openai-plugin.zip . -x '.DS_Store'

Install

Grok Bot: open Plugins (marketplace), search for Clean, click Install, then sign in with Clean when the browser opens.

Cursor one-click: Add Clean to Cursor (cursor://anysphere.cursor-deeplink/mcp/install?name=clean&config=<base64 of {"url":"https://app.tryclean.ai/v1/mcp"}>).

Claude Code: /plugin install clean --marketplace cleanmcp/clean, then sign in with Clean when the browser opens.

Claude.ai / Claude Desktop: Settings → Connectors → Add custom connector → URL https://app.tryclean.ai/v1/mcp.

ChatGPT / Codex: codex plugin marketplace add cleanmcp/clean, or in ChatGPT Settings → Connectors → Create → URL https://app.tryclean.ai/v1/mcp. Agents SDK: HostedMCPTool(tool_config={"type": "mcp", "server_label": "clean", "server_url": "https://app.tryclean.ai/v1/mcp", "require_approval": "never"}).

VS Code / Copilot: code --add-mcp '{"name":"clean","type":"http","url":"https://app.tryclean.ai/v1/mcp"}'.

Cursor: open Customize → Plugins, search for Clean in the Cursor Marketplace, click Install and pick user or project scope, then sign in with Clean when asked. If Cursor cannot finish the Clean sign-in, use the API key setup below.

Install from this repo (before the listing is live): copy this folder to ~/.cursor/plugins/local/clean, run Developer: Reload Window, and confirm the clean MCP server shows up under Customize.

Any other MCP client: add a remote (Streamable HTTP) MCP server:

{
  "mcpServers": {
    "clean": {
      "type": "http",
      "url": "https://app.tryclean.ai/v1/mcp"
    }
  }
}

You need a Clean account. Start at tryclean.ai.

Sign in

Auth is OAuth 2.1 ("Sign in with Clean"): on first use the client opens a browser, you sign in to Clean, pick a workspace and allow access (read-only or full). There is no key to paste and nothing is stored in this repo.

If your client cannot do OAuth, create a workspace API key in Clean under Settings → API & MCP and send it as a header. Keep the key in an environment variable, never in a file you commit:

{
  "mcpServers": {
    "clean": {
      "url": "https://app.tryclean.ai/v1/mcp",
      "headers": { "Authorization": "Bearer ${env:CLEAN_API_KEY}" }
    }
  }
}

Revoke a connected app or key at any time in Settings → API & MCP.

What the agent can do

ToolWhat it does
research, reply, get_run, cancel_runAsk Clean's agent to find and research leads, answer its questions, follow progress, stop a run
get_leads, list_conversationsRead the qualified leads of a research run and earlier results
list_icps, add_contextRead your ideal customer profiles and give Clean background to use
connectionsSearch your own synced LinkedIn 1st-degree connections
leads_read, leads_writeRead saved leads and organize them into lists
sequences_read, sequences_writeRead sequences and draft them; drafting never sends a message

The hosted server is the source of truth for tool names and schemas. To check the connection, ask your agent to "list my Clean ICPs".

Support

hello@tryclean.ai

License

MIT