Open capabilities overview
Tool | Name | Description | Support Notes |
| Creates a new AgentBay sandbox and returns its ID. | Supported | |
| Gets the Wuying MCP runtime URL. This URL provides access to the runtime. Each URL is valid for a single use and expires immediately. | Supported | |
| Captures a full-screen screenshot of the current screen and returns a shareable URL. The screenshot is automatically processed and securely stored. For security, the generated URL expires after 64 minutes. | Supported | |
| Releases resources after the task is complete. | Supported | |
| Executes a shell command on the Linux platform with a configurable timeout. After execution, it returns the command's output or an error message. | Supported | |
| Closes the page. | Supported | |
| Resizes the browser window. | Supported | |
| Returns all console messages. | Supported | |
| Handles a dialog box. | Supported | |
| Uploads one or more files. | Supported | |
| Installs the browser specified in the configuration. Call this tool if you receive an error that the browser is not installed. | Supported | |
| Presses a key on the keyboard. | Supported | |
| Navigates to a URL. | Supported | |
| Goes back to the previous page. | Supported | |
| Goes forward to the next page. | Supported | |
| Returns all network requests since the page was loaded. | Supported | |
| Saves the page as a PDF. | Supported | |
| Takes a screenshot of the current page. Operations cannot be performed based on the screenshot. To perform operations, use | Supported | |
| Captures an accessibility snapshot of the current page. | Supported | |
| Performs a click operation on the web page. | Supported | |
| Performs a drag-and-drop operation between two elements. | Supported | |
| Hovers the mouse over a page element. | Supported | |
| Enters text into an editable element. | Supported | |
| Selects an option in a drop-down menu. | Supported | |
| Lists the browser tabs. | Supported | |
| Opens a new tab. | Supported | |
| Selects a tab by its index. | Supported | |
| Closes a tab. | Supported | |
| Generates a Playwright test for a specified scenario. | Supported | |
| Waits for text to appear or disappear, or for a specified time to pass. | Supported | |
| Executes a shell command and returns the output or an error. | Supported | |
| Creates a new directory or ensures a directory exists. Multiple nested directories can be created in one operation. If the directory already exists, this operation succeeds silently. This is ideal for setting up directory structures for projects or ensuring required paths exist. This tool only works in allowed directories. | Supported | |
| Performs line-based edits on a text file. Each edit replaces an exact sequence of lines with new content. It returns a git-style diff to show the changes. This tool only works in allowed directories. | Support | |
| Retrieves detailed metadata for a file or directory. It returns comprehensive information, including size, creation time, last modified time, permissions, and type. This tool is ideal for understanding file characteristics without reading the content. This tool only works in allowed directories. | Supported | |
| Reads the content of a file from the file system. Specify an optional | Supported | |
| Reads the content of multiple files at the same time. This is more efficient than reading files one by one for analysis or comparison. The content of each file is returned with its path as a reference. A failure to read a single file does not stop the entire operation. This tool only works in allowed directories. | Supported | |
| Gets a detailed list of all files and directories in a specified path. The results clearly distinguish between files and directories with [FILE] and [DIR] prefixes. This tool is useful for understanding directory structures and finding specific files. This tool only works in allowed directories. | Supported | |
| Moves or renames files and directories. A file can be moved to a different directory and renamed in one operation. If the destination already exists, the operation fails. The tool works between different directories and can be used for simple renames within the same directory. Both the source and destination must be in allowed directories. | Supported | |
| Recursively searches for files and directories that match a pattern. It searches all subdirectories from a starting path. The search is case-sensitive and matches partial names. It returns the full paths of all matching items. This is ideal for finding files when you do not know their exact location. This tool only searches in allowed directories. | Supported | |
| Creates a new file or writes to an existing file. Choose to either completely overwrite the file or append to its end by specifying the | Supported | |
| Executes one or more operations on the current web page and blocks until all operations are complete. This method immediately executes the provided operations through the current agent and returns the final result after the entire sequence is complete. It can handle single interactions along with a series of continuous operations. | Supported | |
| Captures a screenshot of the current web page. This tool provides flexible screenshot features, including full-page screenshots, cropping to a specified area, and image quality settings. The result is returned as a data URL (such as | Supported | |
| Closes the current browser proxy session. This terminates the browser process managed by the proxy and releases related resources. | Supported | |
| Identifies and locates interactive user interface elements. This tool helps you discover and describe elements that can be interacted with (such as buttons or input boxes) for use in subsequent operations. To find operable elements, use the To extract structured data or text content, use the | Supported | |
| Asynchronously extracts information from a web page based on the provided instructions. It returns a structured result in the specified schema format. | Supported | |
| Asynchronously starts one or more operations on the current web page and returns a Unlike | Supported | |
| Gets the current progress or final result of an asynchronous operation task. Use this method with the | Supported | |
| An asynchronous function that gets the result of an extract task. | Supported | |
| Navigates to the specified URL in the browser. | Supported |
System
Name | Description | Parameters |
| Creates a new AgentBay sandbox and returns its ID. | |
| Gets the Wuying MCP runtime URL. This URL provides access to the runtime. Each URL is valid for a single use and expires immediately. | |
| Captures a full-screen screenshot of the current screen and returns a shareable URL. The screenshot is automatically processed and securely stored. For security, the generated URL expires after 64 minutes. | |
| Releases resources after the task is complete. | |
| Executes a shell command on the Linux platform with a configurable timeout. After execution, it returns the command's output or an error message. | |
Playwright
Name | Description | Parameters |
| Closes the page | |
| Resizes the browser window | |
| Returns all console messages | |
| Handles a dialog box | |
| Uploads one or more files | |
| Installs the browser specified in the configuration. Call this tool if you receive an error that the browser is not installed. | |
| Presses a key on the keyboard | |
| Navigates to a URL | |
| Goes back to the previous page | |
| Goes forward to the next page | |
| Returns all network requests since the page was loaded | |
| Saves the page as a PDF | |
| Takes a screenshot of the current page. Operations cannot be performed based on the screenshot. Use browser_snapshot for operations. | |
| Captures an accessibility snapshot of the current page. | |
| Performs a click operation on the web page | |
| Performs a drag-and-drop operation between two elements | |
| Hovers the mouse over a page element | |
| Enters text into an editable element | |
| Selects an option in a drop-down menu | |
| Lists the browser tabs | |
| Opens a new tab | |
| Selects a tab by its index | |
| Closes a tab | |
| Generates a Playwright test for a specified scenario | |
| Waits for text to appear or disappear, or for a specified time to pass | |
Shell
Name | Description | Parameters |
| Executes a shell command and returns the output or an error. | |
File system
Name | Description | Parameters |
| Creates a new directory or ensures a directory exists. Multiple nested directories can be created in one operation. If the directory already exists, this operation succeeds silently. This is ideal for setting up directory structures for projects or ensuring required paths exist. This tool only works in allowed directories. | |
| Performs line-based edits on a text file. Each edit replaces an exact sequence of lines with new content. It returns a git-style diff to show the changes. This tool only works in allowed directories. | |
| Retrieves detailed metadata for a file or directory. It returns comprehensive information, including size, creation time, last modified time, permissions, and type. This tool is ideal for understanding file characteristics without reading the content. This tool only works in allowed directories. | |
| Reads the content of a file from the file system. You can specify an optional 'offset' (in bytes) to start reading from a specific position, and an optional 'length' (in bytes) to limit how many bytes to read. If 'length' is omitted or 0, the file will be read to the end. Handles various text encodings and provides detailed error messages if the file cannot be read. Only works within allowed directories. | |
| Reads the content of multiple files at the same time. This is more efficient than reading files one by one for analysis or comparison. The content of each file is returned with its path as a reference. A failure to read a single file does not stop the entire operation. This tool only works in allowed directories. | |
| Gets a detailed list of all files and directories in a specified path. The results clearly distinguish between files and directories with [FILE] and [DIR] prefixes. This tool is useful for understanding directory structures and finding specific files. This tool only works in allowed directories. | |
| Moves or renames files and directories. A file can be moved to a different directory and renamed in one operation. If the destination already exists, the operation fails. The tool works between different directories and can be used for simple renames within the same directory. Both the source and destination must be in allowed directories. | |
| Recursively searches for files and directories that match a pattern. It searches all subdirectories from a starting path. The search is case-sensitive and matches partial names. It returns the full paths of all matching items. This is ideal for finding files when you do not know their exact location. This tool only searches in allowed directories. | |
| Creates a new file or writes to an existing file. Choose to either completely overwrite the file or append to its end by specifying the | |
PageUseAgent
Name | Description | Parameters |
| Executes one or more operations on the current web page and blocks until all operations are complete. This method immediately executes the provided operations through the current agent and returns the final result after the entire sequence is complete. It can handle single interactions along with a series of continuous operations. | |
| Captures a screenshot of the current web page. This tool provides flexible screenshot features, including full-page screenshots, cropping to a specified area, and image quality settings. The result is returned as a data URL (such as | |
| Closes the current browser proxy session. This terminates the browser process managed by the proxy and releases related resources. | |
| Identifies and locates interactive user interface elements. This tool helps you discover and describe elements that can be interacted with (such as buttons or input boxes) for use in subsequent operations. To find operable elements, use the To extract structured data or text content, use the | |
| Asynchronously extracts information from a web page based on the provided instructions. It returns a structured result in the specified schema format. | |
| Asynchronously starts one or more operations on the current web page and returns a Unlike | |
| Gets the current progress or final result of an asynchronous operation task. Use this method with the | |
| An asynchronous function that gets the result of an extract task. | |
| Navigates to the specified URL in the browser. | |
MCP tool list
{
"playwright": {
"tools": [
{
"name": "browser_close",
"description": "Close the page",
"inputSchema": {
"type": "object",
"properties": {
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}
},
{
"name": "browser_resize",
"description": "Resize the browser window",
"inputSchema": {
"type": "object",
"properties": {
"width": {
"type": "number",
"description": "Width of the browser window"
},
"height": {
"type": "number",
"description": "Height of the browser window"
}
},
"required": [
"width",
"height"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}
},
{
"name": "browser_console_messages",
"description": "Returns all console messages",
"inputSchema": {
"type": "object",
"properties": {
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}
},
{
"name": "browser_handle_dialog",
"description": "Handle a dialog",
"inputSchema": {
"type": "object",
"properties": {
"accept": {
"type": "boolean",
"description": "Whether to accept the dialog."
},
"promptText": {
"type": "string",
"description": "The text of the prompt in case of a prompt dialog."
}
},
"required": [
"accept"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}
},
{
"name": "browser_file_upload",
"description": "Upload one or multiple files",
"inputSchema": {
"type": "object",
"properties": {
"paths": {
"type": "array",
"items": {
"type": "string"
},
"description": "The absolute paths to the files to upload. Can be a single file or multiple files."
}
},
"required": [
"paths"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}
},
{
"name": "browser_install",
"description": "Install the browser specified in the config. Call this if you get an error about the browser not being installed.",
"inputSchema": {
"type": "object",
"properties": {
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}
},
{
"name": "browser_press_key",
"description": "Press a key on the keyboard",
"inputSchema": {
"type": "object",
"properties": {
"key": {
"type": "string",
"description": "Name of the key to press or a character to generate, such as `ArrowLeft` or `a`"
}
},
"required": [
"key"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}
},
{
"name": "browser_navigate",
"description": "Navigate to a URL",
"inputSchema": {
"type": "object",
"properties": {
"url": {
"type": "string",
"description": "The URL to navigate to"
}
},
"required": [
"url"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}
},
{
"name": "browser_navigate_back",
"description": "Go back to the previous page",
"inputSchema": {
"type": "object",
"properties": {
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}
},
{
"name": "browser_navigate_forward",
"description": "Go forward to the next page",
"inputSchema": {
"type": "object",
"properties": {
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}
},
{
"name": "browser_network_requests",
"description": "Returns all network requests since loading the page",
"inputSchema": {
"type": "object",
"properties": {
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}
},
{
"name": "browser_pdf_save",
"description": "Save page as PDF",
"inputSchema": {
"type": "object",
"properties": {
"filename": {
"type": "string",
"description": "File name to save the pdf to. Defaults to `page-{timestamp}.pdf` if not specified."
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}
},
{
"name": "browser_take_screenshot",
"description": "Take a screenshot of the current page. You can't perform actions based on the screenshot, use browser_snapshot for actions.",
"inputSchema": {
"type": "object",
"properties": {
"raw": {
"type": "boolean",
"description": "Whether to return without compression (in PNG format). Default is false, which returns a JPEG image."
},
"filename": {
"type": "string",
"description": "File name to save the screenshot to. Defaults to `page-{timestamp}.{png|jpeg}` if not specified."
},
"element": {
"type": "string",
"description": "Human-readable element description used to obtain permission to screenshot the element. If not provided, the screenshot will be taken of viewport. If element is provided, ref must be provided too."
},
"ref": {
"type": "string",
"description": "Exact target element reference from the page snapshot. If not provided, the screenshot will be taken of viewport. If ref is provided, element must be provided too."
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}
},
{
"name": "browser_snapshot",
"description": "Capture accessibility snapshot of the current page, this is better than screenshot",
"inputSchema": {
"type": "object",
"properties": {
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}
},
{
"name": "browser_click",
"description": "Perform click on a web page",
"inputSchema": {
"type": "object",
"properties": {
"element": {
"type": "string",
"description": "Human-readable element description used to obtain permission to interact with the element"
},
"ref": {
"type": "string",
"description": "Exact target element reference from the page snapshot"
}
},
"required": [
"element",
"ref"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}
},
{
"name": "browser_drag",
"description": "Perform drag and drop between two elements",
"inputSchema": {
"type": "object",
"properties": {
"startElement": {
"type": "string",
"description": "Human-readable source element description used to obtain the permission to interact with the element"
},
"startRef": {
"type": "string",
"description": "Exact source element reference from the page snapshot"
},
"endElement": {
"type": "string",
"description": "Human-readable target element description used to obtain the permission to interact with the element"
},
"endRef": {
"type": "string",
"description": "Exact target element reference from the page snapshot"
}
},
"required": [
"startElement",
"startRef",
"endElement",
"endRef"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}
},
{
"name": "browser_hover",
"description": "Hover over element on page",
"inputSchema": {
"type": "object",
"properties": {
"element": {
"type": "string",
"description": "Human-readable element description used to obtain permission to interact with the element"
},
"ref": {
"type": "string",
"description": "Exact target element reference from the page snapshot"
}
},
"required": [
"element",
"ref"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}
},
{
"name": "browser_type",
"description": "Type text into editable element",
"inputSchema": {
"type": "object",
"properties": {
"element": {
"type": "string",
"description": "Human-readable element description used to obtain permission to interact with the element"
},
"ref": {
"type": "string",
"description": "Exact target element reference from the page snapshot"
},
"text": {
"type": "string",
"description": "Text to type into the element"
},
"submit": {
"type": "boolean",
"description": "Whether to submit entered text (press Enter after)"
},
"slowly": {
"type": "boolean",
"description": "Whether to type one character at a time. Useful for triggering key handlers in the page. By default entire text is filled in at once."
}
},
"required": [
"element",
"ref",
"text"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}
},
{
"name": "browser_select_option",
"description": "Select an option in a dropdown",
"inputSchema": {
"type": "object",
"properties": {
"element": {
"type": "string",
"description": "Human-readable element description used to obtain permission to interact with the element"
},
"ref": {
"type": "string",
"description": "Exact target element reference from the page snapshot"
},
"values": {
"type": "array",
"items": {
"type": "string"
},
"description": "Array of values to select in the dropdown. This can be a single value or multiple values."
}
},
"required": [
"element",
"ref",
"values"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}
},
{
"name": "browser_tab_list",
"description": "List browser tabs",
"inputSchema": {
"type": "object",
"properties": {
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}
},
{
"name": "browser_tab_new",
"description": "Open a new tab",
"inputSchema": {
"type": "object",
"properties": {
"url": {
"type": "string",
"description": "The URL to navigate to in the new tab. If not provided, the new tab will be blank."
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}
},
{
"name": "browser_tab_select",
"description": "Select a tab by index",
"inputSchema": {
"type": "object",
"properties": {
"index": {
"type": "number",
"description": "The index of the tab to select"
}
},
"required": [
"index"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}
},
{
"name": "browser_tab_close",
"description": "Close a tab",
"inputSchema": {
"type": "object",
"properties": {
"index": {
"type": "number",
"description": "The index of the tab to close. Closes current tab if not provided."
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}
},
{
"name": "browser_generate_playwright_test",
"description": "Generate a Playwright test for given scenario",
"inputSchema": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The name of the test"
},
"description": {
"type": "string",
"description": "The description of the test"
},
"steps": {
"type": "array",
"items": {
"type": "string"
},
"description": "The steps of the test"
}
},
"required": [
"name",
"description",
"steps"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}
},
{
"name": "browser_wait_for",
"description": "Wait for text to appear or disappear or a specified time to pass",
"inputSchema": {
"type": "object",
"properties": {
"time": {
"type": "number",
"description": "The time to wait in seconds"
},
"text": {
"type": "string",
"description": "The text to wait for"
},
"textGone": {
"type": "string",
"description": "The text to wait for to disappear"
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}
}
]
},
"cdp": {
"tools": [
{
"name": "startChromeByCdp",
"description": "Start the Chrome browser and create a CPD protocol websocket port for external debugging. The return value is the listening port.",
"inputSchema": {
"type": "object",
"properties": {
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}
},
{
"name": "stopChrome",
"description": "Stop the Chrome browser",
"inputSchema": {
"type": "object",
"properties": {
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}
}
]
},
"shell": {
"tools": [
{
"name": "shell",
"description": "Executes an shell command with timeout and returns the output or an error on linux platform.",
"inputSchema": {
"properties": {
"command": {
"description": "The command entered by the client.",
"type": "string"
},
"timeout_ms": {
"default": 1000,
"description": "The command execution timeout in milliseconds. If not specified, a default value is used, such as 1000 ms.",
"type": "integer"
}
},
"required": [
"command",
"timeout_ms"
],
"type": "object"
}
}
]
},
"filesystem": {
"tools": [
{
"name": "create_directory",
"description": "Create a new directory or ensure a directory exists. Can create multiple nested directories in one operation. If the directory already exists, this operation will succeed silently. Perfect for setting up directory structures for projects or ensuring required paths exist. Only works within allowed directories.",
"inputSchema": {
"properties": {
"path": {
"description": "Directory path to create.",
"type": "string"
}
},
"required": [
"path"
],
"type": "object"
}
},
{
"name": "edit_file",
"description": "Make line-based edits to a text file. Each edit replaces exact line sequences with new content. Returns a git-style diff showing the changes made. Only works within allowed directories.",
"inputSchema": {
"properties": {
"dryRun": {
"default": false,
"description": "Preview changes using git-style diff format",
"type": "boolean"
},
"edits": {
"items": {
"properties": {
"newText": {
"description": "Text to replace with",
"type": "string"
},
"oldText": {
"description": "Text to search for - must match exactly",
"type": "string"
}
},
"required": [
"oldText",
"newText"
],
"type": "object"
},
"type": "array"
},
"path": {
"description": "File path to edit.",
"type": "string"
}
},
"required": [
"path",
"edits"
],
"type": "object"
}
},
{
"name": "get_file_info",
"description": "Retrieve detailed metadata about a file or directory. Returns comprehensive information including size, creation time, last modified time, permissions, and type. This tool is perfect for understanding file characteristics without reading the actual content. Only works within allowed directories.",
"inputSchema": {
"properties": {
"path": {
"description": "File or directory path to inspect.",
"type": "string"
}
},
"required": [
"path"
],
"type": "object"
}
},
{
"name": "read_file",
"description": "Read the contents of a file from the file system. You can specify an optional 'offset' (in bytes) to start reading from a specific position, and an optional 'length' (in bytes) to limit how many bytes to read. If 'length' is omitted or 0, the file will be read to the end. Handles various text encodings and provides detailed error messages if the file cannot be read. Only works within allowed directories.",
"inputSchema": {
"properties": {
"length": {
"description": "Number of bytes to read. If omitted or 0, read to end of file.",
"minimum": 0,
"type": "integer"
},
"offset": {
"default": 0,
"description": "Start reading from this byte offset.",
"minimum": 0,
"type": "integer"
},
"path": {
"description": "File path to read.",
"type": "string"
}
},
"required": [
"path"
],
"type": "object"
}
},
{
"name": "read_multiple_files",
"description": "Read the contents of multiple files simultaneously. This is more efficient than reading files one by one when you need to analyze or compare multiple files. Each file's content is returned with its path as a reference. Failed reads for individual files won't stop the entire operation. Only works within allowed directories.",
"inputSchema": {
"properties": {
"paths": {
"description": "Array of file paths to read.",
"items": {
"type": "string"
},
"type": "array"
}
},
"required": [
"paths"
],
"type": "object"
}
},
{
"name": "list_directory",
"description": "Get a detailed listing of all files and directories in a specified path. Results clearly distinguish between files and directories with [FILE] and [DIR] prefixes. This tool is essential for understanding directory structure and finding specific files within a directory. Only works within allowed directories.",
"inputSchema": {
"properties": {
"path": {
"description": "Directory path to list.",
"type": "string"
}
},
"required": [
"path"
],
"type": "object"
}
},
{
"name": "move_file",
"description": "Move or rename files and directories. Can move files between directories and rename them in a single operation. If the destination exists, the operation will fail. Works across different directories and can be used for simple renaming within the same directory. Both source and destination must be within allowed directories.",
"inputSchema": {
"properties": {
"destination": {
"description": "Destination file or directory path.",
"type": "string"
},
"source": {
"description": "Source file or directory path.",
"type": "string"
}
},
"required": [
"source",
"destination"
],
"type": "object"
}
},
{
"name": "search_files",
"description": "Recursively search for files and directories matching a pattern. Searches through all subdirectories from the starting path. The search is case-sensitive and matches partial names. Returns full paths to all matching items. Great for finding files when you don't know their exact location. Only searches within allowed directories.",
"inputSchema": {
"properties": {
"excludePatterns": {
"default": [
],
"description": "Patterns to exclude (optional).",
"items": {
"type": "string"
},
"type": "array"
},
"path": {
"description": "Directory path to start search.",
"type": "string"
},
"pattern": {
"description": "Pattern to match.",
"type": "string"
}
},
"required": [
"path",
"pattern"
],
"type": "object"
}
},
{
"name": "write_file",
"description": "Create a new file or write content to an existing file. You can choose to completely overwrite the file or append to the end by specifying the 'mode' parameter. Use 'overwrite' mode (default) to clear the file before writing, or 'append' mode to add content to the end of the file. Handles text content with proper encoding. Only works within allowed directories.",
"inputSchema": {
"properties": {
"content": {
"description": "Content to write.",
"type": "string"
},
"mode": {
"default": "overwrite",
"description": "Write mode: 'overwrite' to clear file, 'append' to add to end.",
"enum": [
"overwrite",
"append"
],
"type": "string"
},
"path": {
"description": "File path to write.",
"type": "string"
}
},
"required": [
"path",
"content"
],
"type": "object"
}
}
]
}
}