Skip to main content
Glama
PROMPTEYE-SP-Z-O-O

prompteye-mcp

Official

Build a topical authority map for a topic

create_topical_map

Builds a pillar-and-clusters content plan for a topic in the project: one compendium page and the supporting article titles underneath it, grouped by category, meant to make the site the topic's most complete source for both search engines…

Instructions

Builds a pillar-and-clusters content plan for a topic in the project: one compendium page and the supporting article titles underneath it, grouped by category, meant to make the site the topic's most complete source for both search engines and AI models.

Building one takes a little while, since it asks a model to plan the whole structure. The map comes back processing and turns ready once that finishes, or error if it fails — read it with get_topical_map until it does.

Every call starts a new map; there is no limit on how many a project can have.

Input Schema

NameRequiredDescriptionDefault
topicYesThe topic to build a map for, e.g. 'cloud backup for small teams'.
languageYesLanguage to write the map in, as a two-letter code such as en or pl.
projectIdYesThe project to work on — its id from list_projects. Required on every call, so that parallel conversations never read or write each other's project.

Output Schema

NameRequiredDescriptionDefault
idYes
topicYes
pillarYesThe compendium page. null until ready.
statusYesprocessing the moment it is requested, then ready — pillar and clusters filled in — or error, see errorMessage.
clustersYesThe supporting article titles, grouped by category. Empty until ready.
languageYes
createdAtYesWhen the map was requested, ISO 8601 in UTC.
projectIdYes
errorMessageYesWhy generation failed. null unless status is error.
generationCostYesCost of the generation, in USD.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changedv1.0.28
    • addedInput schema / properties / projectId
      Added value: +{
      +  "description": "The project to work on — its id from list_projects. Required on every call, so that parallel conversations never read or write each other's project.",
      +  "minLength": 1,
      +  "type": "string"
      +}
    • changedInput schema / required
      Previous value: -[
      -  "topic",
      -  "language"
      -]New value: +[
      +  "projectId",
      +  "topic",
      +  "language"
      +]
  2. Addedv1.0.22

TDQS

A4.4/5.0
Behavior5/5

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

Goes well beyond the annotations by disclosing the asynchronous lifecycle: the call takes a while, returns `processing`, becomes `ready`, or `error` on failure. It also makes the non-idempotent behavior concrete ('every call starts a new map; there is no limit'), which is exactly the context an agent needs before re-invoking.

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?

Front-loads the purpose, then the async behavior, then the re-invocation semantics — a logical order with no filler. It is slightly longer than needed (the search-engine/AI-model justification is decorative), but every paragraph carries usable information.

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?

An output schema exists, so return values need no explanation, and the description still supplies the crucial status-state machine for polling. For a slow, non-idempotent, open-world creation tool, nothing an agent needs before calling is missing.

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 coverage is 100%, so topic, language, and projectId are already fully documented in the schema. The description only restates that the map is built 'for a topic in the project' and adds no format or constraint detail beyond that, so baseline 3 applies.

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 and resource ('Builds a pillar-and-clusters content plan for a topic in the project') and immediately defines the output shape: one compendium page plus supporting article titles grouped by category. This clearly separates it from get_topical_map and list_topical_maps, which only read maps.

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?

Explicitly routes the caller: read the result with get_topical_map until it is ready, and it warns that every call starts a new map with no per-project limit. It does not discuss when to use regenerate_topical_map_cluster instead, which is the one remaining ambiguity among siblings.

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