---
name: workspace-commands
description: Use when running commands in this workspace - which commands exist, what they can do, and what the interpreter supports.
---
# Available commands
Standard Unix commands, among them:
cat head tail ls find grep wc sort uniq cut tr sed awk
diff tee xargs jq
with pipes, `>` redirection and `$(...)` substitution.
Do not probe the machine with `which`, `type`, `--version`, `env`, `ps`,
`echo $PATH`, `ls /usr/bin` or `cat /usr/bin/<command>`: they tell you
nothing about the task.
A filename with a space in it needs quoting, as it would in any shell.
## notion
Use `notion <command> '<JSON arguments>'`. Run `notion <command> --help` to
get more information.
```sh
notion post-database-query '{"database_id":"ID","filter":{"property":"Name","rich_text":{"contains":"TEXT"}},"page_size":10}'
notion post-search '{"query":"QUERY"}'
notion get-block-children '{"block_id":"ID"}'
notion retrieve-a-block '{"block_id":"ID"}'
```
| Command | Arguments | Description |
|---|---|---|
| `notion post-database-query` | `{database_id: str, filter_properties?: list[str], filter?: dict, sorts?: list[{property: str, direction: "ascending" \| "descending"}], start_cursor?: str, page_size?: int = 100, archived?: bool, in_trash?: bool}` | Query a database |
| `notion post-search` | `{query?: str, sort?: {direction?: str, timestamp?: str}, filter?: {value?: str, property?: str}, start_cursor?: str, page_size?: int = 100}` | Search by title |
| `notion get-block-children` | `{block_id: str, start_cursor?: str, page_size?: int = 100}` | Retrieve block children |
| `notion retrieve-a-block` | `{block_id: str}` | Retrieve a block |
## oxylabs
Use `oxylabs <command> '<JSON arguments>'`. Run `oxylabs <command> --help`
to get more information.
```sh
oxylabs universal-scraper '{"url":"https://example.com","output_format":"md"}'
oxylabs google-search-scraper '{"query":"QUERY"}'
```
| Command | Arguments | Description |
|---|---|---|
| `oxylabs universal-scraper` | `{url: str, render?: "" \| "html" = "", user_agent_type?: "" \| "desktop" \| "desktop_chrome" \| "desktop_firefox" \| "desktop_safari" \| "desktop_edge" \| "desktop_opera" \| "mobile" \| "mobile_ios" \| "mobile_android" \| "tablet" = "", geo_location?: str = "", output_format?: "" \| "links" \| "md" \| "html" = ""}` | Get a content of any webpage. |
| `oxylabs google-search-scraper` | `{query: str, parse?: bool = true, render?: "" \| "html" = "", user_agent_type?: "" \| "desktop" \| "desktop_chrome" \| "desktop_firefox" \| "desktop_safari" \| "desktop_edge" \| "desktop_opera" \| "mobile" \| "mobile_ios" \| "mobile_android" \| "tablet" = "", start_page?: int = 0, pages?: int = 0, limit?: int = 0, domain?: str = "", geo_location?: str = "", locale?: str = "", ad_mode?: bool = false, output_format?: "" \| "links" \| "md" \| "html" = ""}` | Scrape Google Search results. |
## context7
Use `context7 <command> '<JSON arguments>'`. Run `context7 <command> --help`
to get more information.
```sh
context7 resolve-library-id '{"libraryName":"LIBRARY"}'
context7 get-library-docs '{"context7CompatibleLibraryID":"/ORG/PROJECT","topic":"TOPIC"}'
```
| Command | Arguments | Description |
|---|---|---|
| `context7 resolve-library-id` | `{libraryName: str}` | Resolves a package/product name to a Context7-compatible library ID and returns a list of matching libraries. |
| `context7 get-library-docs` | `{context7CompatibleLibraryID: str, topic?: str, tokens?: number}` | Fetches up-to-date documentation for a library. You must call 'resolve-library-id' first to obtain the exact Context7-compatible library ID required to use this tool, UNLESS the user explicitly provides a library ID in the format '/org/project' or '/org/project/version' in their query. |
## e2b-server
Use `e2b-server <command> '<JSON arguments>'`. Run
`e2b-server <command> --help` to get more information.
```sh
e2b-server run-code '{"code":"print(1 + 1)"}'
```
| Command | Arguments | Description |
|---|---|---|
| `e2b-server run-code` | `{code: str}` | Run python code in a secure sandbox by E2B. Using the Jupyter Notebook syntax. |
## fetch
Use `fetch <command> '<JSON arguments>'`. Run `fetch <command> --help` to
get more information.
```sh
fetch fetch '{"url":"https://example.com"}'
```
| Command | Arguments | Description |
|---|---|---|
| `fetch fetch` | `{url: str, max_length?: int = 5000, start_index?: int = 0, raw?: bool = false}` | Fetches a URL from the internet and optionally extracts its contents as markdown. |
## memory
Use `memory <command> '<JSON arguments>'`. Run `memory <command> --help` to
get more information.
```sh
memory read-graph '{}'
```
| Command | Arguments | Description |
|---|---|---|
| `memory read-graph` | `{}` | Read the entire knowledge graph |
## python3
Execute Python code and return stdout and stderr. Code can be pasted into a
`.py` file and run with `python3`. Python cannot launch subprocesses or make
direct network requests. Run the documented service commands directly in
the shell. Use Python for local file processing and generating JSON
arguments.
| name | workspace-commands |
|---|
| description | Use when running commands in this workspace - which commands exist, what they can do, and what the interpreter supports. |
|---|
Available commands
Standard Unix commands, among them:
cat head tail ls find grep wc sort uniq cut tr sed awk
diff tee xargs jq
with pipes, > redirection and $(...) substitution.
Do not probe the machine with which, type, --version, env, ps, echo $PATH, ls /usr/bin or cat /usr/bin/<command>: they tell you nothing about the task.
A filename with a space in it needs quoting, as it would in any shell.
notion
Use notion <command> '<JSON arguments>'. Run notion <command> --help to get more information.
notion post-database-query '{"database_id":"ID","filter":{"property":"Name","rich_text":{"contains":"TEXT"}},"page_size":10}'
notion post-search '{"query":"QUERY"}'
notion get-block-children '{"block_id":"ID"}'
notion retrieve-a-block '{"block_id":"ID"}'
| Command | Arguments | Description |
|---|
notion post-database-query | `{database_id: str, filter_properties?: list[str], filter?: dict, sorts?: list[{property: str, direction: "ascending" \ | "descending"}], start_cursor?: str, page_size?: int = 100, archived?: bool, in_trash?: bool}` | Query a database |
notion post-search | {query?: str, sort?: {direction?: str, timestamp?: str}, filter?: {value?: str, property?: str}, start_cursor?: str, page_size?: int = 100} | Search by title |
notion get-block-children | {block_id: str, start_cursor?: str, page_size?: int = 100} | Retrieve block children |
notion retrieve-a-block | {block_id: str} | Retrieve a block |
oxylabs
Use oxylabs <command> '<JSON arguments>'. Run oxylabs <command> --help to get more information.
oxylabs universal-scraper '{"url":"https://example.com","output_format":"md"}'
oxylabs google-search-scraper '{"query":"QUERY"}'
| Command | Arguments | Description |
|---|
oxylabs universal-scraper | `{url: str, render?: "" \ | "html" = "", user_agent_type?: "" \ | "desktop" \ | "desktop_chrome" \ | "desktop_firefox" \ | "desktop_safari" \ | "desktop_edge" \ | "desktop_opera" \ | "mobile" \ | "mobile_ios" \ | "mobile_android" \ | "tablet" = "", geo_location?: str = "", output_format?: "" \ | "links" \ | "md" \ | "html" = ""}` | Get a content of any webpage. |
oxylabs google-search-scraper | `{query: str, parse?: bool = true, render?: "" \ | "html" = "", user_agent_type?: "" \ | "desktop" \ | "desktop_chrome" \ | "desktop_firefox" \ | "desktop_safari" \ | "desktop_edge" \ | "desktop_opera" \ | "mobile" \ | "mobile_ios" \ | "mobile_android" \ | "tablet" = "", start_page?: int = 0, pages?: int = 0, limit?: int = 0, domain?: str = "", geo_location?: str = "", locale?: str = "", ad_mode?: bool = false, output_format?: "" \ | "links" \ | "md" \ | "html" = ""}` | Scrape Google Search results. |
context7
Use context7 <command> '<JSON arguments>'. Run context7 <command> --help to get more information.
context7 resolve-library-id '{"libraryName":"LIBRARY"}'
context7 get-library-docs '{"context7CompatibleLibraryID":"/ORG/PROJECT","topic":"TOPIC"}'
| Command | Arguments | Description |
|---|
context7 resolve-library-id | {libraryName: str} | Resolves a package/product name to a Context7-compatible library ID and returns a list of matching libraries. |
context7 get-library-docs | {context7CompatibleLibraryID: str, topic?: str, tokens?: number} | Fetches up-to-date documentation for a library. You must call 'resolve-library-id' first to obtain the exact Context7-compatible library ID required to use this tool, UNLESS the user explicitly provides a library ID in the format '/org/project' or '/org/project/version' in their query. |
e2b-server
Use e2b-server <command> '<JSON arguments>'. Run e2b-server <command> --help to get more information.
e2b-server run-code '{"code":"print(1 + 1)"}'
| Command | Arguments | Description |
|---|
e2b-server run-code | {code: str} | Run python code in a secure sandbox by E2B. Using the Jupyter Notebook syntax. |
fetch
Use fetch <command> '<JSON arguments>'. Run fetch <command> --help to get more information.
fetch fetch '{"url":"https://example.com"}'
| Command | Arguments | Description |
|---|
fetch fetch | {url: str, max_length?: int = 5000, start_index?: int = 0, raw?: bool = false} | Fetches a URL from the internet and optionally extracts its contents as markdown. |
memory
Use memory <command> '<JSON arguments>'. Run memory <command> --help to get more information.
memory read-graph '{}'
| Command | Arguments | Description |
|---|
memory read-graph | {} | Read the entire knowledge graph |
python3
Execute Python code and return stdout and stderr. Code can be pasted into a .py file and run with python3. Python cannot launch subprocesses or make direct network requests. Run the documented service commands directly in the shell. Use Python for local file processing and generating JSON arguments.