com.commsharbor/commsharbor
Measured conclusion: Alive, not deep-tested. L2 outcome: not_attempted.
Domain email and webmail: set up domains, mailboxes and aliases, and check DNS verification.
| Author | com.commsharbor |
|---|---|
| Access | remote |
| Publisher key required | No |
| Measured state | Alive, not deep-tested |
| L1 liveness | alive |
| L1 latency | 2518 ms |
| Last measured | 2026-10-26 |
Add to your agent
Copy this into your MCP client config:
{
"mcpServers": {
"commsharbor": {
"url": "https://commsharbor.com/mcp",
"transport": "streamable-http"
}
}
}
Measured tools (34)
commsharbor_healthread-onlyRead deployment health and build. Smoke tests wait for their own commit to appear here instead of racing edge propagation.
Hints: read-only yes · destructive no · idempotent yes · open-world not declared
commsharbor_logoutRevoke the current session. Bootstrap/CSRF must belong to this browser and session. Other product sessions remain active.
Hints: read-only no · destructive no · idempotent no · open-world not declared
commsharbor_meread-onlyRead the current account profile and platform role. `user.id` is the shared-account ID. Organizations are not listed here: they live in the shared account, which does not list them inside products yet — open a workspace by its ID with `GET /api/organizations/{organization_id}`.
Hints: read-only yes · destructive no · idempotent yes · open-world not declared
commsharbor_contextread-onlyResolve the active organization identity. Read this before a write when you are not certain which tenant is active. Guessing is how data lands in the wrong organization. An organization API key answers `kind: api_key` with its scopes.
Hints: read-only yes · destructive no · idempotent yes · open-world not declared
commsharbor_organization_getread-onlyOpen an organization by id: name, your role and the CommsHarbor plan. This is how a workspace is opened. Name and role come from the shared account (null with an organization API key, which carries neither); the plan is the organization's global entitlement in CommsHarbor.
Parameters:
organization_id(required) — string — Active organization ID
Hints: read-only yes · destructive no · idempotent yes · open-world not declared
commsharbor_auditread-onlyList tenant audit events. Audit records are never rewritten and never carry recipient PII.
Parameters:
organization_id(required) — string — Active organization IDcursor— string — Opaque cursor
Hints: read-only yes · destructive no · idempotent yes · open-world not declared
commsharbor_platform_contextread-onlyConfirm the caller's platform role. Tenant ownership grants nothing here: platform access is a separate, explicit grant.
Hints: read-only yes · destructive no · idempotent yes · open-world not declared
commsharbor_email_google_catalogread-onlyRead authorized Google metadata. This does not prove DNS ownership. Requires the owner's account session; an organization key cannot authorize Google access. Requires an account session in this organization. Reads site metadata only. Google access and refresh tokens remain encrypted on the server.
Parameters:
organization_id(required) — string — Organization IDservice(required) — string — search_console or analytics. Each connection has its own consent.
Hints: read-only yes · destructive no · idempotent yes · open-world not declared
commsharbor_email_google_connectStart five-minute Google consent with PKCE. Return an authorization URL. Signing in does not grant this access. Requires the owner's account session; an organization key cannot authorize Google access. Requires an account session in this organization. Reads site metadata only. Google access and refresh tokens remain encrypted on the server.
Parameters:
organization_id(required) — string — Organization IDservice(required) — string — search_console or analytics. Each connection has its own consent.language— string — Consent return language.
Hints: read-only no · destructive no · idempotent no · open-world not declared
commsharbor_email_google_resolveResolve website addresses for up to 20 selected Analytics properties. Search Console does not use this route. Requires the owner's account session; an organization key cannot authorize Google access. Requires an account session in this organization. Reads site metadata only. Google access and refresh tokens remain encrypted on the server.
Parameters:
organization_id(required) — string — Organization IDservice(required) — string — search_console or analytics. Each connection has its own consent.properties(required) — array — Authorized properties/ID values from the catalog, at most 20 unique entries.
Hints: read-only no · destructive no · idempotent no · open-world not declared
commsharbor_email_google_disconnectRemove this product's saved Google connection and pending consent. Existing email and service resources remain intact. Requires the owner's account session; an organization key cannot authorize Google access. Requires an account session in this organization. Reads site metadata only. Google access and refresh tokens remain encrypted on the server.
Parameters:
organization_id(required) — string — Organization IDservice(required) — string — search_console or analytics. Each connection has its own consent.
Hints: read-only no · destructive no · idempotent no · open-world not declared
commsharbor_email_domain_products_listread-onlyRead or associate PageAudit and HookPulse with a domain in this organization. Native product access must be enabled. The private email backend confirms domain ownership in this organization. Selected native products must already be enabled. Association is idempotent.
Parameters:
organization_id(required) — string — Organization IDresource_id(required) — string — Email domain ID
Hints: read-only yes · destructive no · idempotent yes · open-world not declared
commsharbor_email_domain_products_addRead or associate PageAudit and HookPulse with a domain in this organization. Native product access must be enabled. The private email backend confirms domain ownership in this organization. Selected native products must already be enabled. Association is idempotent.
Parameters:
organization_id(required) — string — Organization IDresource_id(required) — string — Email domain IDservices(required) — array — At most two unique values: pageaudit and hookpulse.
Hints: read-only no · destructive no · idempotent no · open-world not declared
commsharbor_email_workspace_snapshotread-onlyRead the current email workspace, DNS progress and recent jobs. The ID must match X-Organization-Id. Membership is checked again for each snapshot and delivered event. Events contain only an opaque change ID. DNS checks run in the private backend, with a 24-hour deadline and a visible resume action after pause.
Parameters:
id(required) — string — Selected organization ID
Hints: read-only yes · destructive no · idempotent yes · open-world not declared
commsharbor_email_workspaceread-onlyRead the email workspace. No guest access. Members can read. Owners, admins and organization keys can manage email. The private service credential stays on the server. Mailbox passwords and message content are never returned.
Parameters:
organization_id(required) — string — Organization ID
Hints: read-only yes · destructive no · idempotent yes · open-world not declared
commsharbor_email_trial_activateStart the free receive-only Trial for 7 days, once per organization: 1 GB shared storage, unlimited mailboxes and no outgoing SMTP or external filter forwarding. Requires a new workspace and operator-proved native quota. No guest access. Members can read. Owners, admins and organization keys can manage email. The private service credential stays on the server. Mailbox passwords and message content are never returned.
Parameters:
organization_id(required) — string — Organization IDidempotency_key(required) — string — Stable key for this request
Hints: read-only no · destructive no · idempotent no · open-world not declared
commsharbor_email_domain_setupread-onlyFind an existing domain. Return its organization and domain IDs only when this exact caller can open that organization. Otherwise return existing: null. No guest access. Members can read. Owners, admins and organization keys can manage email. The private service credential stays on the server. Mailbox passwords and message content are never returned.
Parameters:
organization_id(required) — string — Organization IDdomain(required) — string
Hints: read-only yes · destructive no · idempotent yes · open-world not declared
commsharbor_email_domain_createRegister a domain and its ownership challenge. No guest access. Members can read. Owners, admins and organization keys can manage email. The private service credential stays on the server. Mailbox passwords and message content are never returned.
Parameters:
organization_id(required) — string — Organization IDdomain(required) — string — Exact domain name.idempotency_key(required) — string — Stable key for this request
Hints: read-only no · destructive no · idempotent no · open-world not declared
commsharbor_email_domain_getread-onlyRead domain setup, DNS records and observed readiness. No guest access. Members can read. Owners, admins and organization keys can manage email. The private service credential stays on the server. Mailbox passwords and message content are never returned.
Parameters:
organization_id(required) — string — Organization IDresource_id(required) — string — Email resource ID
Hints: read-only yes · destructive no · idempotent yes · open-world not declared
commsharbor_email_domain_verifyQueue a check of ownership, DNS and certificates. No guest access. Members can read. Owners, admins and organization keys can manage email. The private service credential stays on the server. Mailbox passwords and message content are never returned.
Parameters:
organization_id(required) — string — Organization IDresource_id(required) — string — Email resource IDidempotency_key(required) — string — Stable key for this request
Hints: read-only no · destructive no · idempotent no · open-world not declared
commsharbor_email_domain_assistanceRequest assisted DNS setup. The durable request waits for operator activation. It does not change DNS or expose a provider credential. No guest access. Members can read. Owners, admins and organization keys can manage email. The private service credential stays on the server. Mailbox passwords and message content are never returned.
Parameters:
organization_id(required) — string — Organization IDresource_id(required) — string — Email resource IDidempotency_key(required) — string — Stable key for this request
Hints: read-only no · destructive no · idempotent no · open-world not declared
commsharbor_email_mailbox_createCreate a mailbox within the current allowance. Trial mailboxes share 1 GB and cannot send email. No guest access. Members can read. Owners, admins and organization keys can manage email. The private service credential stays on the server. Mailbox passwords and message content are never returned.
Parameters:
organization_id(required) — string — Organization IDdomain_id(required) — string — Domain ID from the workspace.local_part(required) — string — Mailbox name before @.name(required) — string — Mailbox display name.idempotency_key(required) — string — Stable key for this request
Hints: read-only no · destructive no · idempotent no · open-world not declared
commsharbor_email_mailbox_updatedestructiveChange mailbox name or quota within the plan. No guest access. Members can read. Owners, admins and organization keys can manage email. The private service credential stays on the server. Mailbox passwords and message content are never returned.
Parameters:
organization_id(required) — string — Organization IDresource_id(required) — string — Email resource IDidempotency_key(required) — string — Stable key for this requestname— string — Display name.quota_mb— integer — Quota in MiB. Must fit the plan and current usage.files_quota_mb— integer — File allowance in MiB. The sum of mailbox allowances must fit files_gb in the plan. Zero disables files. Existing files are preserved.
Hints: read-only no · destructive yes · idempotent no · open-world not declared
commsharbor_email_mailbox_passwordSet the mailbox password. It is encrypted for the executor and is never returned. No guest access. Members can read. Owners, admins and organization keys can manage email. The private service credential stays on the server. Mailbox passwords and message content are never returned.
Parameters:
organization_id(required) — string — Organization IDresource_id(required) — string — Email resource IDpassword(required) — string — New mailbox password: 14 to 128 characters, with no control characters.idempotency_key(required) — string — Stable key for this request
Hints: read-only no · destructive no · idempotent no · open-world not declared
commsharbor_email_mailbox_suspendSuspend access while preserving mailbox data. No guest access. Members can read. Owners, admins and organization keys can manage email. The private service credential stays on the server. Mailbox passwords and message content are never returned.
Parameters:
organization_id(required) — string — Organization IDresource_id(required) — string — Email resource IDidempotency_key(required) — string — Stable key for this request
Hints: read-only no · destructive no · idempotent no · open-world not declared
commsharbor_email_mailbox_resumeRestore suspended mailbox access. No guest access. Members can read. Owners, admins and organization keys can manage email. The private service credential stays on the server. Mailbox passwords and message content are never returned.
Parameters:
organization_id(required) — string — Organization IDresource_id(required) — string — Email resource IDidempotency_key(required) — string — Stable key for this request
Hints: read-only no · destructive no · idempotent no · open-world not declared
commsharbor_email_alias_createCreate an alias to existing mailboxes in this organization. No guest access. Members can read. Owners, admins and organization keys can manage email. The private service credential stays on the server. Mailbox passwords and message content are never returned.
Parameters:
organization_id(required) — string — Organization IDdomain_id(required) — string — Domain ID from the workspace, where the alias is created.local_part(required) — string — Alias name before @.destinations(required) — array — Existing mailbox addresses in this organization.idempotency_key(required) — string — Stable key for this request
Hints: read-only no · destructive no · idempotent no · open-world not declared
commsharbor_email_alias_updatedestructiveChange the alias destinations within this organization. No guest access. Members can read. Owners, admins and organization keys can manage email. The private service credential stays on the server. Mailbox passwords and message content are never returned.
Parameters:
organization_id(required) — string — Organization IDresource_id(required) — string — Email resource IDdestinations(required) — array — Existing mailbox addresses.idempotency_key(required) — string — Stable key for this request
Hints: read-only no · destructive yes · idempotent no · open-world not declared
commsharbor_email_alias_suspendSuspend an alias without deleting its configuration. No guest access. Members can read. Owners, admins and organization keys can manage email. The private service credential stays on the server. Mailbox passwords and message content are never returned.
Parameters:
organization_id(required) — string — Organization IDresource_id(required) — string — Email resource IDidempotency_key(required) — string — Stable key for this request
Hints: read-only no · destructive no · idempotent no · open-world not declared
commsharbor_email_alias_resumeRestore a suspended alias without changing its destinations. No guest access. Members can read. Owners, admins and organization keys can manage email. The private service credential stays on the server. Mailbox passwords and message content are never returned.
Parameters:
organization_id(required) — string — Organization IDresource_id(required) — string — Email resource IDidempotency_key(required) — string — Stable key for this request
Hints: read-only no · destructive no · idempotent no · open-world not declared
commsharbor_email_job_getread-onlyRead one durable job in this organization. No guest access. Members can read. Owners, admins and organization keys can manage email. The private service credential stays on the server. Mailbox passwords and message content are never returned.
Parameters:
organization_id(required) — string — Organization IDresource_id(required) — string — Email resource ID
Hints: read-only yes · destructive no · idempotent yes · open-world not declared
commsharbor_email_service_requestRequest an included service with activation on demand. No guest access. Members can read. Owners, admins and organization keys can manage email. The private service credential stays on the server. Mailbox passwords and message content are never returned.
Parameters:
organization_id(required) — string — Organization IDservice(required) — string — Service code from the plan catalog.idempotency_key(required) — string — Stable key for this request
Hints: read-only no · destructive no · idempotent no · open-world not declared
commsharbor_email_security_checkread-onlyCheck whether someone can send email as a domain: SPF, DKIM in common selectors, DMARC, MX, MTA-STS and BIMI, with a 0-100 score and the fixes, most severe first. Public DNS only. Free, no account. The same domain is served from memory for 10 minutes. A network can run 30 new checks per day. DKIM is looked up in common selectors only; `dkim_not_found` does not prove that no key exists. `incomplete: true` means a DNS answer failed and the score can be lower than the real one; `unread` names those parts, and a failed query never becomes a missing finding.
Parameters:
domain(required) — string — Domain to check, such as example.com
Hints: read-only yes · destructive no · idempotent yes · open-world not declared
commsharbor_brazil_email_reportread-onlyRead the monthly Brazil email security report: how many domains of city halls, state and federal government, banks and listed companies reject fake email (DMARC p=reject) and how they end SPF. Totals only, public DNS. Free, no account. Public DNS only, read once a month. The sample is built from Brazil's open company registry (Receita Federal, the email of each active head office) and the CVM register of listed companies. Only totals: no domain is listed. A share is `count / (com_mx - dmarc.nao_lido)`; domains without MX are left out. Only the DMARC policy classifies; SPF is counted but does not change the class. `percent` rounds each group to 100 by the largest remainder, the same rule as the page.
Hints: read-only yes · destructive no · idempotent yes · open-world not declared
Measured by MCPYP probing. Untested fields are omitted, never estimated. Listing is always free; MCPYP never proxies calls or stores user tokens.