Tool Reference
Complete API reference for all Cutline MCP tools including pre-mortem analysis, AI persona feedback, wiki management, and product validation. Includes parameters, examples, and response formats.
Complete documentation for all Cutline MCP tools available through the Model Context Protocol.
Audit Tools
These tools scan your codebase for active issues ā real vulnerabilities and anti-patterns in your code as written today.
engineering_audit
š FREE ā Engineering audit that evaluates your codebase against a stack-aware constraint graph covering security, reliability, and scalability. No deep dive or product_id required. 3 scans/month on free tier.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
project_root | string | Yes | Absolute path to the workspace root |
task_description | string | No | Context about what you're building |
max_file_bytes | number | No | Max bytes per file (default: 50000) |
Response: Readiness scores (engineering, security, reliability, scalability), binding coverage, top finding with fix guidance, and SCA vulnerability summary.
code_audit
š PREMIUM ā Security-focused code audit that cross-references the product constraint graph, runs LLM extraction for security gaps, and builds an RGR remediation plan.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
product_id | string | Yes | Product ID from .cutline/config.json |
project_root | string | Yes | Absolute path to workspace root |
file_paths | string[] | No | Specific files to audit |
task_description | string | No | What you're building |
audit_mode | string | No | security (default) or full |
max_file_bytes | number | No | Max bytes per file (default: 50000) |
auto_start | boolean | No | Queue a deep dive job (default: true) |
Response: RGR plan, security gaps, extracted risks, checklist summary, SCA findings, constraint graph updates, and next-step RGR instructions.
Constraint Tools
These tools are available through the cutline-constraints server. They power the constraint graph, NFR boundary enforcement, and the adaptive Red-Green-Refactor workflow.
rgr_plan
Assess constraint complexity for a file and return an adaptive execution plan. Call this before implementing any feature.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
product_id | string | Yes | Product ID |
file_path | string | Yes | File path to assess (e.g., src/api/upload.ts) |
depth | number | No | BFS traversal depth (default: 2) |
auth_token | string | No | Firebase ID token |
Response: Returns strategy ("full" or "phased"), an array of phases with names, categories, and constraint counts, plus a rationale string.
graph_get_boundaries
Get constraint boundaries for a specific file path. Returns functional context (features, components, data types) and applicable NFRs. Supports RGR phased delivery.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
product_id | string | Yes | Product ID |
file_path | string | Yes | File path to look up constraints for |
depth | number | No | BFS traversal depth (default: 2) |
max_tokens | number | No | Token budget for output (default: 2000) |
phase | string | No | RGR phase filter: test_spec, functional, security, performance, economics, full, or auto (default: full) |
auth_token | string | No | Firebase ID token |
Response: Imperative Markdown with functional context and NFRs, formatted for the requested phase.
constraints_auto
Proactive constraint injection. Analyzes your current file/code context and automatically surfaces relevant constraints.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
product_id | string | Yes | Product ID |
file_paths | string[] | No | Files you're working on |
code_snippet | string | No | Current code context (500 char max) |
task_description | string | No | What you're trying to accomplish |
mode | string | No | Output mode: silent, advisory, blocking, deep, auto (default: auto) |
max_constraints | number | No | Max constraints to return (default: 5) |
phase | string | No | RGR phase filter (same options as graph_get_boundaries) |
auth_token | string | No | Firebase ID token |
rgr_complete_phase
š PREMIUM ā Mark an RGR phase as complete. Updates the constraint graph and recomputes readiness scores with the phase bonus.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
product_id | string | Yes | Product ID |
phase | string | Yes | Phase to complete: test_spec, functional, security, performance, or economics |
Response: Updated readiness scores and completed phases list.
generate_cutline_md
š PREMIUM ā Generate and write Cutline config files. Creates .cutline.md (constraint routing engine), Cursor rules, Claude Code config, and RGR workflow rules. If project_root is provided, files are written directly to disk.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
product_id | string | Yes | Product ID |
product_name | string | No | Human-readable product name |
project_root | string | No | Workspace root ā writes files directly when provided |
project_type | string | No | Primary framework/stack (auto-detected if omitted) |
mcp_server | string | No | MCP server name to reference (default: cutline-constraints) |
max_embedded_constraints | number | No | Max critical constraints to embed (default: 7) |
Response: When project_root is set, returns list of files written. Otherwise returns content for manual saving.
Pre-mortem Tools
These tools are available through the cutline-premortem server.
premortem.run
Generate a complete pre-mortem analysis synchronously.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
input | object | Yes | Pre-mortem input configuration |
input.productName | string | Yes | Name of the product or feature |
input.productDescription | string | Yes | 2-3 sentence description |
input.referenceClasses | string[] | No | Industry/domain references |
input.pessimism | number | No | Pessimism level (0.0 - 1.0, default: 0.5) |
auth_token | string | No | Firebase ID token (auto-filled by CLI) |
Example:
{
"input": {
"productName": "Mobile Analytics Dashboard",
"productDescription": "A mobile app that provides real-time analytics for e-commerce stores, helping merchants track sales and customer behavior on the go.",
"referenceClasses": ["Mobile apps", "Analytics tools", "E-commerce"],
"pessimism": 0.6
}
}
Response: Full pre-mortem document with assumptions, risks, experiments, and recommendations.
premortem.list
List all pre-mortems for the authenticated user.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
limit | number | No | Maximum results (default: 10) |
auth_token | string | No | Firebase ID token |
Example:
{
"limit": 5
}
Response: Array of pre-mortem summaries with IDs, names, status, and dates.
premortem.queue
Queue an asynchronous pre-mortem job for longer/complex analyses.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
input | object | Yes | Same as premortem.run |
auth_token | string | No | Firebase ID token |
Response: Job ID for tracking progress.
premortem.status
Check the status of a queued pre-mortem job.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
jobId | string | Yes | Job ID from premortem.queue |
auth_token | string | No | Firebase ID token |
Response: Job status, progress percentage, and current stage.
premortem.kick
Execute or resume a queued pre-mortem job.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
jobId | string | Yes | Job ID to execute |
auth_token | string | No | Firebase ID token |
premortem.regen_assumptions
Regenerate the assumptions section of an existing pre-mortem.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
input | object | Yes | Original input parameters |
doc | object | Yes | Existing pre-mortem document |
auth_token | string | No | Firebase ID token |
premortem.regen_experiments
Regenerate the experiments section of an existing pre-mortem.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
input | object | Yes | Original input parameters |
doc | object | Yes | Existing pre-mortem document |
auth_token | string | No | Firebase ID token |
Persona Tools
These tools are available through the cutline-tools server.
personas.list
List all personas for the authenticated user.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
productId | string | No | Filter by product ID |
auth_token | string | Yes | Firebase ID token |
Response: Array of persona objects with demographics, personality, and behaviors.
personas.get
Get a specific persona by ID.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
personaId | string | Yes | Persona ID |
auth_token | string | Yes | Firebase ID token |
Response: Complete persona object.
personas.chat
Have a conversation with a persona about your product or feature.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
persona | object | Yes | Persona object |
userMessage | string | Yes | Your message to the persona |
conversationHistory | array | No | Previous messages for context |
product | object | No | Product context |
auth_token | string | Yes | Firebase ID token |
Example:
{
"persona": {
"name": "Debra",
"description": "Technical solopreneur running multiple SaaS businesses",
"role": "Founder",
"segment": "Startup"
},
"userMessage": "What do you think about adding a mobile app to our analytics platform?",
"product": {
"name": "Cutline",
"brief": "AI product management suite"
}
}
Response: Persona's response in character, based on their profile.
Wiki Tools
These tools are available through the cutline-tools server.
wiki.load
Load the wiki/documentation for a project.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
projectId | string | Yes | Project ID |
auth_token | string | No | Firebase ID token |
Response: Wiki content in markdown format.
wiki.save
Save updated wiki content.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
projectId | string | Yes | Project ID |
markdown | string | Yes | Wiki content in markdown |
auth_token | string | No | Firebase ID token |
wiki.apply_edits
Apply specific edits to wiki content.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
edits | array | Yes | Array of edit operations |
auth_token | string | No | Firebase ID token |
Agent Tools
agent.chat
Chat with the Cutline AI assistant about your wiki or product.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
prompt | string | Yes | Your question or request |
wikiMarkdown | string | No | Wiki context for the chat |
auth_token | string | No | Firebase ID token |
Example:
{
"prompt": "What are the main risks identified in my product wiki?",
"wikiMarkdown": "# My Product\n\n## Risks\n- Market timing..."
}
trial.generate
Generate a trial run scenario for testing.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
prompt | string | Yes | Description of what to test |
Example:
{
"prompt": "Generate a trial run for testing our checkout flow with 100 users"
}
Output Tools
These tools are available through the cutline-output server.
premortem.render_pdf
Generate a PDF from a pre-mortem document.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
doc | object | Yes | Pre-mortem document |
store | boolean | No | Store PDF in cloud (default: false) |
auth_token | string | No | Firebase ID token |
Response: Signed URL to download the PDF.
premortem.qa_answer
Answer questions about a pre-mortem document.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
doc | object | Yes | Pre-mortem document |
question | string | Yes | Question to answer |
Example:
{
"doc": { ... },
"question": "What are the top 3 risks identified?"
}
Integration Tools
These tools are available through the cutline-integrations server.
integrations.create_issues
Create issues in an external issue tracker from pre-mortem results.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
schema_json | object | Yes | Issue schema and data |
limit | number | No | Maximum issues to create |
auth_token | string | No | Firebase ID token |
Error Handling
All tools may return errors in this format:
{
"error": "MCP error -32600: Permission denied"
}
Common Error Codes:
| Code | Meaning | Solution |
|---|---|---|
-32600 | Permission denied | Check authentication |
-32601 | Method not found | Verify tool name |
-32602 | Invalid params | Check required parameters |
-32603 | Internal error | Contact support |
Rate Limits
| Tier | Engineering Audits | Code Audits | Pre-mortems |
|---|---|---|---|
| Free | 3/month | ā | ā |
| Premium | Unlimited | Unlimited | Unlimited |
| Enterprise | Unlimited | Unlimited | Unlimited |
Next Steps
- Setup Guide - Get started with MCP
- Examples - Common workflows