Tools Reference

Complete reference for all Chipp MCP Server tools

|View as Markdown

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:

CategoryToolsDescription
Help1Search documentation
Apps6Create, read, update, delete applications
Config7System prompts, models, settings, branding
Knowledge6Add URLs, documents, manage RAG sources
Analytics14Usage data, conversations, metrics
Tags8Intent tagging and utterance generation
Evals8Quality testing and evaluation
Custom Actions5API integrations
MCP Integrations5External MCP servers
Deployments8Slack, WhatsApp, Email, Voice
Workspaces6Workspace and billing info
Prompt Engineering7AI-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)

ParameterTypeRequiredDescription
querystringYesSearch query (3-500 chars)
limitnumberNoMax results (1-10, default 5)
sectionstringNoFilter 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

ParameterTypeRequiredDescription
workspaceIdnumberNoFilter to a specific workspace
limitnumberNoMax results (1-100, default 20)
offsetnumberNoPagination offset
includeDeletedbooleanNoInclude 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

ParameterTypeRequiredDescription
appIdnumberYesApplication 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

ParameterTypeRequiredDescription
namestringYesApp name (1-100 chars)
workspaceIdnumberYesWorkspace to create in
descriptionstringNoApp description (max 2000 chars)
systemPromptstringNoInitial system prompt (max 10000 chars)
modelstringNoModel 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

ParameterTypeRequiredDescription
appIdnumberYesApplication ID
namestringNoNew name
descriptionstringNoNew description
systemPromptstringNoNew system prompt
modelstringNoNew model ID
startingMessagestringNoInitial 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

ParameterTypeRequiredDescription
appIdnumberYesApplication 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

ParameterTypeRequiredDescription
appIdnumberYesApplication ID
messagestringYesMessage to send
sessionIdstringNoContinue 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

ParameterTypeRequiredDescription
appIdnumberYesApplication ID

update_system_prompt

Update an application's system prompt.

Scope: apps:write

ParameterTypeRequiredDescription
appIdnumberYesApplication ID
promptstringYesNew 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

ParameterTypeRequiredDescription
appIdnumberYesApplication ID

update_model

Change the AI model for an application.

Scope: apps:write

ParameterTypeRequiredDescription
appIdnumberYesApplication ID
modelstringYesModel ID (e.g., GPT_4_1, CLAUDE_3_5_SONNET)

get_settings

Get detailed settings including RAG configuration.

Scope: apps:read

ParameterTypeRequiredDescription
appIdnumberYesApplication ID

update_settings

Update application settings including RAG options.

Scope: apps:write

ParameterTypeRequiredDescription
appIdnumberYesApplication ID
temperaturenumberNoModel temperature (0-2)
maxTokensnumberNoMax response tokens
enableRagbooleanNoEnable/disable RAG
topKnumberNoNumber of RAG chunks to retrieve

update_branding

Update visual branding for the application.

Scope: apps:write

ParameterTypeRequiredDescription
appIdnumberYesApplication ID
primaryColorstringNoHex color code
logoUrlstringNoURL to logo image
chatBackgroundUrlstringNoBackground image URL

Knowledge Sources

Manage RAG (Retrieval-Augmented Generation) knowledge bases.

list_knowledge_sources

List all knowledge sources for an application.

Scope: knowledge:read

ParameterTypeRequiredDescription
appIdnumberYesApplication ID
statusstringNoFilter by status (PENDING, PROCESSING, COMPLETED, FAILED)

get_knowledge_source

Get details about a specific knowledge source.

Scope: knowledge:read

ParameterTypeRequiredDescription
appIdnumberYesApplication ID
sourceIdnumberYesKnowledge source ID

add_url_source

Add a URL as a knowledge source. Automatically detects YouTube, Instagram, TikTok, and regular web pages.

Scope: knowledge:write

ParameterTypeRequiredDescription
appIdnumberYesApplication ID
urlstringYesURL to crawl
crawlDepthnumberNoHow many levels deep to crawl (1-3)
namestringNoCustom 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

ParameterTypeRequiredDescription
appIdnumberYesApplication ID
contentstringYesBase64-encoded file content
filenamestringYesOriginal filename with extension
mimeTypestringNoMIME 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

ParameterTypeRequiredDescription
appIdnumberYesApplication ID
sourceIdnumberYesKnowledge source ID

refresh_knowledge_source

Re-crawl or re-process a knowledge source to update its content.

Scope: knowledge:write

ParameterTypeRequiredDescription
appIdnumberYesApplication ID
sourceIdnumberYesKnowledge source ID

Analytics

Access usage data, conversations, and metrics.

get_app_analytics

Get summary analytics for an application.

Scope: analytics:read

ParameterTypeRequiredDescription
appIdnumberYesApplication ID
periodstringNoTime period (7d, 30d, 90d, all)

Returns: Message count, conversation count, unique users, satisfaction scores.


search_conversations

Search conversations with filters.

Scope: analytics:read

ParameterTypeRequiredDescription
appIdnumberYesApplication ID
querystringNoSearch text in messages
startDatestringNoISO date string
endDatestringNoISO date string
limitnumberNoMax results (default 20)
offsetnumberNoPagination 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

ParameterTypeRequiredDescription
conversationIdstringYesConversation/session ID

get_top_queries

Get the most common user queries.

Scope: analytics:read

ParameterTypeRequiredDescription
appIdnumberYesApplication ID
limitnumberNoNumber of queries (default 20)
periodstringNoTime period

search_messages

Search individual messages across conversations.

Scope: analytics:read

ParameterTypeRequiredDescription
appIdnumberYesApplication ID
querystringYesSearch text
limitnumberNoMax results

export_conversations

Export conversations to JSON format.

Scope: analytics:read

ParameterTypeRequiredDescription
appIdnumberYesApplication ID
startDatestringNoStart date filter
endDatestringNoEnd date filter
formatstringNoExport format (json)

get_tag_analytics

Get analytics for message tagging.

Scope: analytics:read

ParameterTypeRequiredDescription
appIdnumberYesApplication ID
periodstringNoTime period

get_model_usage

Get model usage breakdown by model type.

Scope: analytics:read

ParameterTypeRequiredDescription
appIdnumberYesApplication ID
periodstringNoTime period

get_moderation_stats

Get content moderation statistics.

Scope: analytics:read

ParameterTypeRequiredDescription
appIdnumberYesApplication ID

get_user_memories

Get extracted user memories for an application.

Scope: analytics:read

ParameterTypeRequiredDescription
appIdnumberYesApplication ID
limitnumberNoMax results

get_file_analytics

Get statistics about file uploads and usage.

Scope: analytics:read

ParameterTypeRequiredDescription
appIdnumberYesApplication ID

Get most popular apps by usage.

Scope: analytics:read

ParameterTypeRequiredDescription
limitnumberNoNumber of apps

Tags

Manage intent tags for message classification and automated responses.

list_tags

List all tags for an application.

Scope: apps:read

ParameterTypeRequiredDescription
appIdnumberYesApplication ID

get_tag

Get details for a specific tag including utterances.

Scope: apps:read

ParameterTypeRequiredDescription
appIdnumberYesApplication ID
tagIdstringYesTag ID

create_tag

Create a new intent tag.

Scope: apps:write

ParameterTypeRequiredDescription
appIdnumberYesApplication ID
namestringYesTag name
descriptionstringNoTag description
utterancesstring[]NoExample phrases that match this tag
actionobjectNoAction to take when tag matches

Action types:

  • staticText: Replace AI response with fixed text
  • freeze: Stop conversation flow
  • notification: 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

ParameterTypeRequiredDescription
appIdnumberYesApplication ID
tagIdstringYesTag ID
namestringNoNew name
utterancesstring[]NoNew utterances
actionobjectNoNew action

delete_tag

Delete a tag.

Scope: apps:write

ParameterTypeRequiredDescription
appIdnumberYesApplication ID
tagIdstringYesTag ID

list_tag_instances

List messages that matched a specific tag.

Scope: analytics:read

ParameterTypeRequiredDescription
appIdnumberYesApplication ID
tagIdstringYesTag ID
limitnumberNoMax results

remove_tag_instance

Remove a tag match from a message (false positive correction).

Scope: apps:write

ParameterTypeRequiredDescription
instanceIdstringYesTag instance ID

generate_utterances

Use AI to generate training utterances for a tag.

Scope: apps:write

ParameterTypeRequiredDescription
appIdnumberYesApplication ID
promptstringYesDescription of the intent
countnumberNoNumber of utterances (1-500, default 200)
stylestringNoconversational, formal, or mixed
domainstringNoContext (e.g., "e-commerce", "healthcare")
existingUtterancesstring[]NoUtterances to avoid duplicating
tagIdstringNoSave 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

ParameterTypeRequiredDescription
appIdnumberYesApplication ID

get_eval

Get details for a specific evaluation.

Scope: apps:read

ParameterTypeRequiredDescription
evalIdstringYesEvaluation ID

create_eval

Create a new evaluation from a conversation.

Scope: apps:write

ParameterTypeRequiredDescription
appIdnumberYesApplication ID
namestringYesEvaluation name
chatSessionIdstringNoCreate from existing conversation
testCasesobject[]NoManual 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

ParameterTypeRequiredDescription
evalIdstringYesEvaluation ID
namestringNoNew name
testCasesobject[]NoUpdated test cases

delete_eval

Delete an evaluation.

Scope: apps:write

ParameterTypeRequiredDescription
evalIdstringYesEvaluation ID

run_eval

Execute an evaluation and get results.

Scope: apps:write

ParameterTypeRequiredDescription
evalIdstringYesEvaluation ID
formatstringNoOutput 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

ParameterTypeRequiredDescription
evalIdstringYesEvaluation ID
limitnumberNoMax results

get_eval_result

Get detailed results from a specific evaluation run.

Scope: apps:read

ParameterTypeRequiredDescription
resultIdstringYesResult ID

Custom Actions

Manage API integrations for your applications.

list_custom_actions

List all custom actions for an application.

Scope: actions:read

ParameterTypeRequiredDescription
appIdnumberYesApplication ID

get_custom_action

Get details for a specific custom action.

Scope: actions:read

ParameterTypeRequiredDescription
appIdnumberYesApplication ID
actionIdstringYesAction ID

create_custom_action

Create a new API integration.

Scope: actions:write

ParameterTypeRequiredDescription
appIdnumberYesApplication ID
namestringYesAction name
descriptionstringYesWhat the action does
methodstringYesHTTP method (GET, POST, etc.)
urlstringYesAPI endpoint URL
headersobjectNoRequest headers
bodyTemplatestringNoRequest body template
parametersobject[]NoInput 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

ParameterTypeRequiredDescription
appIdnumberYesApplication ID
actionIdstringYesAction ID
(other fields)variousNoFields to update

delete_custom_action

Delete a custom action.

Scope: actions:write

ParameterTypeRequiredDescription
appIdnumberYesApplication ID
actionIdstringYesAction ID

MCP Integrations

Connect external MCP servers to your applications.

list_mcp_integrations

List all connected MCP servers for an application.

Scope: actions:read

ParameterTypeRequiredDescription
appIdnumberYesApplication ID

get_mcp_integration

Get details about a connected MCP server.

Scope: actions:read

ParameterTypeRequiredDescription
appIdnumberYesApplication ID
integrationIdstringYesIntegration ID

connect_mcp_server

Connect an external MCP server to an application.

Scope: actions:write

ParameterTypeRequiredDescription
appIdnumberYesApplication ID
namestringYesDisplay name
urlstringYesMCP server URL
apiKeystringNoAuthentication key

update_mcp_integration_tools

Enable or disable specific tools from a connected MCP server.

Scope: actions:write

ParameterTypeRequiredDescription
appIdnumberYesApplication ID
integrationIdstringYesIntegration ID
enabledToolsstring[]YesList of tool names to enable

disconnect_mcp_server

Remove an MCP server connection.

Scope: actions:write

ParameterTypeRequiredDescription
appIdnumberYesApplication ID
integrationIdstringYesIntegration ID

Deployments

Manage multi-channel deployments (Slack, WhatsApp, Email, Voice).

list_slack_deployments

List Slack workspace connections.

Scope: apps:read

ParameterTypeRequiredDescription
appIdnumberYesApplication ID

get_slack_deployment

Get details about a Slack deployment.

Scope: apps:read

ParameterTypeRequiredDescription
appIdnumberYesApplication ID
deploymentIdstringYesDeployment ID

disconnect_slack_deployment

Remove a Slack connection.

Scope: apps:write

ParameterTypeRequiredDescription
appIdnumberYesApplication ID
deploymentIdstringYesDeployment ID

get_whatsapp_deployment

Get WhatsApp business configuration.

Scope: apps:read

ParameterTypeRequiredDescription
appIdnumberYesApplication ID

get_voice_config

Get voice agent configuration.

Scope: apps:read

ParameterTypeRequiredDescription
appIdnumberYesApplication ID

update_voice_config

Update voice agent settings.

Scope: apps:write

ParameterTypeRequiredDescription
appIdnumberYesApplication ID
voiceIdstringNoVoice model ID
languagestringNoLanguage code
telephonyEnabledbooleanNoEnable phone number

get_email_deployment

Get email channel configuration.

Scope: apps:read

ParameterTypeRequiredDescription
appIdnumberYesApplication ID

update_email_deployment

Update email channel settings.

Scope: apps:write

ParameterTypeRequiredDescription
appIdnumberYesApplication ID
enabledbooleanNoEnable/disable email
fromNamestringNoSender display name

Workspaces

Manage workspaces, members, and billing information.

list_workspaces

List all workspaces you have access to.

Scope: workspace:read

ParameterTypeRequiredDescription
(none)

get_workspace

Get details about a specific workspace.

Scope: workspace:read

ParameterTypeRequiredDescription
workspaceIdnumberYesWorkspace ID

list_workspace_members

List members of a workspace.

Scope: workspace:read

ParameterTypeRequiredDescription
workspaceIdnumberYesWorkspace ID

get_subscription

Get subscription details for an organization.

Scope: billing:read

ParameterTypeRequiredDescription
(none)

get_credits

Get credit balance and usage.

Scope: billing:read

ParameterTypeRequiredDescription
(none)

get_usage

Get detailed usage breakdown.

Scope: billing:read

ParameterTypeRequiredDescription
periodstringNoTime 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

ParameterTypeRequiredDescription
appIdnumberYesApplication ID
feedbackstringNoSpecific feedback to incorporate
focusstringNoArea 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

ParameterTypeRequiredDescription
descriptionstringYesWhat the app should do
tonestringNoDesired tone (professional, friendly, etc.)
constraintsstring[]NoThings the app should avoid

list_suggestions

Get suggested improvements for an application.

Scope: apps:read

ParameterTypeRequiredDescription
appIdnumberYesApplication ID

update_suggestions

Mark suggestions as applied or dismissed.

Scope: apps:write

ParameterTypeRequiredDescription
appIdnumberYesApplication ID
suggestionIdstringYesSuggestion ID
statusstringYesapplied or dismissed

generate_suggestions

Generate new improvement suggestions.

Scope: apps:write

ParameterTypeRequiredDescription
appIdnumberYesApplication ID

list_available_models

List all AI models available for use.

Scope: apps:read

ParameterTypeRequiredDescription
(none)

recommend_model

Get AI-powered model recommendations for your use case.

Scope: apps:read

ParameterTypeRequiredDescription
appIdnumberYesApplication ID
prioritystringNocost, quality, or speed

Appendix

Permission Scopes

ScopeDescription
apps:readRead app configurations
apps:writeCreate, update, delete apps
knowledge:readRead knowledge sources
knowledge:writeManage knowledge sources
actions:readRead custom actions
actions:writeManage custom actions
analytics:readRead analytics data
workspace:readRead workspace info
billing:readRead billing data
*All permissions

Common Error Codes

CodeDescriptionResolution
UNAUTHORIZEDInvalid or expired tokenRe-authenticate
FORBIDDENInsufficient scopeRequest additional scopes
NOT_FOUNDResource doesn't existCheck ID is correct
RATE_LIMITEDToo many requestsWait and retry
VALIDATION_ERRORInvalid parametersCheck parameter types/values

Next Steps