Skip to main content
Glama

List blocked contacts

list_blocked_contacts
Read-onlyIdempotent

Lists the people and phone numbers this Widely user has blocked. Call this when the user asks who is blocked, or before unblocking when you need a block id. Each row is one block from the Widely app block list. phone_number is set when the block is stored as a number. blocked_user_id is set when that number belongs to a Widely user. block_calls and block_messages say which directions are refused. The block applies to this Widely user on every number they use. Omit limit to return every block, the same as the app list. When limit is set, total is the full count and has_more is true when another page remains. The following page starts at offset plus count.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "list_blocked_contacts"
  }
}

Input Schema

NameRequiredDescriptionDefault
limitNoRows to return. Omit it to return every block, the same as the app list.
offsetNoRows to skip before this page. The following page starts at offset plus count.

Output Schema

NameRequiredDescriptionDefault
countYes
limitYesRows requested. Null when every block was returned.
totalYes
offsetYes
blockedYes
has_moreYesTrue when offset plus count is still below total.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A3.9/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false and openWorldHint=false, so the safety profile is covered. The description adds genuinely useful context — that the block applies to this Widely user across every number they use, and how pagination behaves (total, has_more, offset+count). It stops short of any cost, rate-limit, or authorization caveats.

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?

Purpose and usage are front-loaded in the first two sentences, and each later sentence maps to a distinct concern (row shape, field meanings, scope, paging). It runs long, and the field-by-field walkthrough partly duplicates the output schema, but there is no filler.

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 two-parameter read tool with full annotation coverage and an output schema, the description is essentially complete: it explains row structure, conditional field presence, block scope, and pagination semantics. The only omission is any statement of error or empty-result behavior, which is minor here.

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 coverage is 100% and both parameters already document their meaning, including the offset-plus-count paging rule. The description restates the limit omission behavior and adds the total/has_more interpretation, but adds no new parameter syntax or constraints beyond the schema.

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?

States a specific verb and resource ('Lists the people and phone numbers this Widely user has blocked') and scopes it to the block list, which cleanly separates it from the block_contact mutation sibling. An agent can identify the operation without opening the schema.

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?

Gives explicit triggering conditions: call it when the user asks who is blocked, or before unblocking when a block id is needed. It doesn't explicitly say when not to use it or name an alternative list tool, but the workflow dependency on block ids is clear guidance.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.