Skip to main content
Rasa MCP Tools are included in Rasa Pro 3.16 and later. v3.16

Cheat Sheet

CLI Commands

Documentation tools

search_rasa_documentation

Search the official Rasa documentation for authoritative information. Returns relevant documentation about Rasa concepts, APIs, best practices, configuration, and troubleshooting with links to official docs. Returns: Matching documentation snippets with source links. Sample prompts:

Project introspection tools

list_project_flow_definitions

List all flow definitions in the project. Returns flow ID, name, and file path for each flow. Returns: List of flows with id, name, and file_path. Sample prompt:

list_project_slot_definitions

List all slot definitions from the project domain file(s). Returns slot name, type, and file path. Returns: List of slots with name, type, and file_path. Sample prompt:

list_project_response_definitions

List all response (utterance) definitions from the project domain file(s). Returns response name and file path. Returns: List of responses with name and file_path. Sample prompt:

get_flow

Get a single flow by flow ID (YAML key) or flow name. Returns flow metadata and full definition including steps, triggers, and branching logic. Returns: Full flow definition with metadata. Sample prompt:

get_slot

Get a single slot by name. Returns slot metadata and full definition from the domain. Returns: Full slot definition with type, mappings, and metadata. Sample prompt:

get_response

Get a single response (utterance) by name. Returns response metadata and full definition including text, images, buttons, and custom payloads. Returns: Full response definition with all variations. Sample prompt:

list_project_custom_actions_in_domain

List all custom actions declared in the domain file(s). Returns action name and file path where the action is registered. Returns: List of custom action names with name and file_path. This lists domain declarations, not Python implementations. Sample prompt:

list_custom_action_implementations

List all custom action Python implementations in the project. Returns action name, class name, and file path for each action. Returns: List of action implementations with action_name, class_name, and file_path. Notes:
  • If error is set: the actions folder was not found. Check endpoints.yml or specify the folder.
  • If count=0 and no error: the actions folder exists but contains no action classes.
Sample prompt:

list_default_action_names

List all built-in default action names provided by Rasa. These actions are available without configuration and can be overridden. Parameters: None. Returns: List of default action name strings. Sample prompt:

Schema tools

get_flow_schema

Get the official Rasa flow schema in JSON Schema format. Use this to validate flow YAML or generate new flows. Returns: JSON Schema document describing flow structure: name, description, step types, branching logic (if/then/else), collect steps, flow guards, and more. Sample prompt:

get_domain_schema

Get the official Rasa domain schema in YAML schema format. Use this to validate domain YAML or generate domain files. Returns: YAML schema document describing domain structure: slots, custom actions, responses, and more. Sample prompt:

get_e2e_schema

Get the official Rasa E2E test schema in YAML schema format. Use this to validate or generate end-to-end test files. Parameters: None. Returns: YAML schema document describing E2E test structure: test cases, steps (user and bot messages), fixtures, metadata, stub custom actions, and assertions. Sample prompt:

Build and validation tools

validate_project

Validate the assistant project configuration and training data. Runs comprehensive checks on domain, flows, config, and training data. Parameters: None (reads from the configured project folder). Returns: Pass/fail status with a list of errors and warnings. Notes:
  • Can take 60+ seconds for large projects.
  • Always run this after making changes and before training.
Sample prompts:

train_rasa_assistant

Train the Rasa assistant with the current project configuration. Creates a new model in the models/ directory. Parameters: None (reads from the configured project folder). Returns: Training status (success/failure), model path, and any errors. Notes:
  • Can take several minutes for large projects.
  • Only call this after validation passes.
  • Each training run produces a new timestamped model file.
Sample prompts:

Runtime testing and debugging tools

talk_to_assistant

Test the assistant by sending a sequence of messages and verifying responses. Creates a new conversation for each call. Returns: Structured response with:
  • Conversation history (user messages and assistant responses)
  • Tracker context showing conversation state, active flows, and slot values
Prerequisites: The Rasa assistant must be running (rasa run or rasa run --inspect). Sample prompts:

get_assistant_logs

Get recent log entries from the Rasa assistant for troubleshooting. Parameters: None. Returns: Recent log entries as text. Sample prompts:

Simulation and evaluation tools

v3.17

validate_scenario

Validate a scenario YAML file before running any simulation. Checks syntax and structure, assertion type validity, and that all slot names referenced in initial_slots, slot_was_set, and slot_was_not_set assertions exist in the domain with compatible types. All errors are reported together in a single response. Returns: Pass/fail status with a list of all validation errors. Sample prompts:

evaluate_agent

Run a simulation and evaluation loop for a given scenario. Loads eval/conftest.yml, simulates a multi-turn conversation with an LLM-based user against the running Rasa server, evaluates deterministic assertions against the tracker event history, and scores quality criteria and metrics with an LLM judge. Writes per-run result files and updates the experiment summary. Returns: Pass/fail verdict, runs passed/total count, and the path to the updated summary.txt. Prerequisites: The Rasa assistant must be running (rasa run --inspect recommended so that simulated conversations are viewable in the Inspector). Notes:
  • A run is marked failed if any deterministic assertion fails or any quality criterion fails.
  • Quality metrics (task_completion and aggregated bot_qualityhelpfulness, repair_quality, coherence, tone) are informational and do not gate the pass/fail verdict.
  • On timeout, completed run_N.txt files are preserved but summary.txt is not updated.
Sample prompts:

Typical workflow

A common sequence for building a feature end-to-end:
  1. Discoverlist_project_flow_definitions, list_project_slot_definitions, list_project_response_definitions
  2. Understand schemasget_flow_schema, get_domain_schema, get_e2e_schema
  3. Implement — write flows, domain entries, and custom actions
  4. Validatevalidate_project
  5. Traintrain_rasa_assistant
  6. Testtalk_to_assistant
  7. Debugget_assistant_logs if behavior is unexpected
  8. Evaluatevalidate_scenario, evaluate_agent to run LLM-simulated conversations and score them against your goals