Skip to main content
Glama
roman-zaglauer

OctoBot MCP Server

get_profile

Fetch one profile's details by ID or default to current profile. Filters existing profile data to avoid re-scraping, and raises an error if the profile is not found.

Instructions

Fetch one profile's details, defaulting to the currently selected profile.

Calls the same scrape list_profiles uses and filters the result (spec: "same scrape, filtered") rather than scraping again. Raises ProfileNotFoundError if profile_id is given but matches no scraped profile -- distinct from ProfileScrapeContractBrokenError, which means the scrape itself is broken, not that this id doesn't exist.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
profile_idNo

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. First observedv0.1.0

TDQS

A4.6/5.0
Behavior5/5

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

With no annotations, the description carries the full behavioral burden. It discloses that the tool reuses list_profiles' scrape and filters rather than scraping again, explains the default profile behavior, and precisely distinguishes two error types: ProfileNotFoundError for an unmatched ID versus ProfileScrapeContractBrokenError for a broken scrape. This is strong behavioral context.

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 compact, front-loaded with the core purpose, and every sentence serves a purpose: the first states the operation, the second explains the implementation, and the third clarifies error semantics. No filler or repetition.

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 one-parameter fetch tool with no output schema, the description is nearly complete: it covers default behavior, error cases, and how it relates to list_profiles. It does not describe the shape of the returned profile details, but this is not critical 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%, so the description must provide meaning for the profile_id parameter. It does: profile_id is optional, absence means use the currently selected profile, and providing an unmatched ID raises ProfileNotFoundError. This adds real semantics beyond the raw schema, though it does not elaborate on the ID's format.

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 operation ('Fetch one profile's details') on a clear resource (profile), and differentiates itself from list_profiles by noting it uses the same scrape but filters the result. The default-to-current-profile behavior further disambiguates it from sibling profile tools.

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 makes clear this tool is for retrieving a single profile, optionally by ID, and defaults to the currently selected profile. It references list_profiles, implying list_profiles is the alternative for getting all profiles, though it does not explicitly state 'use list_profiles instead.'

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