commsharbor_audit
List tenant audit events.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| cursor | No | Opaque cursor | |
| organization_id | Yes | Active organization ID |
List tenant audit events.
| Name | Required | Description | Default |
|---|---|---|---|
| cursor | No | Opaque cursor | |
| organization_id | Yes | Active organization ID |
Changes observed during successful MCP inspections. Dates show when Glama detected each change.
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the behavioral transparency burden. It does convey the core behavior—listing audit events—and implies a read-only operation. However, it omits useful behavioral details such as pagination semantics, result ordering, or whether the cursor is required for paginated retrieval.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is four words long and front-loads the essential action and resource. There is no redundancy, filler, or irrelevant detail; every word contributes to the meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple listing tool with fully documented parameters, this is minimally viable: an agent knows what to call and what parameters to provide. Still, the lack of any mention of pagination, response shape, or event scope beyond 'tenant' leaves room for ambiguity about what the returned audit events look like.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the input schema already documents both parameters adequately. The description adds no extra semantic detail beyond the word 'tenant', which hints at the organization scoping but does not meaningfully extend the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the action ('List') and the resource ('tenant audit events'), making the tool's purpose immediately understandable. It does not explicitly differentiate from siblings, but no other sibling appears to cover audit events, so the risk of confusion is low.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrasing implies this tool is for retrieving tenant audit events, which gives an agent a reasonable sense of when to reach for it. However, it provides no explicit guidance about alternatives, prerequisites, or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.
Most resource CRUD sets are distinct, but the server duplicates entire CRM activity/task tool groups under crm_* and platform_crm_* with identical descriptions, so an agent cannot tell which set to call. Additional overlap exists around identity/context (me, context, platform_context, organizations) and exports (contacts_export vs data_export_create).
Names generally follow commsharbor_<resource>_<action>, but list endpoints are split between plural nouns (audiences, webhooks) and *_list suffixes (crm_activities_list), and some tools use bare nouns or verbs (health, me, context, logout). The mixed conventions are readable but not fully predictable.
141 tools is far beyond a coherent surface for an agent to select from. Even with a broad CRM/email platform scope, the set should be consolidated, namespaced more aggressively, or split into multiple focused servers.
Coverage is broad: campaigns, templates, audiences, CRM objects, imports/exports, auth, billing, domains, webhooks, and suppressions all have lifecycle tools. Gaps like suppression deletion, webhook update, and a non-platform leads group are minor relative to the overall surface, though the duplicate platform sets muddy completeness.