Service Tools
MCP tools for deploying, observing, scaling, renaming, and deleting services on Ink
service_create
Create and deploy a service from a git repository or a prebuilt Docker image. Use host='ink' for Ink-managed repos or host='github' for GitHub repos.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
workspace | string | no | default | Workspace slug |
source | string | no | repo | repo or image |
repo | string | when source='repo' | — | Ink repo name from repo_create (or ink/name shortcut), or GitHub owner/repo with host='github' |
image | string | when source='image' | — | Docker image to deploy |
host | string | no | ink | Git host: ink or github |
branch | string | no | main | Branch to deploy |
name | string | no | derived | Display name for the service |
subdomain | string | no | service name | Custom *.deployink.com subdomain |
project | string | no | default | Project slug |
regions | string[] | no | us-east-1 | Deployment region list; currently one region is supported |
build_pack | string | no | railpack | railpack, dockerfile, static, or dockercompose |
ports | array | no | public HTTP 3000 | Named ports. Pass [] for workers with no listening ports |
env_vars | array | no | — | Environment variables as { key, value } |
memory | string | no | 256Mi | Memory limit from 128Mi through 65536Mi, subject to plan limits |
vcpus | string | no | 0.25 | vCPU limit from 0.1 through 32, subject to plan limits |
replicas | integer | no | 1 | Stateless replicas from 0 to 10. Volume services support at most 1 |
build_command | string | no | auto | Custom build command for railpack |
start_command | string | no | auto | Custom start command for railpack |
publish_directory | string | no | — | Static output directory such as dist |
root_directory | string | no | — | Monorepo subdirectory to build from |
dockerfile_path | string | no | — | Dockerfile path relative to root_directory |
volume_name | string | no | — | Persistent volume name to attach or reattach |
volume_mount_path | string | with volume_name | — | Absolute mount path inside the container |
volume_size_gi | integer | no | 1 | Volume size in GiB |
health_path | string | no | — | HTTP readiness path such as /healthz |
destroy_timeout_seconds | integer | no | 0 | Auto-destroy service after completion; max 24 hours |
Returns: service_id, name, status, repo, ports, replicas, commit_hash, and message.
service_list
List deployed services, optionally filtered by project.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
workspace | string | no | default | Workspace slug |
project | string | no | — | Project slug filter |
Returns: services with service_id, name, subdomain, project, source, repo or image, status, ports, and replicas.
service_get
Get service details, logs, metrics, environment variables, custom domain state, and attached volumes. This is the primary observability and debugging tool.
Status values include queued, building, deploying, active, failed, cancelled, superseded, crashed, completed, and removed.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
workspace | string | no | default | Workspace slug |
name | string | one of name or service_id | — | Service name |
service_id | string | one of name or service_id | — | Service ID |
project | string | no | default | Project slug |
include_env | boolean | no | false | Include environment variables |
deploy_log_lines | integer | no | 0 | Deployment log lines to fetch, max 500 |
runtime_log_lines | integer | no | 0 | Runtime log lines to fetch, max 500 |
metrics | string | no | — | Metrics range: 1h, 6h, 7d, or 30d |
Returns: service config, status, ports, logs, metrics, env vars, custom domain, and volume details.
service_update
Update service configuration and redeploy. Only specify fields you want to change. Calling it without configuration changes can also force a redeploy from the current source.
Supports the same deployment configuration fields as service_create, including source, repo, image, host, branch, ports, env_vars, build_pack, memory, vcpus, replicas, commands, monorepo paths, volume fields, and health_path.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
workspace | string | no | default | Workspace slug |
name | string | one of name or service_id | — | Service name |
service_id | string | one of name or service_id | — | Service ID |
project | string | no | default | Project slug |
Returns: service_id, name, status, and message.
service_rename
Rename a service display name without redeploying it.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
workspace | string | no | default | Workspace slug |
name | string | one of name or service_id | — | Current service name |
service_id | string | one of name or service_id | — | Service ID |
new_name | string | yes | — | New display name |
project | string | no | default | Project slug |
service_delete
Delete a service and stop its deployment. Attached volumes are detached and retained for 24 hours unless reattached or deleted.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
workspace | string | no | default | Workspace slug |
name | string | one of name or service_id | — | Service name |
service_id | string | one of name or service_id | — | Service ID |
project | string | no | default | Project slug |
Returns: service_id, name, and message.