About Ink MCP
Ink MCP is an MCP server for deploying and managing applications on ml.ink. It lets AI agents handle services, databases, Git repositories, domains, DNS, and workspaces through tools.
Key features
- 01Deploy and manage services from Git repositories
- 02Provision and manage SQLite databases via Turso
- 03Create repositories and obtain temporary push tokens
- 04Manage custom domains and DNS records
- 05Manage workspaces, members, and invitations
- 06Inspect logs, projects, account status, and audit logs
Use cases
- 01Deploying an application from a Git repository
- 02Updating service configuration or redeploying code
- 03Provisioning a database and retrieving connection details
- 04Managing project domains, DNS, and workspace access
MCP support
Exposes deployment and management tools to MCP clients through Streamable HTTP at https://mcp.ml.ink/mcp. Authentication supports OAuth 2.1 (PKCE) or an API key.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMEInk MCP
MCP server for deploying and managing applications on ml.ink.
Server URL: https://mcp.ml.ink/mcp
Transport: Streamable HTTP
Auth: OAuth 2.1 (PKCE) or API key
Authentication
OAuth
MCP clients that support OAuth handle the login flow automatically — add the server URL and sign in via browser.
API Key
- Sign up at ml.ink
- Settings → API Keys → Generate
- Pass via header:
Authorization: Bearer dk_live_...
Client Setup
Claude Code
# OAuth
claude mcp add --transport http ink https://mcp.ml.ink/mcp
# API key
claude mcp add --transport http ink https://mcp.ml.ink/mcp \
--header "Authorization: Bearer dk_live_YOUR_API_KEY"
Claude Desktop
Add to claude_desktop_config.json:
{
"mcpServers": {
"ink": {
"url": "https://mcp.ml.ink/mcp"
}
}
}
With API key:
{
"mcpServers": {
"ink": {
"url": "https://mcp.ml.ink/mcp",
"headers": {
"Authorization": "Bearer dk_live_YOUR_API_KEY"
}
}
}
}
Cursor
Settings → MCP → Add new MCP server:
{
"mcpServers": {
"ink": {
"url": "https://mcp.ml.ink/mcp"
}
}
}
Windsurf
Settings → MCP → Add Server:
{
"mcpServers": {
"ink": {
"serverUrl": "https://mcp.ml.ink/mcp"
}
}
}
Codex CLI
codex mcp add --transport http ink https://mcp.ml.ink/mcp \
--header "Authorization: Bearer dk_live_YOUR_API_KEY"
Cline / Roo Code
Add to extension MCP settings:
{
"mcpServers": {
"ink": {
"url": "https://mcp.ml.ink/mcp",
"headers": {
"Authorization": "Bearer dk_live_YOUR_API_KEY"
}
}
}
}
Tools
Services
| Tool | Description |
|---|---|
create_service | Deploy a service from a git repo |
list_services | List deployed services |
get_service | Service details, build/runtime logs |
update_service | Update config (repo, branch, port, env, resources, commands) |
redeploy_service | Redeploy with latest code |
delete_service | Delete a service |
Databases
| Tool | Description |
|---|---|
create_resource | Provision a database (SQLite via Turso) |
list_resources | List databases |
get_resource | Connection details (URL + auth token) |
delete_resource | Delete a database |
Git
| Tool | Description |
|---|---|
create_repo | Create a git repo (internal or GitHub) |
get_git_token | Temporary push token |
Custom Domains & DNS
| Tool | Description |
|---|---|
add_custom_domain | Attach a custom domain to a service |
remove_custom_domain | Remove a custom domain |
list_delegations | List delegated zones |
add_dns_record | Add DNS record (A/AAAA/CNAME/MX/TXT/CAA) |
delete_dns_record | Remove a DNS record |
list_dns_records | List records in a zone |
Workspaces
| Tool | Description |
|---|---|
workspace_list | List workspaces |
workspace_create | Create a team workspace |
workspace_delete | Delete a workspace |
workspace_invite | Invite by email or git username |
workspace_accept_invite | Accept invite |
workspace_decline_invite | Decline invite |
workspace_revoke_invite | Revoke invite |
workspace_remove_member | Remove member |
workspace_list_members | List members and roles |
workspace_list_invites | List pending invites |
Other
| Tool | Description |
|---|---|
list_projects | List projects in a workspace |
account_status | Account details, balance, GitHub App status |
chat | Send/read workspace or project messages |
list_action_log | Query audit log |
Supported Frameworks
Auto-detected, no configuration needed:
- JS/TS — Next.js, Remix, SvelteKit, Nuxt, Astro, Express, Fastify, Hono
- Python — FastAPI, Flask, Django, Starlette
- Go — Any Go server
- Rust — Axum, Actix, Rocket
- Ruby — Rails, Sinatra
- Static — HTML/CSS/JS, Vite, CRA
- Dockerfile — Custom via
build_pack="dockerfile"
Links
License
MIT
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.