Added documentation section on MCP use (#305)

* added documentation for repl commands and extensions

* added documentation on MCP use, added Chrome example
This commit is contained in:
yuri-alias 2025-10-22 14:46:48 +02:00 committed by GitHub
parent 4c9e453f6c
commit 3ca769c577
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 71 additions and 0 deletions

View File

@ -0,0 +1,71 @@
# MCP
CAI supports the Model Context Protocol (MCP) for integrating external tools and services with AI agents. MCP is supported via two transport mechanisms:
1. **SSE (Server-Sent Events)** - For web-based servers that push updates over HTTP connections:
```bash
CAI>/mcp load http://localhost:9876/sse burp
```
2. **STDIO (Standard Input/Output)** - For local inter-process communication:
```bash
CAI>/mcp load stdio myserver python mcp_server.py
```
Once connected, you can add the MCP tools to any agent:
```bash
CAI>/mcp add burp redteam_agent
Adding tools from MCP server 'burp' to agent 'Red Team Agent'...
Adding tools to Red Team Agent
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Tool ┃ Status ┃ Details ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
│ send_http_request │ Added │ Available as: send_http_request │
│ create_repeater_tab │ Added │ Available as: create_repeater_tab │
│ send_to_intruder │ Added │ Available as: send_to_intruder │
│ url_encode │ Added │ Available as: url_encode │
│ url_decode │ Added │ Available as: url_decode │
│ base64encode │ Added │ Available as: base64encode │
│ base64decode │ Added │ Available as: base64decode │
│ generate_random_string │ Added │ Available as: generate_random_string │
│ output_project_options │ Added │ Available as: output_project_options │
│ output_user_options │ Added │ Available as: output_user_options │
│ set_project_options │ Added │ Available as: set_project_options │
│ set_user_options │ Added │ Available as: set_user_options │
│ get_proxy_http_history │ Added │ Available as: get_proxy_http_history │
│ get_proxy_http_history_regex │ Added │ Available as: get_proxy_http_history_regex │
│ get_proxy_websocket_history │ Added │ Available as: get_proxy_websocket_history │
│ get_proxy_websocket_history_regex │ Added │ Available as: get_proxy_websocket_history_regex │
│ set_task_execution_engine_state │ Added │ Available as: set_task_execution_engine_state │
│ set_proxy_intercept_state │ Added │ Available as: set_proxy_intercept_state │
│ get_active_editor_contents │ Added │ Available as: get_active_editor_contents │
│ set_active_editor_contents │ Added │ Available as: set_active_editor_contents │
└───────────────────────────────────┴────────┴─────────────────────────────────────────────────┘
Added 20 tools from server 'burp' to agent 'Red Team Agent'.
CAI>/agent 13
CAI>Create a repeater tab
```
You can list all active MCP connections and their transport types:
```bash
CAI>/mcp list
```
https://github.com/user-attachments/assets/386a1fd3-3469-4f84-9396-2a5236febe1f
## Example: Controlling Chrome with CAI
1) Install node, following the instructions on the [official site](https://nodejs.org/en/download/current)
2) Instal Chrome (Chromium is not compatible with this functionality)
3) Run the following commands:
```
/mcp load stdio devtools npx chrome-devtools-mcp@latest
/mcp add devtools redteam_agent
/agent redteam_agent
```
Once this is done, you will have full control of Chrome using the red team agent.