Skip to main content
Glama
Paydirt-AI
by Paydirt-AI

paydirt_add_feedback_form

DestructiveIdempotent

Add a named feedback form to an iOS app at a specified screen or action. Reuses matching titles, preserves placement, returns Swift code, and requires edit/build/test for completion.

Instructions

Use this when the user asks for a named feedback form at a screen, button, lifecycle moment, or in-app action. Creates or reuses a normalized-title match, preserves the placement verbatim, optionally resolves Slack, and returns exact Swift plus mandatory edit/build/test actions. Remote form creation alone is not completion.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
titleYesThe exact user-requested form title, such as “Post Export Feedback”.
app_idYesThe Paydirt app ID. Discover it with setup or list_apps rather than asking if it is already available.
triggerYesHow presentation is triggered. Use user_tap for a button/menu item, in_app_action after an action succeeds, screen_appearance when opening a screen, or custom_condition for app-specific logic.
placementYesThe exact host-app location or action from the user, such as “Settings below Restore Purchases” or “after a successful export”. Preserve this text through implementation and reporting.
slack_channelNoOptional Slack channel name (with or without #) or channel ID. If omitted, the contract still requires the agent to connect Slack and assign a channel before completion.
initial_questionNoOptional first question. Defaults to “What would you like us to know?”. If supplied on a retry, the existing matching form is updated instead of duplicated.
custom_system_promptNoOptional guidance for AI follow-up questions.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
iosYes
formYes
slackYes
successYes
form_actionYes
agent_actionsYes
requested_placementYes
completion_requirementsYes
Behavior5/5

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

Beyond the annotations (readOnlyHint=false, idempotentHint=true, destructiveHint=true), the description discloses meaningful behavior: it 'creates or reuses a normalized-title match,' preserves placement verbatim, 'optionally resolves Slack,' and returns 'exact Swift plus mandatory edit/build/test actions.' The warning that remote creation alone is not completion adds essential context for agent workflow. No contradiction with annotations.

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?

The description is a single dense sentence that front-loads the usage condition and packs in the key behavioral notes. Every clause adds value; no redundant wording. It is slightly long but appropriately sized for the tool's complexity.

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 the tool's complexity (7 parameters, 4 required, output schema present), the description is remarkably complete. It covers the trigger, the creation/reuse behavior, Slack resolution, the exact return value (Swift plus mandatory actions), and the completion criteria. The presence of an output schema reduces the need to explain return structure, and the description compensates with workflow guidance.

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 all seven parameters are fully documented. The tool description adds a little context (e.g., 'normalized-title match' hints at title matching logic, 'optionally resolves Slack' aligns with slack_channel) but does not provide significant additional semantic value beyond the schema. 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 clearly states a specific verb and resource: 'Creates or reuses a normalized-title match' for a 'named feedback form at a screen, button, lifecycle moment, or in-app action.' It distinguishes from generic form tools by emphasizing the placement-specific, named-form behavior and the reusability, which separates it from simpler create/update siblings.

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 explicitly states when to use the tool: 'Use this when the user asks for a named feedback form at a screen, button, lifecycle moment, or in-app action.' It also provides a completion requirement ('Remote form creation alone is not completion') but does not mention alternatives or exclusions, so it misses the 'when-not' aspect for a top score.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Paydirt-AI/paydirt-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server