Skip to main content
Glama
@proof-holdings/mcp-server

@proof-holdings/mcp-server

Official

list_emails

Read-only

Retrieve all email addresses associated with your authenticated Proof account. Set PROOF_API_KEY or use start_login to open a session, then call this tool.

Instructions

List all email addresses associated with the authenticated account.

ACCESS: needs a Proof account. Set PROOF_API_KEY and restart this server, or sign in with start_login — a session opens this tool — then call this tool again.

Input Schema

NameRequiredDescriptionDefault

No arguments

Output Schema

NameRequiredDescriptionDefault
emailsNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv1.7.2
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "$schema": "http://json-schema.org/draft-07/schema#",
      +  "additionalProperties": {},
      +  "properties": {
      +    "emails": {}
      +  },
      +  "type": "object"
      +}
  2. First observedv1.1.0

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, so the read-only nature needs no restating. The description adds real value beyond that by documenting the authentication prerequisite and the concrete recovery path (set PROOF_API_KEY and restart, or sign in via start_login and retry) — a behavior an agent would otherwise only discover by failing. It doesn't state whether unverified or pending addresses are included, which is the main remaining gap.

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 sentences, front-loaded with the purpose and followed by the access requirement, with no filler. The second sentence is somewhat dense, stacking the env-var path and the sign-in path in one em-dash construction, but every clause is actionable.

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?

An output schema exists, so return values don't need explaining, and the auth prerequisite — the main failure mode for this call — is covered. What's missing is a note on what the listing includes (verified vs. pending addresses, primary designation), which would matter for a tool whose siblings include set_primary_email and remove_email.

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; the baseline for a parameterless tool applies. Nothing in the description conflicts with the empty input 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 uses a specific verb and resource: 'List all email addresses associated with the authenticated account,' with an explicit scope ('all', 'authenticated account'). An agent can easily distinguish it from siblings such as list_phones, list_domains, and list_profiles because of the 'email addresses' resource, but the description never explicitly names an alternative or boundary.

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?

Clear context on when this becomes usable: it requires a Proof account, either via PROOF_API_KEY set before restart or a session opened by start_login, after which the tool can be called. It does not explain when to prefer this over related tools like list_profiles or get_current_user, and it gives no exclusions, so it stops short of full 5-level guidance.

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

Deploy Server

Other Tools