Deploy straight from your AI
Connect Tuqo as an MCP connector and any AI model creates sites, builds and deploys projects, attaches domains and rolls back versions. In plain language, without opening the panel.
https://mcp.tuqo.ru/mcp _tuqo-verify▋Three steps and the agent runs your deploys
Connect Tuqo
Web chats (claude.ai, ChatGPT) use OAuth: paste only the URL. CLI and IDE clients use a tqk_ key from the panel, or OAuth too (Claude Code and Cursor open the browser themselves).
Pick a project
With OAuth you sign in and choose the project on the Tuqo side; with a key, the project and the scope are fixed in the key.
Just ask the model
"Create a site and deploy this project." The agent calls deploy_files and returns the link.
{
"mcpServers": {
"tuqo": {
"url": "https://mcp.tuqo.ru/mcp",
"headers": { "Authorization": "Bearer tqk_xxx_yyy" }
}
}
} A client with OAuth support needs only the url; the headers line is for a project key.
A server that suggests the next step
Tools are half the job. The other half is how the server guides the agent: what to show the person, how not to re-upload media, how not to create duplicate deploys on a retry.
next_action in the response
Responses carry a hint for what to do next, and for sites a url: the live address to show the person. The agent does not have to guess from the documentation.
Edits without re-uploading media
get_manifest returns the hashes of the current files; in deploy_files unchanged files are passed as {path, sha256} references with no content. Photos never travel through the model's context.
Retries without duplicates
idempotency_key: a retry after a timeout returns the same deploy instead of creating a new one. Deletion needs confirm:true, and a deleted site stays in the trash for 24 hours.
OAuth with a choice of access
No key to paste: on the consent screen the person picks the project, the scope (readonly, editor or full), a connection name and a lifetime. Revoking is one click in the panel.
Advice right in the response
The recommendations field reports 14 site checks: a leaked key, localhost URLs, base64 images, a form that posts nowhere. The agent offers a fix; the person decides. What is checked →
No account? A draft
An agent publishes a draft without sign-up: it lives 24 hours and comes with a link to claim it into an account. The rules are shown to the person before they agree. Tuqo Drop →
Connect in one line
Send this sentence to your agent: it reads the instructions, adds the server, goes through OAuth and asks what to publish.
Read https://tuqo.dev/prompt.md and connect Tuqo
Full control of your deploys
Sites, deploys, domains, forms, analytics and gated access of a project, available to the agent as MCP tools.
Every tool has a human-readable title and MCP annotations. 18 only read
(readOnlyHint), 5 only add
something new, and 29 change, overwrite or delete
(destructiveHint), including what visitors see. MCP clients
use these hints to decide when to ask you for confirmation before a call.
Sites (10)
-
list_sitesread-only List sites -
create_siteadds Create site -
get_siteread-only Get site -
update_sitechanges Update site -
delete_sitechanges Delete site -
restore_sitechanges Restore deleted site -
list_trashedread-only List deleted sites -
set_site_enabledchanges Enable or disable site -
change_site_subdomainchanges Change site address -
cancel_site_subdomain_changechanges Cancel address change
Deploys (9)
-
deploy_fileschanges Publish site files -
deploy_sitechanges Publish site archive -
get_manifestread-only Get deploy manifest -
get_deploy_statusread-only Get deploy status -
list_deploysread-only List deploys -
get_logsread-only Get build log -
activate_deploychanges Make deploy live -
get_preview_urladds Get preview link -
delete_deploychanges Delete deploy
Domains and start (5)
-
set_custom_domainadds Attach custom domain -
verify_domainadds Verify custom domain -
list_domainsread-only List custom domains -
delete_domainchanges Detach custom domain -
whoamiread-only Get project and scopes
Forms (7)
-
get_forms_overviewread-only Get forms overview -
get_form_submissionsread-only List form submissions -
get_autoreplyread-only Get auto-reply settings -
set_autoreplychanges Configure auto-reply -
add_autoreply_fileadds Add lead magnet file -
remove_autoreply_filechanges Remove lead magnet file -
set_autoreply_deliverychanges Configure lead magnet delivery
Analytics (1)
-
get_site_statsread-only Get site analytics
Gated access (16)
-
get_site_accessread-only Get site access settings -
set_site_passwordchanges Set site password -
reveal_site_passwordread-only Reveal site password -
open_site_accesschanges Make site public -
set_site_email_accesschanges Gate site by email code -
set_site_subscribers_accesschanges Gate site for channel subscribers -
list_messenger_channelsread-only List messenger channels -
list_site_access_emailsread-only List allowed emails -
add_site_access_emailchanges Allow email address -
add_site_access_emailschanges Allow email addresses -
set_site_access_email_labelchanges Label allowed email -
remove_site_access_emailchanges Remove allowed email -
remove_site_access_emailschanges Remove allowed emails -
set_site_access_expirychanges Set access expiry -
set_site_access_openschanges Limit number of opens -
set_site_access_brandchanges Set login screen branding
Member sign-up (4)
-
set_site_members_accesschanges Gate site by member registration -
get_site_membersread-only List site members -
moderate_site_memberchanges Moderate site member -
set_site_documentschanges Set login screen documents
Form submissions, straight from the agent
Generated a site with a contact form? The agent already knows where to send it: the
create_site, get_site and
list_sites responses include
form_endpoint, a ready URL for the form's
action attribute.
What the agent does
- Takes
form_endpointfrom the site response - Adds a
<form>that POSTs to that URL - Deploys the site: the form accepts submissions right away
Works on every plan, including Free (10 submissions per month). The agent reads submissions with get_form_submissions; in the panel they are on the Forms tab, along with email delivery settings.
// from the get_site response:
{ "id": "a1b2…", "url": "https://shop.tuqo.ru",
"form_endpoint": "https://api.tuqo.ru/f/a1b2…" }
<form action="https://api.tuqo.ru/f/a1b2…"
method="post">…</form> What the AI can do, and what stays in the panel
A key or an OAuth connection is bound to one project: the model manages its sites, deploys and domains. Account and ownership actions happen in the panel.
Through AI (MCP or REST)
- Create, rename, delete and restore sites
- Deploy files or an archive, follow status and logs
- Roll back to earlier versions
- Turn serving of a site off and on
- Attach and verify custom domains
- Embed forms via
form_endpoint(on every plan) - Gate a site with a password, an email code or a Telegram/MAX channel subscription; keep the allowlist and moderate members
- Set up the auto-reply and a lead magnet, read submissions and visit stats
Only in the panel app.tuqo.dev
- — Creating and configuring projects
- — Issuing and revoking API keys and AI connections
- — Members, roles, ownership transfer
- — Moving or handing a site over to another project or user
- — Kept-versions settings and Git CD (repository links and webhooks)
- — Paid access setup and adding Telegram/MAX channels
- — Plan, billing and profile
The panel is in English and Russian, one account for both: the language switch is in the profile menu.
The agent reads these by itself
Send your AI one link and it finds the endpoint, the way to authenticate, the publishing rules and the list of tools on its own.
- prompt.md — connect in one line: “read it and follow it”
- mcp.tuqo.ru/.well-known/mcp.json — server card: endpoint, authentication, all MCP tools
- mcp.tuqo.ru — a GET returns the server's self-description in Markdown: endpoint, both auth methods, client configs
- SKILL.md — skill for Claude Code, Cursor, Codex: order of steps, rules, errors
- ai.md — setup for MCP clients and a draft without an account
- openapi.json — the REST API in OpenAPI 3.1
- llms.txt — Tuqo in brief, with answers safe to quote
- pricing.md — plans and limits, machine-readable, with approximate dollars and euros
- changelog.md — what's new
- tuqo.ru/llms-full.txt (in Russian) — the whole documentation in one file (in Russian)
- For AI assistants — when to recommend Tuqo and when not
Connect your AI
Claude, ChatGPT, Codex CLI, OpenCode, VS Code with Copilot and Kimi Code CLI sign in
over OAuth, with no key to paste. Claude Code, Cursor, Gemini CLI, Qwen Code, GigaChat
and other IDE extensions use a project key (Claude Code and Cursor can do OAuth too).
Easiest of all: send your agent the link
mcp.tuqo.ru and it gets ready-made
connection instructions. Pick your tool:
Claude on the web as a connector: OAuth sign-in, no key to paste
A connector in Developer Mode with OAuth sign-in
One claude mcp add command: a tqk_ key or OAuth
MCP in the IDE settings: URL plus an Authorization header
mcpServers in settings.json: httpUrl plus a header
mcpServers in the config: address plus an Authorization header
In your agent's code: an MCP client with URL and header
MCP in the Windsurf settings: URL plus an Authorization header
MCP servers in the Cline config: URL plus an Authorization header
MCP in the Continue config: URL plus an Authorization header
Context servers in Zed: URL plus an Authorization header
codex mcp add + codex mcp login: OAuth in the browser
An mcp block in opencode.json + opencode mcp auth
mcp.json in .vscode: type http + OAuth sign-in
kimi mcp add --transport http + kimi mcp auth
Compare all options →MCP server: frequently asked
What is the endpoint and transport? +
https://mcp.tuqo.ru/mcp, JSON-RPC 2.0 over Streamable HTTP (MCP protocol version 2025-06-18). A GET on https://mcp.tuqo.ru/ returns a Markdown self-description in English; the server card is at https://mcp.tuqo.ru/.well-known/mcp.json.
How does authentication work? +
Two ways. OAuth 2.1 with dynamic client registration: add the server, the client gets a 401 with WWW-Authenticate, registers itself and opens the browser; the person signs in to Tuqo and confirms the project, the scope and the lifetime. Or a project API key created in the panel, sent as Authorization: Bearer tqk_…
Which call should an agent make first? +
whoami. It returns the project, its name and the scopes of the current connection (readonly, editor or full).
Which calls will my client ask me to confirm? +
That is up to the client, and Tuqo gives it what it needs: every tool has a title and MCP annotations. 18 tools are marked readOnlyHint; 29 carry destructiveHint: true because they change, overwrite or delete something, including what visitors see and who the site lets in; 5 only add something new. Deleting a site or a domain also needs confirm:true in the call itself.
Is there a REST API with the same features? +
Yes: https://api.tuqo.ru/api/v1 with the same project keys. The OpenAPI 3.1 description is at https://tuqo.dev/openapi.json.
Are tool descriptions in English? +
Yes. Over MCP everything is in English: tool and parameter descriptions, instructions, error texts and publish recommendations. The instructions also give the Russian panel name of each plan in parentheses. Build logs follow the language of the site owner's account, so for a Russian-language account they come in Russian.
What does it cost? +
The MCP server is available on every plan, including Free. Paid features such as custom domains, previews, gated access and auto-reply follow your Tuqo plan; a 402 error names the plan that is needed. Prices are in rubles.
Is the server listed anywhere? +
In the official MCP registry as ru.tuqo/mcp and on Glama. The public repository with the server card, a Claude Code plugin and client configs is github.com/antiblef/tuqo-mcp.
Connect the platform to your agent
Free plan, one-minute setup, 52 tools in plain language.