Skip to main content
Glama

get_user_profile

Read-only

Retrieve any public Substack profile by handle to see minimal profile info and their primary publication—no login required.

Instructions

Anonymous public profile read by handle; one upstream read, no credentials sent. Returns minimal public fields and the primary publication when marked. Public profile data does not prove account ownership or access.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
handleYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
idYes
bioYes
nameYes
handleYes
photo_urlYes
primary_publicationYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv1.3.0

TDQS

A4.7/5.0
Behavior5/5

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

Even with readOnlyHint already present, the description adds meaningful behavioral detail: one upstream read, no credentials sent, returns minimal public fields, and includes the primary publication only when marked. It also surfaces a semantic limitation that public data does not prove ownership/access.

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?

Three sentences, each earning its place: purpose and network/auth behavior, return scope, and an important caveat. The core purpose is front-loaded, and there is no repetition of schema or annotation fields.

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?

This is a low-complexity tool: one parameter, a readOnlyHint annotation, and an output schema already present. The description covers auth posture, network behavior, return scope, and a key semantic caveat, leaving nothing essential 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?

Schema description coverage is 0%, but the description embeds the sole parameter ('by handle') into its purpose statement, clarifying that handle is the lookup key. The schema's pattern covers format. For a single self-describing parameter, this is adequate compensation, though not deeply enriched.

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 uses a specific verb-resource pair: 'Anonymous public profile read by handle.' It clearly distinguishes this tool from siblings like get_publication or get_subscriber by emphasizing public, anonymous profile data, and the handle-based lookup is explicit.

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?

The description establishes clear context: use this for anonymous reads by handle with no credentials. It also warns that 'Public profile data does not prove account ownership or access,' which implicitly tells agents when not to rely on this tool. It does not explicitly name alternative sibling tools, so it stops short of full when-to-use routing.

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