MCP Tools Reference
Complete reference for all tools available in the Conway MCP server.
The Conway MCP server provides the following tools for AI agents.
Sandbox Tools
sandbox_create
Create a new cloud sandbox.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
name | string | No | Optional name for the sandbox |
vcpu | number | No | Number of vCPUs (1-4, default: 1) |
memory_mb | number | No | Memory in MB (512-8192, default: 512) |
disk_gb | number | No | Disk size in GB (1-50, default: 1) |
region | string | No | Region: "eu-north" or "us-east" (default: eu-north) |
Returns: Sandbox ID, terminal URL, and resource allocation.
sandbox_list
List all sandboxes with their IDs, names, and status.
Parameters: None
Returns: Array of sandbox objects with ID, name, status, resources, and region.
sandbox_exec
Execute a shell command in a sandbox.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
sandbox_id | string | Yes | Full sandbox ID (32 hex characters) |
command | string | Yes | Shell command to execute |
timeout | number | No | Timeout in seconds (default: 30) |
Returns: stdout, stderr, and exit code.
sandbox_write_file
Write a file to a sandbox.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
sandbox_id | string | Yes | Full sandbox ID |
path | string | Yes | Absolute path (e.g., /root/script.py) |
content | string | Yes | File content |
Returns: Status, path, and file size.
sandbox_read_file
Read a file from a sandbox.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
sandbox_id | string | Yes | Full sandbox ID |
path | string | Yes | Absolute path to read |
Returns: File content as string.
sandbox_expose_port
Expose a port from a sandbox to get a public URL.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
sandbox_id | string | Yes | Full sandbox ID |
port | number | Yes | Port number (1-65535) |
Returns: Port number and public URL.
sandbox_delete
Delete a sandbox.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
sandbox_id | string | Yes | Full sandbox ID to delete |
Returns: Success confirmation.
sandbox_get_url
Get the public URL for a specific port on a sandbox.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
sandbox_id | string | Yes | Full sandbox ID |
port | number | Yes | Port number |
Returns: Public URL in format https://{port}-{sandbox_id}.life.conway.tech
PTY Tools
sandbox_pty_create
Create a new PTY (pseudo-terminal) session for interactive programs.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
sandbox_id | string | Yes | Full sandbox ID |
command | string | Yes | Command to run (e.g., "bash", "python3") |
cols | number | No | Terminal columns (default: 80) |
rows | number | No | Terminal rows (default: 24) |
Returns: Session ID, command, dimensions, state, and creation time.
sandbox_pty_write
Write input to a PTY session.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
sandbox_id | string | Yes | Full sandbox ID |
session_id | string | Yes | PTY session ID |
input | string | Yes | Input to send (use \n for Enter) |
Returns: Success status and bytes written.
sandbox_pty_read
Read output from a PTY session.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
sandbox_id | string | Yes | Full sandbox ID |
session_id | string | Yes | PTY session ID |
full | boolean | No | Return full scrollback buffer (default: false) |
Returns: Terminal output, state, and dimensions.
sandbox_pty_close
Close a PTY session and terminate the process.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
sandbox_id | string | Yes | Full sandbox ID |
session_id | string | Yes | PTY session ID to close |
Returns: Success status and final state.
sandbox_pty_list
List all active PTY sessions for a sandbox.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
sandbox_id | string | Yes | Full sandbox ID |
Returns: Array of active sessions with command, state, and creation time.
Inference Tools
chat_completions
Send a chat completion request to an OpenAI model, billed from Conway credits.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
model | string | Yes | OpenAI model name (e.g., "gpt-4o-mini", "gpt-4o", "o3-mini") |
messages | array | Yes | Array of message objects with role and content |
temperature | number | No | Sampling temperature (0-2, default: 1) |
max_tokens | number | No | Maximum tokens to generate |
Returns: Model response with content, finish reason, and token usage.
Domain Tools
domain_search
Search for available domain names and get pricing.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
query | string | Yes | Domain name or base name to search (e.g., "mysite" or "mysite.com") |
tlds | string | No | Comma-separated TLDs to check (default: com,io,ai,xyz,net,org,dev) |
Returns: Availability status and registration/renewal costs for each TLD.
domain_list
List all domains registered to your account.
Parameters: None
Returns: Array of domain objects with name, status, expiry, and registration details.
domain_info
Get detailed info about a specific domain.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
domain | string | Yes | Domain name (e.g., example.com) |
Returns: Domain status, expiry date, nameservers, and privacy settings.
domain_register
Register a new domain. Requires x402 USDC payment on Base.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
domain | string | Yes | Domain to register (e.g., mysite.com) |
years | number | No | Registration period in years (1-10, default: 1) |
privacy | boolean | No | Enable WHOIS privacy (default: true) |
Returns: Registration details and transaction ID.
domain_renew
Renew an existing domain. Requires x402 USDC payment on Base.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
domain | string | Yes | Domain to renew (e.g., mysite.com) |
years | number | No | Renewal period in years (1-10, default: 1) |
Returns: Renewal confirmation and new expiry date.
domain_dns_list
List all DNS records for a domain.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
domain | string | Yes | Domain name (e.g., example.com) |
Returns: Array of DNS records with type, host, value, and TTL.
domain_dns_add
Add a DNS record to a domain.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
domain | string | Yes | Domain name |
type | string | Yes | Record type: A, AAAA, CNAME, MX, TXT, SRV, CAA, NS |
host | string | Yes | Record host/name (e.g., "@" for root, "www", "mail") |
value | string | Yes | Record value (e.g., IP address, target domain) |
ttl | number | No | TTL in seconds (default: 3600) |
distance | number | No | MX priority (only for MX records) |
Returns: Created record details with record ID.
domain_dns_update
Update an existing DNS record.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
domain | string | Yes | Domain name |
record_id | string | Yes | DNS record ID to update |
host | string | No | New host/name |
value | string | No | New record value |
ttl | number | No | New TTL in seconds |
Returns: Updated record details.
domain_dns_delete
Delete a DNS record from a domain.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
domain | string | Yes | Domain name |
record_id | string | Yes | DNS record ID to delete |
Returns: Deletion confirmation.
domain_pricing
Get pricing for specific TLDs.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
tlds | string | No | Comma-separated TLDs (e.g., "com,io,ai") |
Returns: Registration, renewal, and transfer costs per TLD.
domain_check
Check availability of specific domain names.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
domains | string | Yes | Comma-separated list of full domain names (e.g., "example.com,test.io") |
Returns: Availability status and pricing per domain.
domain_privacy
Toggle WHOIS privacy protection for a domain.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
domain | string | Yes | Domain name (e.g., example.com) |
enabled | boolean | Yes | Enable (true) or disable (false) WHOIS privacy |
Returns: Success confirmation.
domain_nameservers
Update nameservers for a domain.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
domain | string | Yes | Domain name (e.g., example.com) |
nameservers | array | Yes | List of nameserver hostnames (2-13 entries) |
Returns: Success confirmation.
Credits Tools
credits_balance
Get the current credit balance for the authenticated account.
Parameters: None
Returns: Credit balance in cents and formatted USD amount.
credits_history
Get credit transaction history.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
limit | number | No | Max number of transactions (default: 20) |
offset | number | No | Offset for pagination (default: 0) |
Returns: Array of transactions with amounts, types, and timestamps.
credits_pricing
Get VM pricing tiers and payment tier information.
Parameters: None
Returns: Available pricing tiers with vCPU, memory, disk, and monthly cost.
x402 Payment Tools
wallet_info
Get information about the x402 payment wallet.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
network | string | No | Network ID (default: eip155:8453 for Base) |
Returns: Wallet address, USDC balance, and deposit link.
wallet_networks
List all supported networks for x402 payments.
Parameters: None
Returns: Array of supported networks with chain IDs and USDC addresses.
x402_discover
Discover x402 endpoints for a given URL.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
url | string | Yes | Origin URL to discover resources from |
Returns: Discovered x402 endpoints and payment requirements.
x402_check
Check if a URL requires x402 payment.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
url | string | Yes | Endpoint URL to check |
method | string | No | HTTP method (default: GET) |
Returns: Payment requirements if 402 response.
x402_fetch
Fetch a URL with automatic x402 payment handling.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
url | string | Yes | Endpoint URL to fetch |
method | string | No | HTTP method (default: GET) |
headers | object | No | Additional headers |
body | string | No | Request body for POST/PUT/PATCH |
Returns: Response data with automatic payment if required.