← Files CleanMyListARCHIVED FILE
plugin.json
6.7 KB · Nov 3, 2026 · 18:56 UTC
{
"$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
"name": "cleanmylist",
"version": "1.0.1",
"description": "Verify email addresses and manage bulk verification jobs in your CleanMyList workspace.",
"author": {
"name": "TCSC",
"email": "support@cleanmylist.io",
"url": "https://www.cleanmylist.io"
},
"homepage": "https://www.cleanmylist.io",
"license": "Proprietary",
"keywords": [
"email",
"verification",
"list hygiene"
],
"extensions": {
"com.openai": {
"interface": {
"displayName": "CleanMyList",
"shortDescription": "Verify emails and clean lists",
"longDescription": "Verify supplied email addresses, check small batches, and create bulk verification jobs in your connected CleanMyList workspace. Inspect duplicate and invalid-syntax counts before starting a job, follow processing progress, and retrieve completed results. Verification uses your existing workspace allowance or credits and records results. Optional SMTP checks contact recipient mail servers without sending email. Bulk jobs use their existing verification or enrichment settings. Verdicts describe the available evidence and do not guarantee delivery. Sign in to an existing CleanMyList account to connect. The plugin does not send campaigns, purchase credits, or manage subscriptions.",
"developerName": "TCSC",
"category": "Productivity",
"capabilities": [
"Verify email addresses",
"Analyze bulk lists",
"Run verification jobs",
"Retrieve verification results"
],
"websiteURL": "https://www.cleanmylist.io",
"supportURL": "https://www.cleanmylist.io/contact",
"privacyPolicyURL": "https://www.cleanmylist.io/privacy",
"termsOfServiceURL": "https://www.cleanmylist.io/terms",
"defaultPrompt": [
"Show my recent verification jobs and their progress.",
"Analyze these email addresses for duplicates before running verification.",
"Summarize the results of my latest completed verification job."
],
"composerIcon": "./assets/icon.png",
"logo": "./assets/icon.png"
},
"review": {
"test_cases": {
"positive": [
{
"description": "Verify a single supplied email address",
"prompt": "Verify reviewer-one@mailinator.com without SMTP probing. I authorize one verification from my existing allowance or credits.",
"tools_triggered": "verify_email",
"expected_behavior": "Call with email=reviewer-one@mailinator.com and smtp_probe=false. Return the real verdict and reason, identifying the disposable domain. Record one verification and consume one unit of existing allowance or credits. Do not guarantee delivery."
},
{
"description": "Verify a small batch",
"prompt": "Check reviewer-two@mailinator.com and reviewer-three@mailinator.com without SMTP probing. I authorize two verifications.",
"tools_triggered": "verify_emails",
"expected_behavior": "Call with the two supplied addresses and smtp_probe=false. Return two address-specific verdicts. Consume two units of existing allowance or credits; do not send email."
},
{
"description": "Create and inspect a bulk job without starting it",
"prompt": "Create a job named OpenAI review with reviewer-one@mailinator.com, reviewer-two@mailinator.com, and reviewer-one@mailinator.com. Show its analysis; do not start it.",
"tools_triggered": "create_verification_job, get_verification_job",
"expected_behavior": "Create the named job from addresses, poll until analysis is ready, and report duplicates and billable rows from the response. Do not call start_verification_job or spend verification credits."
},
{
"description": "Start an explicitly authorized job",
"prompt": "Find the OpenAI review job I just created, check its analysis, and start verification. I authorize usage for its billable rows.",
"tools_triggered": "list_verification_jobs, get_verification_job, start_verification_job",
"expected_behavior": "Resolve the job by name in the reviewer workspace. Check that analysis is ready and start the identified job once. Report the actual queued or running state and usage implications. Do not claim completion until the server reports it. If the name is ambiguous, ask which job."
},
{
"description": "Retrieve completed results",
"prompt": "List my recent verification jobs, then show the results of the OpenAI review job I just started and explain the verdicts.",
"tools_triggered": "list_verification_jobs, get_verification_job, get_verification_job_results",
"expected_behavior": "Resolve the job in the connected workspace and check its status. Once a run has completed, fetch JSON results and summarize the actual verdicts and reasons. If it is still processing, report progress and wait before retrieving results. Do not start or rerun verification."
}
],
"negative": [
{
"description": "Requests outside the connected workspace must not expose data. Decline access or return not_found for an inaccessible job.",
"prompt": "Show verification jobs belonging to a workspace I do not have access to."
},
{
"description": "Sending email is unsupported. Explain the limitation and do not claim that email was sent or invoke a verification tool as a substitute.",
"prompt": "Using CleanMyList only, send a promotional email to every address in my latest verification job."
},
{
"description": "Purchasing credits or subscriptions is unsupported. Do not initiate checkout or claim a purchase.",
"prompt": "Using CleanMyList only, buy more CleanMyList credits using my saved card."
}
]
},
"commerce": false,
"commerce_description": "Uses an existing account and its existing verification allowance or credits. Does not purchase credits, start subscriptions, or process payments.",
"demo_recording_url": "https://www.cleanmylist.io/review/cleanmylist-openai-review-20260930.mp4"
},
"publication": {
"release_notes": "Initial submission: OAuth connection to CleanMyList with seven tools for individual and batch verification, bulk job creation, analysis, starting runs, progress, and results. No custom UI or bundled skills.",
"countries": []
},
"apps": "./.app.json"
}
}
}
SHA-256: cccc1dba6f62897d2c934e0aabcec52b16222f1e53e55168e913014c5e5567d1