Skip to main content
Glama
ictinnovations

ictbroadcast-mcp

Official

Server Quality Checklist

67%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v0.1.0

  • Disambiguation4/5

    Each tool targets a distinct concept: listing campaigns, live status, per-call results, and aggregate totals. Campaign_result and campaign_summary are related but clearly separated by per-call versus totals.

    Naming Consistency4/5

    Names follow a consistent ictbroadcast_ prefix and mostly use a noun-based pattern (campaign_result, campaign_status, campaign_summary). The one verb-based name, ictbroadcast_list_campaigns, is a minor deviation but still clear.

    Tool Count5/5

    Four tools is well-scoped for a campaign monitoring/analytics server. Each tool covers a necessary piece without unnecessary bloat.

    Completeness4/5

    The set covers the core campaign monitoring workflow: discover campaigns, check live status, view summary totals, and inspect individual call results. It lacks management operations like create/update/stop, but those may be outside the server's apparent read-only purpose.

  • Average 3.8/5 across 4 of 4 tools scored. Lowest: 3.2/5.

    See the Tool Scores section below for per-tool breakdowns.

    • No community issues in the last 6 months
    • 1 commit in the last 12 weeks
    • Last stable release on
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI is passing
  • This repository is licensed under MIT License.

  • This repository includes a README.md file.

  • No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.

    Tip: use the "Try in Browser" feature on the server page to seed initial usage.

  • Add a glama.json file to provide metadata about your server.

  • If you are the author, simply .

    If the server belongs to an organization, first add glama.json to the root of your repository:

    {
      "$schema": "https://glama.ai/mcp/schemas/server.json",
      "maintainers": [
        "your-github-username"
      ]
    }

    Then . Browse examples.

  • Add related servers to improve discoverability.

How to sync the server with GitHub?

Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.

To manually sync the server, click the "Sync Server" button in the MCP server admin interface.

How is the quality score calculated?

The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).

Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.

Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).

Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.

Tool Scores

  • Behavior3/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    Annotations already declare readOnlyHint=true and openWorldHint=true, so the description doesn't need to cover mutation risk. It adds useful behavioral context by enumerating the aggregate categories and the optional user-id scope, but leaves the full set of returned metrics open-ended with 'and so on.'

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness4/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    Two short sentences with the core purpose front-loaded and no redundant phrasing. The phrase 'and so on' is slightly vague but keeps the description compact.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness3/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    For a simple two-parameter read-only summary, the essential invocation context is present, and the optional scope is clearly stated. However, there is no output schema and the description's 'and so on' leaves the exact returned fields unspecified, so an agent cannot fully anticipate the response shape.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema description coverage is 100%, with both campaign_id and usr_id already documented. The description reinforces the optional user scoping but adds no new constraints, formats, or meanings beyond the schema.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose4/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description identifies the resource ('a campaign') and the kind of result ('totals... answered, failed, human vs machine'), which distinguishes it from siblings like ictbroadcast_campaign_status or ictbroadcast_list_campaigns. It lacks an explicit verb like 'retrieves' or 'returns,' so it falls just short of top-tier clarity.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    No guidance on when to select this tool over siblings; the description only states what totals are available and mentions optional scoping. It does not name alternatives or give exclusion criteria, leaving the choice to inference from the tool name.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior3/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With readOnlyHint=true, the read-only nature is already covered by annotations, so the description doesn't need to restate that. It adds useful context about the result categories and the optional status filter, though these mostly echo the schema. No destructive behavior or side effects need disclosure.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness5/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is a single, tight sentence that front-loads the core purpose ('Per-call results for a campaign') and packs useful qualification into a parenthetical and a short optional clause. No filler or redundant phrasing.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness4/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    For a simple read-only tool with a fully documented two-parameter schema, this description covers the core purpose, the available filter, and the broad result categories. It could be stronger by explicitly routing to sibling tools or hinting at the response shape, but the category list partially compensates for the absence of an output schema.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema description coverage is 100%: campaign_id is documented as 'The campaign id' and status as 'Optional call-status filter.' The description only restates the status filter without adding any new semantic detail, so the baseline of 3 applies.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose4/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly identifies the tool as returning per-call results for a campaign and enumerates the kinds of data included (contact, response, answering-machine detection, DNC). It distinguishes from siblings by emphasizing 'per-call' results, but lacks an explicit verb like 'retrieve' or 'list', making it slightly less direct than an ideal definition.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines3/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The description implies when the tool would be used (when per-call results are needed, optionally filtered by status), but it does not explicitly mention alternatives such as ictbroadcast_campaign_summary or ictbroadcast_campaign_status. The distinction is implicit in the word 'per-call', but no direct guidance or exclusions are provided.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior3/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    The annotations already declare readOnlyHint=true and openWorldHint=true, covering the safety and scope of the operation. The description adds modest context by indicating the tool can be polled while a campaign runs (suggesting it is non-blocking and safe to call repeatedly). However, it doesn't disclose the return format or any potential latency/best-effort nature of the status check. With annotations covering the main behavioral traits, a 3 is appropriate.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness5/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    Two short sentences with zero wasted words. The core action ('Poll this while a campaign runs') is front-loaded, and the example statuses add clarity without bloat. Every word earns its place.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness4/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    For a single-parameter read-only polling tool with a 100%-covered schema and readOnly/openWorld annotations, the description is mostly complete. The only minor gap is not describing the shape of the status response (e.g., possible values beyond 'running or stopped'), but an output schema is absent and the examples suffice for an agent to know what to expect at a glance.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema description coverage is 100%, so the schema already documents the single parameter (campaign_id) adequately. The description does not add new parameter-level detail beyond implying that the campaign id uniquely identifies the campaign. Per the calibration, baseline 3 is correct when the schema carries the heavy lifting.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description states a specific verb ('Poll') and resource ('status of a campaign by id'), and clarifies the meaning of status with concrete examples ('running or stopped'). It clearly distinguishes itself from siblings like ictbroadcast_campaign_result (which likely retrieves results rather than status) and ictbroadcast_list_campaigns (which lists campaigns rather than checking a single campaign's status).

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines5/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The description explicitly provides usage guidance: 'Poll this while a campaign runs.' This tells the agent when to use the tool (during campaign execution) and implies it may be called repeatedly. It also naturally excludes using this tool for campaign results or listing, which are handled by the sibling tools.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior3/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    The readOnlyHint annotation already covers the read-only nature, and the description is consistent with it, adding that the tool returns id and name pairs. It provides a small amount of behavioral context via 'Start here' but does not disclose additional traits such as pagination, ordering, or whether this returns all campaigns. No contradiction with annotations.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness5/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    Two concise sentences with no filler. The core purpose is front-loaded, and the workflow hint ('Start here') is placed second without redundancy.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness4/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    For a parameterless list tool, the description adequately covers what it does and why an agent would use it first. It does not explicitly state that it returns all campaigns or describe an output structure beyond id/name, but the no-param schema and clear purpose make this sufficient for correct invocation.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters4/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    The tool has zero parameters and an empty input schema, so there is nothing to document. The description adds no parameter details, but none are needed; a baseline of 4 is appropriate for a no-parameter tool.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description states a specific verb-resource pair ('List the outbound campaigns on the ICTBroadcast server') and explicitly names the returned data (id and name of each). The phrase 'Start here to find a campaign id' clearly positions this as the entry point, distinguishing it from the result/status/summary siblings that likely consume the campaign id.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines4/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    'Start here to find a campaign id' is an explicit usage instruction that tells an agent when to invoke this tool first. It gives clear context for the workflow, though it does not explicitly name the alternative sibling tools or state when not to use this one.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

GitHub Badge

Glama performs regular codebase and documentation scans to:

  • Confirm that the MCP server is working as expected.
  • Confirm that there are no obvious security issues.
  • Evaluate tool definition quality.

Our badge communicates server capabilities, safety, and installation instructions.

Card Badge

ictbroadcast-mcp MCP server

Copy to your README.md:

Score Badge

ictbroadcast-mcp MCP server

Copy to your README.md:

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/ictinnovations/ictbroadcast-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server