> For the complete documentation index, see [llms.txt](https://docs.mozark.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.mozark.ai/mcp/mozark-mcp-docs/reference/tools-by-category.md).

# Tools by category

Browse Mozark MCP tools by capability.

The Mozark MCP server exposes 137 tools. You never call them directly — your assistant chooses them based on what you ask — but knowing what exists helps you ask for the right thing.

{% hint style="info" %}
Many clients load tools lazily. If a tool seems missing, ask the assistant to search for it by name (for example *"load the Mozark optics tools"*).
{% endhint %}

## Context & identity

| Tool                          | Description                                                                                         |
| ----------------------------- | --------------------------------------------------------------------------------------------------- |
| `mozark_get_active_context`   | Show the active organisation / project / app and where it came from.                                |
| `mozark_set_active_context`   | Set organisation, project and app for the session.                                                  |
| `mozark_switch_organization`  | Change organisation (clears project & app).                                                         |
| `mozark_switch_project`       | Change project within the organisation.                                                             |
| `mozark_switch_app`           | Change app within the organisation/project.                                                         |
| `mozark_clear_active_context` | Reset to no context.                                                                                |
| `acp_whoami`                  | Your profile with default org, project and app IDs.                                                 |
| `whoami`                      | The identity the MCP server is authenticated as.                                                    |
| `get_workflow_rules`          | The mandatory procedure for a workflow (context, generation, optics, appium, testplan, duplicates). |
| `get_skill_instructions`      | Mozark's test-generation rules and format for a given test type.                                    |

**Example prompts:** *"Which project am I in?"* · *"Switch to the iOS app."*

## Admin Control Panel (ACP)

| Tool                                         | Description                                                                    |
| -------------------------------------------- | ------------------------------------------------------------------------------ |
| `acp_list_organizations`                     | Organisations you can see.                                                     |
| `acp_list_projects` / `acp_list_my_projects` | Projects in an org (optionally filtered by app) / projects you have access to. |
| `acp_list_apps`                              | Apps in an organisation.                                                       |
| `acp_list_users` / `acp_list_project_users`  | Users in an org / in a project.                                                |
| `acp_list_memberships` / `acp_list_roles`    | Memberships and role definitions.                                              |
| `acp_get_entitlements`                       | Plan and entitlements for an organisation.                                     |
| `acp_get_usage_report`                       | Usage versus plan.                                                             |

**Example prompts:** *"How much of our device-hours quota have we used this month?"* · *"Who has access to the Checkout project?"*

## Test case management (TCM)

### Test cases

`tcm_create_test_case` · `tcm_get_test_case` · `tcm_list_test_cases` · `tcm_update_test_case` · `tcm_patch_test_case` · `tcm_delete_test_case` · `tcm_bulk_delete_test_cases`

### Folders

`tcm_create_folder` · `tcm_list_folders` · `tcm_get_folder` · `tcm_add_test_cases_to_folder` · `tcm_remove_test_cases_from_folder`

### Requirements

`tcm_create_requirement` · `tcm_list_requirements` · `tcm_get_requirement` · `tcm_update_requirement` · `tcm_patch_requirement` · `tcm_delete_requirement`

### Test plans

`tcm_create_test_plan` · `tcm_list_test_plans` · `tcm_get_test_plan` · `tcm_update_test_plan` · `tcm_add_test_cases_to_plan` · `tcm_remove_test_cases_from_plan` · `tcm_delete_test_plan` · `tcm_bulk_delete_test_plans`

### Test runs

`tcm_create_test_run` · `tcm_list_test_runs` · `tcm_get_test_run` · `tcm_update_test_run` · `tcm_patch_test_run` · `tcm_add_test_cases_to_run` · `tcm_test_run_start_testcase` · `tcm_test_run_set_step_status` · `tcm_test_run_add_evidence` · `tcm_test_run_finish_testcase` · `tcm_test_run_lock` · `tcm_test_run_unlock` · `tcm_delete_test_run` · `tcm_bulk_delete_test_runs`

### Bugs

`tcm_create_bug` · `tcm_list_bugs` · `tcm_get_bug` · `tcm_update_bug` · `tcm_patch_bug` · `tcm_delete_bug` · `tcm_bulk_delete_bugs`

### Own-Cloud devices

`tcm_create_custom_device` · `tcm_list_custom_devices` · `tcm_execute_testcase_owncloud`

**Example prompts:** *"List open bugs assigned to me."* · *"Lock TR-5 so nobody edits it."*

## AI agents

| Tool                        | Description                                                         |
| --------------------------- | ------------------------------------------------------------------- |
| `generate_test_cases`       | Author Agent — generate cases for a feature (type + polarity).      |
| `save_test_cases`           | Save generated cases to TCM with AI-provenance tags and embed them. |
| `search_test_cases`         | Semantic search over existing test cases.                           |
| `embed_test_cases`          | Batch-index existing cases for semantic search.                     |
| `suggest_test_plan`         | Planner Agent — propose cases for a sprint or release.              |
| `find_duplicate_test_cases` | Detect near-duplicate test cases.                                   |

**Example prompts:** *"Generate edge-case tests for offline mode."* · *"Which existing cases cover guest checkout?"*

## Knowledge base

| Tool                                            | Description                             |
| ----------------------------------------------- | --------------------------------------- |
| `get_image_upload_url`                          | Signed URL to upload a screenshot.      |
| `process_uploaded_image` / `upload_app_screens` | Analyse and index a screenshot.         |
| `upload_document`                               | Index a PRD, BRD or user story.         |
| `retrieve_from_knowledge_base`                  | Search screens, elements and documents. |
| `list_available_screens` / `list_images`        | What's indexed.                         |
| `load_pom` / `update_pom` / `list_pom_results`  | Page Object Models per screen.          |

## Optics (real-device test execution)

| Tool                                               | Description                                            |
| -------------------------------------------------- | ------------------------------------------------------ |
| `optics_start_session` / `optics_stop_session`     | Start or end a session on a device.                    |
| `optics_launch_app`                                | Relaunch the app under test.                           |
| `optics_get_keywords` / `optics_get_keyword_guide` | The automation keyword vocabulary and its usage guide. |
| `optics_get_page_source` / `optics_get_elements`   | Inspect what's on screen.                              |
| `optics_execute_keyword`                           | Run one step; returns a screenshot.                    |
| `optics_add_step_evidence`                         | Attach a screenshot to a test-run step.                |
| `optics_export_yaml`                               | Export the executed steps as a reusable Optics script. |

## Appium (device automation)

See the full list in [Automate devices with Appium](/mcp/mozark-mcp-docs/guides/automate-devices-with-appium.md).

### Session

`appium_list_devices` · `appium_list_free_devices` · `appium_start_session` · `appium_get_session` · `appium_stop_session` · `appium_health_check` · `appium_hub_status`

### Apps

`appium_get_app_upload_command` · `appium_upload_app` · `appium_install_app` · `appium_activate_app` · `appium_terminate_app`

### Interaction

`appium_find_element` · `appium_find_elements` · `appium_click_element` · `appium_set_element_value` · `appium_clear_element` · `appium_get_element_text` · `appium_get_page_source` · `appium_execute_script` · `appium_navigate_*` · `appium_refresh` · `appium_get_url` · `appium_*_orientation` · `appium_*_context(s)` · `appium_*_settings` · `appium_apple_cdp_execute`

### Evidence

`appium_take_screenshot` · `appium_add_step_evidence` · `appium_list_screenshots` · `appium_list_assets` · `appium_list_outputs` · `appium_get_logs` · `appium_get_log_types`

## Deprecated

| Tool                         | Status                                                                          |
| ---------------------------- | ------------------------------------------------------------------------------- |
| `delete_duplicate_test_case` | Deprecated — use `find_duplicate_test_cases` then `tcm_bulk_delete_test_cases`. |


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.mozark.ai/mcp/mozark-mcp-docs/reference/tools-by-category.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
