Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| CANTRIP_API_KEY | Yes | Your Cantrip API key. You can get this from dashboard.cantrip.ai/settings/api-keys |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| cantrip_connect | Start here. Connect this workspace to a Cantrip project by writing a .cantrip.json file. All subsequent commands will target this project automatically. Call without arguments to check the current connection. |
| cantrip_status | Check daemon health, authentication, and current project. Returns daemon reachability, authenticated identity (user, team), and the active project from .cantrip.json. When CANTRIP_API_KEY is missing, returns setup instructions with config examples for common MCP clients. |
| cantrip_init | Create a new project and connect this workspace to it. Pass 'brief_text' (product brief as text) to auto-extract ICPs, pain points, and value props as inferred entities (costs 5 credits). Or pass 'brief_path' (absolute file path) and the file will be read locally. Without a brief, the project is created empty (free) and you add entities manually. Writes .cantrip.json automatically after creation. After creating a project, add a few entities and confirm them with the user before going deeper. |
| cantrip_project | Manage projects. Actions:
|
| cantrip_snapshot | Browse project data at three zoom levels. No args: project overview with entity counts by type and review state, gaps, and review queue size. entity_type only: list all entities of that type (e.g. 'icps', 'pain-points', 'channels'). entity_type + entity_id: show full detail for one entity. This is the primary tool for listing and inspecting entities. Pass |
| cantrip_review | List all items pending review (inferred entities and open escalations). Pass |
| cantrip_review_accept | Accept an inferred entity, marking it as verified ground truth. Pass |
| cantrip_review_reject | Reject an inferred entity (soft-delete, kept for history). Pass |
| cantrip_review_resolve | Resolve an open escalation with a resolution message. Pass |
| cantrip_review_dismiss | Dismiss an inferred entity or open escalation. For entities: removes from review queue without accepting or rejecting (kept for history). For escalations: closes without resolving. Pass |
| cantrip_next | List gap-analysis opportunities — things that would move the project closer to ideal state. Each opportunity has a stable UUID that you can pass to cantrip_next_prompt or cantrip_next_run. Opportunities persist across calls; re-running gap analysis updates existing opportunities rather than replacing them. Review the project snapshot with the user before running opportunities. Pass |
| cantrip_next_prompt | Generate a context-rich LLM prompt for an opportunity. Returns a ready-to-use prompt with all relevant ontology context baked in. Zero credit cost. Pass |
| cantrip_next_run | Execute an enrichment opportunity with AI. Runs the LLM-powered enrichment inline — either updating existing entities' missing fields (targeted) or generating new entities (bulk). Returns when complete with a summary of what was created or updated. Parallelism: you may run different loop types concurrently (e.g. enrich ICPs + enrich competitors), but the daemon blocks concurrent runs of the same loop type for safety. Pass |
| cantrip_history | Query the append-only audit trail of all actions taken on the project. Pass |
| cantrip_meter_balance | Check remaining credits. Returns available credits, reserved credits (held by in-progress operations), and total balance. Pass |
| cantrip_meter_history | View recent credit transactions. Shows usage debits, purchases, and running balance. Pass |
| cantrip_meter_tiers | View available credit packs. Shows tier name, credits included, and price. |
| cantrip_entity_add | Create a new entity. Automatically marked as 'accepted'. Fields vary by type:
|
| cantrip_entity_edit | Edit an existing entity. Fields vary by type (same as cantrip_entity_add). Pass well-known fields directly, and any additional fields in the 'fields' object. Extra fields are stored in extensions. Pass |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |