Tools Reference
PrompTick's MCP server exposes three tools. Each AI Action consumed by these tools counts against your monthly AI Action quota (see Quotas & Limits).
generate_prompt
Generate an optimized system + user prompt from a use-case description.
Use when: the user wants to create a brand-new AI prompt template (not when they want to write code).
Input
| Field | Type | Required | Description |
|---|---|---|---|
use_case | string | yes | What the prompt should do (e.g. "customer support chatbot for a SaaS product") |
target_model | string | no | Target model ID. Omit to auto-detect. |
variables | array | no | Template variables: { name, description, sample_values? } |
constraints | string[] | no | Requirements (e.g. "must respond in JSON") |
enable_variable_suggestions | boolean | no | Let AI suggest variables. Defaults to true if no variables provided. |
skip_clarification | boolean | no | Skip follow-up questions and generate immediately |
clarification_answers | array | no | Answers returned from a previous needs_clarification response |
Output
On success:
{
"status": "success",
"system_prompt": "...",
"user_prompt": "...",
"suggested_variables": [{ "name": "...", "description": "..." }],
"generation_approach": "...",
"defaults_applied": ["..."]
}
If PrompTick needs more info:
{
"status": "needs_clarification",
"message": "...",
"questions": [{ "questionId": "...", "questionText": "..." }]
}
Re-call with clarification_answers populated.
Example
"Generate a prompt for a bot that reviews pull requests and flags security issues."
improve_prompt
Enhance an existing AI prompt.
Use when: the user pastes prompt text and wants it improved.
Input
| Field | Type | Required | Description |
|---|---|---|---|
system_prompt | string | one of | Current system prompt |
user_prompt | string | one of | Current user prompt |
improvement_instructions | string | no | What to change (e.g. "make it more concise") |
target_model | string | no | Target model ID |
use_case_context | string | no | What the prompt is used for |
variables | array | no | Existing {{variables}} in the prompt — pass them so they're preserved |
enable_variable_suggestions | boolean | no | Default false |
skip_clarification | boolean | no | Skip clarification |
clarification_answers | array | no | Answers to previous clarification questions |
At least one of system_prompt or user_prompt is required.
Output
{
"status": "success",
"system_prompt": "...",
"user_prompt": "...",
"improvement_approach": "...",
"suggested_variables": [],
"defaults_applied": ["..."]
}
Or "status": "needs_clarification" with questions (same shape as generate_prompt).
enrich_coding_prompt
Turn a coding task description into a rich, well-structured prompt for an AI coding assistant. Two-step tool.
Use when: the user wants to build, create, fix, refactor, or modify code.
Input
| Field | Type | Required | Description |
|---|---|---|---|
coding_request | string | yes | The raw task (e.g. "Add authentication to my Express API") |
target_assistant | enum | no | cursor, claude-code, copilot, windsurf, generic (default) |
project_context | object | no | { tech_stack?, description?, language? } |
context_answers | array | no | Step 2 only — answers to context requests |
task_analysis_passthrough | object | no | Step 2 only — pass back unchanged from step 1 |
Step 1 — first call
Provide coding_request and project_context. The tool analyses the task and returns context it needs from your codebase:
{
"status": "needs_context",
"message": "...",
"context_requests": [
{ "id": "ctx-001", "type": "file", "description": "..." }
],
"task_analysis_passthrough": {
"domain": "...",
"task_summary": "...",
"...": "..."
}
}
Step 2 — fulfill context, re-call
Your assistant reads the requested files, then re-calls with:
- same
coding_request task_analysis_passthroughpassed back unchangedcontext_answers, each{ requestId, content, fulfilled, note? }
Returns the final enriched prompt:
{
"status": "success",
"enriched_prompt": "...",
"enrichment_summary": "...",
"target_assistant": "claude-code"
}
Important: don't skip step 1. Letting the tool ask for exactly what it needs produces substantially better prompts than guessing upfront.
Errors
Tool errors return isError: true with:
{ "status": "error", "error": "<code>", "message": "..." }
Auth and quota errors come back at the protocol layer — your MCP client typically surfaces them as toast messages. If you hit your monthly AI Action limit, the tool will refuse new calls until reset or upgrade.