Skip to main content
Glama

get_own_number

Read-onlyIdempotent

Retrieve this server's Signal account number in E.164 to identify your own messages and address notes to yourself.

Instructions

Return this server's own Signal account number as {number} (E.164, e.g. +4915112345678). Local lookup: no network call, no daemon needed, no side effects. Use it to know which messages are your own (sender == number) or to address send_note_to_self; use list_accounts instead to see every account registered in signal-cli on this machine.

Input Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive, and openWorld=false, so the safety profile is covered. The description still adds beyond that: it characterizes the operation as a purely local lookup with no network call and no daemon dependency, plus the value's format. It loses the top mark only because 'no side effects' restates destructiveHint=false.

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?

Front-loaded with the core answer, then format, then behavioral traits, then routing to siblings. Every clause (E.164 example, local-lookup guarantee, two use cases, one exclusion) earns its place with no filler.

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

Completeness5/5

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

For a no-parameter, no-output-schema tool, the description supplies the missing return contract itself ({number} in E.164), the operational cost model (local, no network), and sibling routing. Nothing an agent needs to invoke it correctly is absent.

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 takes zero parameters, so there is nothing for the description to disambiguate; per the baseline for 0-param tools this lands at 4. The description correctly adds no parameter noise and instead spends its words on the return value.

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+resource ('Return this server's own Signal account number') and pins the exact return format with an E.164 example. It explicitly distinguishes itself from the closest sibling, list_accounts, so an agent can tell them apart without opening either schema.

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?

Names two concrete use cases (knowing which messages are your own via sender == number, and addressing send_note_to_self) and an exclusion with the alternative to pick instead (list_accounts). This is the explicit when/when-not/alternative pattern.

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