Skip to main content
Glama
bibo242

haraj-mcp

by bibo242

get_post_details

Read-onlyIdempotent

Fetch a Haraj post by ID along with three related groups: similar posts by tag or city, similar images, and related offers. Use the post_id parameter; set full to true for complete results.

Instructions

Fetch a post + 3 related groups (similar posts in the same tag/city, similar images, related offers). This is the canonical 'fetch by id' — there is no direct getById operation in the GraphQL API. Required: post_id. full (default true = full similarPosts response).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
fullNoReturn the full similarPosts response instead of a summary.
post_idYesHaraj post id, e.g. 185926519.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changedv0.5.0
    • addedInput schema / properties / full / description
      Added value: +"Return the full similarPosts response instead of a summary."
    • addedInput schema / properties / post_id / description
      Added value: +"Haraj post id, e.g. 185926519."
  2. First observedv0.3.0

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/non-destructive, so the bar is lower, and the description still adds real value: it discloses that the response bundles three categories of related data and that 'full' toggles between the full similarPosts response and a summary. It omits cost/size implications of that bundling, but the response-shape disclosure goes beyond the annotations.

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 tight sentences, front-loaded with what is returned and the canonical-id framing, then the required parameter, then the flag behavior. No filler, no repetition of the tool name.

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?

With no output schema, the description carries the return-shape burden and does so by enumerating the post plus the three related groups, and it explains the one non-obvious flag. Only minor gaps remain, such as pagination or response size for the full mode.

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 description coverage is 100%, so both parameters are already documented with types, defaults, and an example id, making 3 the baseline. The description's note that full defaults to true and controls similarPosts verbosity largely restates the schema rather than adding meaning beyond it.

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 (Fetch) and resource (a post) plus the exact payload shape: post + three related groups (similar posts by tag/city, similar images, related offers). It also preempts confusion with siblings by declaring itself the canonical 'fetch by id' operation, so an agent can distinguish it from post_contact, post_like_info, or comments without opening a 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?

Tells the agent this is the canonical by-id retrieval path and notes there is no direct getById in the GraphQL API, which answers the 'when do I use this' question. It does not, however, name sibling alternatives or state exclusions (e.g., use comments/post_contact for those resources), so it stops short of full when/when-not guidance.

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