Configuration
Create.ona/mcp-config.json in your repository:
Transport types
Each server uses either stdio or HTTP transport. Ona detects the transport from your config:- Set
commandfor stdio transport (runs a local process) - Set
urlfor HTTP transport (connects to a remote endpoint)
command and url.
Configuration options
| Field | Transport | Description |
|---|---|---|
name | both | Display name for the server (defaults to the map key) |
command | stdio | Executable to run the server |
args | stdio | Command arguments |
url | HTTP | Server endpoint (must start with http:// or https://) |
headers | HTTP | HTTP headers sent with requests (supports ${exec:...} and ${file:...}) |
env | stdio | Environment variables (supports ${exec:...} and ${file:...}) |
timeout | both | Per-server timeout in seconds (default: 30) |
toolDenyList | both | Tools to block (supports wildcards like delete_*) |
workingDir | stdio | Working directory for the server process |
disabled | both | Set true to disable without removing config |
globalTimeout at the top level of the config to apply a default timeout to all servers.
Checking MCP server status
Click the MCP Integrations button in the conversation input to see server status. Each server shows whether it is connected, disabled, or experiencing errors.
Examples
Stdio transport (local process)
@executeautomation/playwright-mcp-server runs as a local process vianpx:
HTTP transport (remote server)
Connect to an MCP server running over HTTP. Useurl instead of command:
headers supports ${exec:...} and ${file:...} expansion, like env. Inject tokens at runtime instead of committing secrets.
Credentials
Use Ona Secrets to inject credentials intoenv (stdio) or headers (HTTP):
headers:
- Environment variables:
${exec:printenv VAR_NAME} - Files:
${file:/path/to/secret} - External stores:
${exec:aws secretsmanager get-secret-value ...}
DevContainer requirements
MCP servers run inside your environment. The base image must include the tools they need (npx for Node-based servers, docker for container-based servers). If a server fails to start, verify the required runtime is in your Dev Container image.
Applying configuration changes
After creating or modifying.ona/mcp-config.json:
- Commit the file to your repository
- Create a new environment, or rebuild the Dev Container in an existing one with
gitpod environment devcontainer rebuild
Troubleshooting
MCP tools not appearing
The agent may not list MCP tools when asked, but can still invoke them. Type/support-bundle in your Ona conversation to verify servers are connecting.
Configuration errors cause rebuild loop
If your MCP configuration has errors, the Dev Container rebuild can loop. Stop the environment manually, fix the configuration, then rebuild.Organization controls

.ona/mcp-config.jsonfiles are ignored- Agent operates with built-in tools only
- External MCP connections are blocked