Skip to main content
Glama

ai_visibility_prompts

Destructive

AI Visibility 360 | manage the PROMPT LIST and the assistant selection of the caller's OWN brand, read and written through the same doors the setup page clicks (no second implementation of anything, and NO LLM runs on this path, no run is started). Call it when a user says "add these questions to my brand", "bulk import the prompts from this file", "which prompts are active", "remove the four that do not fit", "turn Gemini on for this brand". Actions: list (every prompt with id, text, topic, category, intent, branded = names your own brand, active) plus the brand's current assistant selection; add (an array of {text, topic?, category?}: the server stores each item and applies THE brand rule per item, the one promptTaxonomy holds the prompt generators to: a direct or application question that names your own brand is REFUSED with the reason, because naming yourself hands ChatGPT, Claude, Gemini or Perplexity the answer and the visibility number would then measure the question instead of the market; a direct question that names you and weighs options ("X or Y", "better than") is stored as comparison and says so in note; a comparison question may name brands); remove (ids: the prompt is set inactive, stays listed with its history and is never sent to an assistant again; nothing is deleted); set_assistants (the provider ids this brand runs, from the app's registry: openai, anthropic, gemini, perplexity, grok, deepseek, mistral; an unknown id answers the door's own 400 naming the valid ones, an empty array returns to the app default). brand is required (name or id, same resolution as ai_visibility_360). Categories: direct (category buying question, default when omitted), application (problem described, no product named), comparison (two options weighed). Roles follow the app: the owner, or a team member with the editor role, edits prompts; the assistant selection needs the admin role; a reader or a stranger gets the same refusal the app gives. Only remove changes something that already exists; add and set_assistants are additive or in-place on your own brand. Requires the caller's own autario account (API key or OAuth) with an AI Visibility brand set up | see ai_visibility_360 for the report these prompts feed.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "brand": "<brand>"
    },
    "name": "ai_visibility_prompts"
  }
}

Input Schema

NameRequiredDescriptionDefault
idsNoFor "remove": the prompt ids to set inactive. An id that is not on this brand answers not found and the others still go through.
brandYesBrand name or brand id (required). With several brands on the account the name must match one of them exactly (case-insensitive); the tool answers with the list when it does not.
actionNoWhat to do. Default "list". list = the prompts and the assistant selection; add = store new prompts (needs `prompts`); remove = set prompts inactive (needs `ids`); set_assistants = choose which assistants this brand runs (needs `assistants`).
formatNoOutput wire format for this MCP call. Default 'toon' (Token-Oriented Notation, fewest tokens, best for tabular rows). 'compact' = minified JSON. 'json' = pretty JSON for readability. The REST API always returns JSON regardless.
promptsNoFor "add": the prompts to store. Each item is {text, topic?, category?}. The server applies the brand rule per item and reports what it stored, what it reclassified and what it refused, with the reason.
assistantsNoFor "set_assistants": the full list of assistants this brand runs from now on (replaces the current selection). An empty array returns to the app default.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.2/5.0
Behavior4/5

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

Adds substantial context beyond the annotations: role requirements (editor to edit prompts, admin for assistant selection, readers get the app's refusal), error behavior (unknown provider id returns a 400 naming valid ids, unknown prompt id is not-found while others still apply, ambiguous brand returns the list), and the explicit statement that remove only sets inactive and never deletes. The one gap is that the destructiveHint=true label reads more severe than the described deactivation semantics, which could confuse an agent scanning annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the action list and trigger phrases, which is good, but the sentences are long and heavily parenthetical, with the brand rule buried mid-paragraph in a single sprawling sentence. The "AI Visibility 360 |" prefix and rhetorical asides ("the setup page clicks", "hands ChatGPT, Claude, Gemini or Perplexity the answer") cost tokens without aiding selection.

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 six-parameter, four-action mutation tool with no output schema, the description covers permissions, failure modes, the brand rule, and what each action returns at a high level (list returns prompts with fields plus assistant selection; add reports stored/reclassified/refused). It is nearly complete, with only the `format` parameter and precise return shape left unaddressed.

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 the baseline is 3, and the description largely restates the schema's action/brand/category semantics. It does add real meaning in a few spots — brand name resolution against multiple brands, the empty-array-returns-to-default rule for assistants, and the per-item brand rule applied on add — but it omits `format` entirely.

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+resource: managing the prompt list and assistant selection for the caller's own brand, read and written through the setup page's own endpoints. It explicitly positions itself against the sibling report tool ("see ai_visibility_360 for the report these prompts feed") and enumerates the four actions, so an agent knows exactly what is and is not in scope.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives concrete trigger utterances ("add these questions to my brand", "turn Gemini on for this brand") that map to specific actions, plus an explicit boundary: no LLM runs, no run started on this path, and the report lives in ai_visibility_360. The when-to-use signal is unusually explicit rather than implied.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources