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

prompteye-mcp

Official

List the prompts worth adding next

list_prompt_suggestions
Read-only

List pending prompt suggestions for an active project, grouped by prompt group and ranked by demand, so you can decide what to monitor next before writing prompts manually.

Instructions

The prompts PromptEye proposes the active project start tracking, still awaiting a decision. This is the recommended way to add prompts — each suggestion is generated from real demand and carries why it was proposed: a gap in the funnel, or a theme close to prompts that already perform. Grouped by the prompt group each would join, strongest demand first. Call this when asked what to monitor next, and before ever writing prompts by hand.

aiTraffic is the demand behind a prompt: PromptEye expands the question into the phrasings people actually use for it, weighs each one by how much of the question it carries, and adds up how much demand they attract per month. It is a property of the prompt, not a measurement of a period. 0 means it was measured and the demand is below the reporting floor of 50 searches a month. null means there is no figure: with aiTrafficMeasuredAt null it has not been measured yet, with a date it was measured and none of the phrasings came back with a volume, so it is unknown rather than zero. aiTrafficMeasuredAt is when the figure was last measured; a failed refresh keeps the earlier figure and its date. It is not what get_ai_traffic reports: that tool counts sessions that actually reached the site from an assistant, while this counts the demand behind the question.

relativeVolumeScore places the demand among the other prompts of the same group, 0 for the lowest and 1 for the highest, and relativeVolumeLabel bands it as very_high, high or standard. It is relative to the group, so high means high for this group and says nothing about the market.

purchaseIntentLevel is the funnel stage the question is asked at: 1 awareness (educational), 2 consideration (looking for a solution), 3 comparison (weighing options), 4 decision (ready to buy). A group with no prompts at a stage is a blind spot, not a tidy funnel: customers ask there and nobody sees what the assistants answer.

companyFitScore is how well the question fits what the brand sells, 0 unrelated to 1 squarely on topic, with companyFitReason saying what that verdict was read off.

accept_prompt_suggestion turns one into a tracked prompt; generate_prompt_suggestions asks PromptEye for new ones for a group.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
groupIdNoOnly suggestions for this prompt group, by the group id the suggestions carry.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
dataYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv1.0.22
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "$schema": "https://json-schema.org/draft/2020-12/schema",
      +  "additionalProperties": false,
      +  "properties": {
      +    "data": {
      +      "items": {
      +        "additionalProperties": false,
      +        "properties": {
      +          "aiTraffic": {
      +            "description": "Estimated monthly searches behind the prompt, on the scale tracked prompts use. null = the phrases came back with no data.",
      +            "type": [
      +              "number",
      +              "null"
      +            ]
      +          },
      +          "companyFitReason": {
      +            "type": "string"
      +          },
      +          "companyFitScore": {
      +            "description": "How well the question fits what the brand sells, 0 unrelated to 1 squarely on topic.",
      +            "type": "number"
      +          },
      +          "createdAt": {
      +            "description": "When the suggestion was generated, ISO 8601 in UTC.",
      +            "type": "string"
      +          },
      +          "expiresAt": {
      +            "description": "When it lapses if nobody decides on it, ISO 8601 in UTC.",
      +            "type": "string"
      +          },
      +          "groupId": {
      +            "type": "string"
      +          },
      +          "groupName": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "id": {
      +            "type": "string"
      +          },
      +          "mode": {
      +            "description": "gap = fills a funnel stage the group does not cover, replicate = close to prompts already performing in it.",
      +            "type": "string"
      +          },
      +          "prompt": {
      +            "type": "string"
      +          },
      +          "purchaseIntentLevel": {
      +            "description": "1 educational, 2 solution-seeking, 3 comparison, 4 decision.",
      +            "type": "number"
      +          },
      +          "relativeVolumeLabel": {
      +            "description": "very_high, high or standard, relative to the group rather than the market.",
      +            "type": "string"
      +          },
      +          "relativeVolumeScore": {
      +            "description": "Where the demand sits among the group's prompts, 0 lowest to 1 highest.",
      +            "type": "number"
      +          },
      +          "sourcePhrase": {
      +            "type": "string"
      +          },
      +          "sourcePhraseVolume": {
      +            "description": "Monthly searches for sourcePhrase as the traffic provider reports them, not an estimate of the prompt.",
      +            "type": [
      +              "number",
      +              "null"
      +            ]
      +          },
      +          "whyArguments": {
      +            "items": {
      +              "type": "string"
      +            },
      +            "type": "array"
      +          },
      +          "whyText": {
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "id",
      +          "prompt",
      +          "mode",
      +          "groupId",
      +          "groupName",
      +          "sourcePhrase",
      +          "sourcePhraseVolume",
      +          "aiTraffic",
      +          "relativeVolumeScore",
      +          "relativeVolumeLabel",
      +          "purchaseIntentLevel",
      +          "companyFitScore",
      +          "companyFitReason",
      +          "whyText",
      +          "whyArguments",
      +          "createdAt",
      +          "expiresAt"
      +        ],
      +        "type": "object"
      +      },
      +      "type": "array"
      +    }
      +  },
      +  "required": [
      +    "data"
      +  ],
      +  "type": "object"
      +}
  2. First observedv1.0.5

TDQS

A4.5/5.0
Behavior5/5

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

Annotations declare readOnlyHint and openWorldHint, and the description adds substantial behavioral context beyond them: the output is grouped by prompt group, ordered strongest demand first, and the fields aiTraffic, relativeVolumeScore, purchaseIntentLevel, and companyFitScore are defined with their edge cases (null vs. 0) and distinction from get_ai_traffic. This goes well beyond what the annotations provide.

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?

The opening paragraph is front-loaded with purpose, usage, and sibling routing, which is effective. However, the description then spends three long paragraphs defining return-value fields even though an output schema exists, making it longer than necessary for a one-parameter read-only list tool.

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?

Given a simple read-only list tool with a fully described parameter, read-only annotations, and an output schema, the description covers purpose, usage, alternatives, ordering, grouping, and field semantics. Nothing essential for calling it correctly appears to be 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?

The single groupId parameter is fully documented in the schema ('Only suggestions for this prompt group, by the group id the suggestions carry'), and schema description coverage is 100%. The description explains grouping conceptually but adds no syntax, format, or filtering details beyond the schema, so baseline 3 is appropriate.

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 this returns prompts PromptEye proposes for the active project that are awaiting a decision, grouped by prompt group and ordered by demand. It explicitly names sibling alternatives accept_prompt_suggestion and generate_prompt_suggestions, so an agent can distinguish this list tool from actions that accept or generate suggestions.

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?

It gives direct when-to-use guidance: 'Call this when asked what to monitor next, and before ever writing prompts by hand.' It also clarifies the sibling actions—accept_prompt_suggestion turns one into a tracked prompt, generate_prompt_suggestions asks for new ones—so the agent knows when to choose this tool versus alternatives.

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