Tools Reference
Complete reference for all Chipp MCP Server tools
This guide documents all 78 tools available in the Chipp MCP Server, organized by category.
Quick Reference
Jump to a category or use this table to find tools quickly:
| Category | Tools | Description |
|---|---|---|
| Help | 1 | Search documentation |
| Apps | 6 | Create, read, update, delete applications |
| Config | 7 | System prompts, models, settings, branding |
| Knowledge | 6 | Add URLs, documents, manage RAG sources |
| Analytics | 14 | Usage data, conversations, metrics |
| Tags | 8 | Intent tagging and utterance generation |
| Evals | 8 | Quality testing and evaluation |
| Custom Actions | 5 | API integrations |
| MCP Integrations | 5 | External MCP servers |
| Deployments | 8 | Slack, WhatsApp, Email, Voice |
| Workspaces | 6 | Workspace and billing info |
| Prompt Engineering | 7 | AI-assisted prompt improvement |
Help
Tools for finding information about the MCP server itself.
search_documentation
Search the MCP server documentation to find information about tools, authentication, setup, and best practices.
Scope: None (public - no authentication required)
| Parameter | Type | Required | Description |
|---|---|---|---|
| query | string | Yes | Search query (3-500 chars) |
| limit | number | No | Max results (1-10, default 5) |
| section | string | No | Filter by section (setup, authentication, rate-limits, tools-reference, workflows) |
Example:
"Search docs for how to authenticate" "Search documentation for rate limits" "Find docs about creating apps"
This tool doesn't require authentication, making it useful for onboarding new users who haven't connected yet.
Apps
Core CRUD operations for managing Chipp applications.
list_apps
List all applications accessible to the authenticated user.
Scope: apps:read
| Parameter | Type | Required | Description |
|---|---|---|---|
| workspaceId | number | No | Filter to a specific workspace |
| limit | number | No | Max results (1-100, default 20) |
| offset | number | No | Pagination offset |
| includeDeleted | boolean | No | Include soft-deleted apps |
Example:
"List all my Chipp apps" "Show apps in workspace 42"
get_app
Get detailed information about a specific application.
Scope: apps:read
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
Example:
"Get details for app 123" "Show me the configuration of my FAQ bot"
create_app
Create a new application in a workspace.
Scope: apps:write
| Parameter | Type | Required | Description |
|---|---|---|---|
| name | string | Yes | App name (1-100 chars) |
| workspaceId | number | Yes | Workspace to create in |
| description | string | No | App description (max 2000 chars) |
| systemPrompt | string | No | Initial system prompt (max 10000 chars) |
| model | string | No | Model ID (default: GPT_4_1) |
Example:
"Create a customer support bot called HelpDesk in workspace 5" "Make a new app named FAQ Bot with a helpful assistant prompt"
update_app
Update an existing application's properties.
Scope: apps:write
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
| name | string | No | New name |
| description | string | No | New description |
| systemPrompt | string | No | New system prompt |
| model | string | No | New model ID |
| startingMessage | string | No | Initial bot message |
Example:
"Rename app 123 to 'Support Bot v2'" "Update the system prompt for my FAQ app to be more friendly"
delete_app
Soft-delete an application.
Scope: apps:write
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
Example:
"Delete app 123" "Remove the test app I created"
chat_with_app
Send a message to an application and get a response. Useful for testing.
Scope: apps:read
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
| message | string | Yes | Message to send |
| sessionId | string | No | Continue existing session |
Use this tool to test your apps after making changes. It's faster than switching to the web UI.
Example:
"Test my FAQ bot with the question 'What are your hours?'" "Send 'hello' to app 123 to check if it's working"
Configuration
Manage application settings, system prompts, and branding.
get_system_prompt
Get the system prompt for an application.
Scope: apps:read
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
update_system_prompt
Update an application's system prompt.
Scope: apps:write
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
| prompt | string | Yes | New system prompt |
Changes take effect immediately for new conversations. Use chat_with_app to test before deploying to users.
get_model
Get the AI model configuration for an application.
Scope: apps:read
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
update_model
Change the AI model for an application.
Scope: apps:write
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
| model | string | Yes | Model ID (e.g., GPT_4_1, CLAUDE_3_5_SONNET) |
get_settings
Get detailed settings including RAG configuration.
Scope: apps:read
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
update_settings
Update application settings including RAG options.
Scope: apps:write
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
| temperature | number | No | Model temperature (0-2) |
| maxTokens | number | No | Max response tokens |
| enableRag | boolean | No | Enable/disable RAG |
| topK | number | No | Number of RAG chunks to retrieve |
update_branding
Update visual branding for the application.
Scope: apps:write
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
| primaryColor | string | No | Hex color code |
| logoUrl | string | No | URL to logo image |
| chatBackgroundUrl | string | No | Background image URL |
Knowledge Sources
Manage RAG (Retrieval-Augmented Generation) knowledge bases.
list_knowledge_sources
List all knowledge sources for an application.
Scope: knowledge:read
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
| status | string | No | Filter by status (PENDING, PROCESSING, COMPLETED, FAILED) |
get_knowledge_source
Get details about a specific knowledge source.
Scope: knowledge:read
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
| sourceId | number | Yes | Knowledge source ID |
add_url_source
Add a URL as a knowledge source. Automatically detects YouTube, Instagram, TikTok, and regular web pages.
Scope: knowledge:write
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
| url | string | Yes | URL to crawl |
| crawlDepth | number | No | How many levels deep to crawl (1-3) |
| name | string | No | Custom name for the source |
Smart Detection: YouTube URLs extract transcripts, social media extracts content, regular URLs are crawled.
Example:
"Add https://docs.example.com to my FAQ app with crawl depth 2" "Add this YouTube video to my training bot's knowledge base"
add_document_source
Upload a document as a knowledge source.
Scope: knowledge:write
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
| content | string | Yes | Base64-encoded file content |
| filename | string | Yes | Original filename with extension |
| mimeType | string | No | MIME type of the file |
Supported formats: PDF, DOCX, TXT, MD, CSV, JSON, HTML, PPTX, XLSX, code files (JS, TS, PY, etc.)
delete_knowledge_source
Remove a knowledge source from an application.
Scope: knowledge:write
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
| sourceId | number | Yes | Knowledge source ID |
refresh_knowledge_source
Re-crawl or re-process a knowledge source to update its content.
Scope: knowledge:write
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
| sourceId | number | Yes | Knowledge source ID |
Analytics
Access usage data, conversations, and metrics.
get_app_analytics
Get summary analytics for an application.
Scope: analytics:read
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
| period | string | No | Time period (7d, 30d, 90d, all) |
Returns: Message count, conversation count, unique users, satisfaction scores.
search_conversations
Search conversations with filters.
Scope: analytics:read
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
| query | string | No | Search text in messages |
| startDate | string | No | ISO date string |
| endDate | string | No | ISO date string |
| limit | number | No | Max results (default 20) |
| offset | number | No | Pagination offset |
Example:
"Find conversations about refunds in my support bot" "Show recent conversations from the last week"
get_conversation
Get a specific conversation with all messages.
Scope: analytics:read
| Parameter | Type | Required | Description |
|---|---|---|---|
| conversationId | string | Yes | Conversation/session ID |
get_top_queries
Get the most common user queries.
Scope: analytics:read
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
| limit | number | No | Number of queries (default 20) |
| period | string | No | Time period |
search_messages
Search individual messages across conversations.
Scope: analytics:read
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
| query | string | Yes | Search text |
| limit | number | No | Max results |
export_conversations
Export conversations to JSON format.
Scope: analytics:read
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
| startDate | string | No | Start date filter |
| endDate | string | No | End date filter |
| format | string | No | Export format (json) |
get_tag_analytics
Get analytics for message tagging.
Scope: analytics:read
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
| period | string | No | Time period |
get_model_usage
Get model usage breakdown by model type.
Scope: analytics:read
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
| period | string | No | Time period |
get_moderation_stats
Get content moderation statistics.
Scope: analytics:read
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
get_user_memories
Get extracted user memories for an application.
Scope: analytics:read
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
| limit | number | No | Max results |
get_file_analytics
Get statistics about file uploads and usage.
Scope: analytics:read
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
get_popular_apps
Get most popular apps by usage.
Scope: analytics:read
| Parameter | Type | Required | Description |
|---|---|---|---|
| limit | number | No | Number of apps |
Tags
Manage intent tags for message classification and automated responses.
list_tags
List all tags for an application.
Scope: apps:read
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
get_tag
Get details for a specific tag including utterances.
Scope: apps:read
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
| tagId | string | Yes | Tag ID |
create_tag
Create a new intent tag.
Scope: apps:write
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
| name | string | Yes | Tag name |
| description | string | No | Tag description |
| utterances | string[] | No | Example phrases that match this tag |
| action | object | No | Action to take when tag matches |
Action types:
staticText: Replace AI response with fixed textfreeze: Stop conversation flownotification: Send webhook or email alert
Example:
"Create a tag called 'pricing' for my sales bot with utterances like 'how much does it cost'"
update_tag
Update an existing tag.
Scope: apps:write
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
| tagId | string | Yes | Tag ID |
| name | string | No | New name |
| utterances | string[] | No | New utterances |
| action | object | No | New action |
delete_tag
Delete a tag.
Scope: apps:write
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
| tagId | string | Yes | Tag ID |
list_tag_instances
List messages that matched a specific tag.
Scope: analytics:read
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
| tagId | string | Yes | Tag ID |
| limit | number | No | Max results |
remove_tag_instance
Remove a tag match from a message (false positive correction).
Scope: apps:write
| Parameter | Type | Required | Description |
|---|---|---|---|
| instanceId | string | Yes | Tag instance ID |
generate_utterances
Use AI to generate training utterances for a tag.
Scope: apps:write
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
| prompt | string | Yes | Description of the intent |
| count | number | No | Number of utterances (1-500, default 200) |
| style | string | No | conversational, formal, or mixed |
| domain | string | No | Context (e.g., "e-commerce", "healthcare") |
| existingUtterances | string[] | No | Utterances to avoid duplicating |
| tagId | string | No | Save directly to this tag |
Generate 200+ utterances for better tag matching accuracy. Specify a domain for more relevant examples.
Example:
"Generate 100 utterances for detecting pricing questions in an e-commerce context"
Evaluations
Create and run quality tests for your applications.
list_evals
List all evaluations for an application.
Scope: apps:read
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
get_eval
Get details for a specific evaluation.
Scope: apps:read
| Parameter | Type | Required | Description |
|---|---|---|---|
| evalId | string | Yes | Evaluation ID |
create_eval
Create a new evaluation from a conversation.
Scope: apps:write
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
| name | string | Yes | Evaluation name |
| chatSessionId | string | No | Create from existing conversation |
| testCases | object[] | No | Manual test cases |
Test case format:
{
"input": "What are your hours?",
"expectedOutput": "We're open 9-5 Monday through Friday",
"criteria": ["mentions hours", "includes days"]
}update_eval
Update an existing evaluation.
Scope: apps:write
| Parameter | Type | Required | Description |
|---|---|---|---|
| evalId | string | Yes | Evaluation ID |
| name | string | No | New name |
| testCases | object[] | No | Updated test cases |
delete_eval
Delete an evaluation.
Scope: apps:write
| Parameter | Type | Required | Description |
|---|---|---|---|
| evalId | string | Yes | Evaluation ID |
run_eval
Execute an evaluation and get results.
Scope: apps:write
| Parameter | Type | Required | Description |
|---|---|---|---|
| evalId | string | Yes | Evaluation ID |
| format | string | No | Output format: "json" or "terminal" |
Use format: "terminal" for beautiful ASCII-formatted results in Claude Code:
┌─────────────────────────────────────────┐
│ Evaluation Results │
├─────────────────────────────────────────┤
│ Pass Rate: ████████░░ 80% │
│ Avg Score: 0.85 │
└─────────────────────────────────────────┘
list_eval_results
List past evaluation runs.
Scope: apps:read
| Parameter | Type | Required | Description |
|---|---|---|---|
| evalId | string | Yes | Evaluation ID |
| limit | number | No | Max results |
get_eval_result
Get detailed results from a specific evaluation run.
Scope: apps:read
| Parameter | Type | Required | Description |
|---|---|---|---|
| resultId | string | Yes | Result ID |
Custom Actions
Manage API integrations for your applications.
list_custom_actions
List all custom actions for an application.
Scope: actions:read
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
get_custom_action
Get details for a specific custom action.
Scope: actions:read
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
| actionId | string | Yes | Action ID |
create_custom_action
Create a new API integration.
Scope: actions:write
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
| name | string | Yes | Action name |
| description | string | Yes | What the action does |
| method | string | Yes | HTTP method (GET, POST, etc.) |
| url | string | Yes | API endpoint URL |
| headers | object | No | Request headers |
| bodyTemplate | string | No | Request body template |
| parameters | object[] | No | Input parameters |
Custom actions have complex schemas. See the Custom Actions Guide for detailed examples.
update_custom_action
Update an existing custom action.
Scope: actions:write
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
| actionId | string | Yes | Action ID |
| (other fields) | various | No | Fields to update |
delete_custom_action
Delete a custom action.
Scope: actions:write
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
| actionId | string | Yes | Action ID |
MCP Integrations
Connect external MCP servers to your applications.
list_mcp_integrations
List all connected MCP servers for an application.
Scope: actions:read
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
get_mcp_integration
Get details about a connected MCP server.
Scope: actions:read
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
| integrationId | string | Yes | Integration ID |
connect_mcp_server
Connect an external MCP server to an application.
Scope: actions:write
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
| name | string | Yes | Display name |
| url | string | Yes | MCP server URL |
| apiKey | string | No | Authentication key |
update_mcp_integration_tools
Enable or disable specific tools from a connected MCP server.
Scope: actions:write
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
| integrationId | string | Yes | Integration ID |
| enabledTools | string[] | Yes | List of tool names to enable |
disconnect_mcp_server
Remove an MCP server connection.
Scope: actions:write
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
| integrationId | string | Yes | Integration ID |
Deployments
Manage multi-channel deployments (Slack, WhatsApp, Email, Voice).
list_slack_deployments
List Slack workspace connections.
Scope: apps:read
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
get_slack_deployment
Get details about a Slack deployment.
Scope: apps:read
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
| deploymentId | string | Yes | Deployment ID |
disconnect_slack_deployment
Remove a Slack connection.
Scope: apps:write
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
| deploymentId | string | Yes | Deployment ID |
get_whatsapp_deployment
Get WhatsApp business configuration.
Scope: apps:read
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
get_voice_config
Get voice agent configuration.
Scope: apps:read
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
update_voice_config
Update voice agent settings.
Scope: apps:write
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
| voiceId | string | No | Voice model ID |
| language | string | No | Language code |
| telephonyEnabled | boolean | No | Enable phone number |
get_email_deployment
Get email channel configuration.
Scope: apps:read
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
update_email_deployment
Update email channel settings.
Scope: apps:write
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
| enabled | boolean | No | Enable/disable email |
| fromName | string | No | Sender display name |
Workspaces
Manage workspaces, members, and billing information.
list_workspaces
List all workspaces you have access to.
Scope: workspace:read
| Parameter | Type | Required | Description |
|---|---|---|---|
| (none) |
get_workspace
Get details about a specific workspace.
Scope: workspace:read
| Parameter | Type | Required | Description |
|---|---|---|---|
| workspaceId | number | Yes | Workspace ID |
list_workspace_members
List members of a workspace.
Scope: workspace:read
| Parameter | Type | Required | Description |
|---|---|---|---|
| workspaceId | number | Yes | Workspace ID |
get_subscription
Get subscription details for an organization.
Scope: billing:read
| Parameter | Type | Required | Description |
|---|---|---|---|
| (none) |
get_credits
Get credit balance and usage.
Scope: billing:read
| Parameter | Type | Required | Description |
|---|---|---|---|
| (none) |
get_usage
Get detailed usage breakdown.
Scope: billing:read
| Parameter | Type | Required | Description |
|---|---|---|---|
| period | string | No | Time period |
Prompt Engineering
AI-assisted tools for improving prompts and selecting models.
improve_system_prompt
Use AI to improve an existing system prompt.
Scope: apps:write
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
| feedback | string | No | Specific feedback to incorporate |
| focus | string | No | Area to focus on (tone, clarity, etc.) |
These tools use Claude to analyze your app and suggest improvements.
generate_system_prompt
Generate a new system prompt from a description.
Scope: apps:write
| Parameter | Type | Required | Description |
|---|---|---|---|
| description | string | Yes | What the app should do |
| tone | string | No | Desired tone (professional, friendly, etc.) |
| constraints | string[] | No | Things the app should avoid |
list_suggestions
Get suggested improvements for an application.
Scope: apps:read
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
update_suggestions
Mark suggestions as applied or dismissed.
Scope: apps:write
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
| suggestionId | string | Yes | Suggestion ID |
| status | string | Yes | applied or dismissed |
generate_suggestions
Generate new improvement suggestions.
Scope: apps:write
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
list_available_models
List all AI models available for use.
Scope: apps:read
| Parameter | Type | Required | Description |
|---|---|---|---|
| (none) |
recommend_model
Get AI-powered model recommendations for your use case.
Scope: apps:read
| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | number | Yes | Application ID |
| priority | string | No | cost, quality, or speed |
Appendix
Permission Scopes
| Scope | Description |
|---|---|
apps:read | Read app configurations |
apps:write | Create, update, delete apps |
knowledge:read | Read knowledge sources |
knowledge:write | Manage knowledge sources |
actions:read | Read custom actions |
actions:write | Manage custom actions |
analytics:read | Read analytics data |
workspace:read | Read workspace info |
billing:read | Read billing data |
* | All permissions |
Common Error Codes
| Code | Description | Resolution |
|---|---|---|
UNAUTHORIZED | Invalid or expired token | Re-authenticate |
FORBIDDEN | Insufficient scope | Request additional scopes |
NOT_FOUND | Resource doesn't exist | Check ID is correct |
RATE_LIMITED | Too many requests | Wait and retry |
VALIDATION_ERROR | Invalid parameters | Check parameter types/values |
Next Steps
- Common Workflows - Step-by-step examples
- Rate Limits - Usage limits and best practices
- Authentication - Token management