How Deploys Work
Your agent pushes code and Ink handles the rest — auto-detection, building, deploying, and routing to a live URL
There is no deployment abstraction to learn. Your agent reads the available MCP tools, understands what they do, and uses them to push code in whatever way is most compatible with the codebase and its goals. Ink handles the rest — auto-detection, building, containerization, and routing.
The agent decides how to structure the code, which framework conventions to follow, and when to deploy. Ink's MCP tools guide the agent through the process naturally: create_service to set up the service, get_git_push_token to get push credentials, then a standard git push to trigger the build. No CI/CD pipelines, no configuration files required.
Deployment flow
get_service MCP tool- Code push — your agent commits code and pushes to a git repository
- Agent calls MCP — the agent calls
create_service(or triggers a redeploy) to deploy from the GitHub repo or Ink managed git - Auto-detect — Ink detects the language, framework, and build configuration
- Build — the app is compiled and packaged into a container image
- Deploy — the container is rolled out to Ink's bare metal infrastructure
- Route — traffic is routed to your app at
your-service.ml.ink
Your agent monitors every step through the get_service MCP tool — reading build logs, checking deployment status, and viewing runtime logs.
Deployment stages
| Stage | Description |
|---|---|
| Queued | Waiting for build capacity |
| Building | Installing dependencies, compiling, packaging |
| Deploying | Rolling out to infrastructure |
| Active | Live and serving traffic |
| Failed | Build or deploy error (agent reads logs to diagnose) |
| Cancelled | Manually cancelled |
| Superseded | Replaced by a newer deployment |
Default configuration
| Setting | Default | Overridable |
|---|---|---|
| Memory | 256 MB | Yes — up to 4 GB |
| vCPU | 0.5 | Yes — up to 4 |
| Port | 3000 | Yes — any port |
| Build pack | Auto-detect | Yes — railpack, dockerfile, static |
| Branch | main | Yes — any branch |
Your agent overrides any of these when calling create_service or update_service.
Resource allocation
Each service runs with a dedicated allocation of memory and CPU. Your agent sets these via the memory and vcpus parameters on create_service or update_service.
| Memory | vCPU |
|---|---|
| 256 MB (default) | 0.5 |
| 512 MB | 1 |
| 1024 MB | 2 |
| 2048 MB | 2 |
| 4096 MB | 4 |
Choosing the right tier:
- 256 MB — simple APIs, static sites, small Node.js/Python apps
- 512 MB — moderate traffic APIs, Next.js apps
- 1024 MB — data processing, larger apps
- 2048 MB+ — memory-intensive workloads, large datasets
Ink tracks CPU, memory, and network metrics for every service. Your agent can check whether a service is hitting resource limits and scale up accordingly.