Maysoor

How does Maysoor work?

Like you're five

1

You ask

You tell your smart friend (ChatGPT or Claude): “I want a nice house.”

2

It draws

Your smart friend draws the house on paper. That means it writes the code.

3

Maysoor builds

Maysoor takes the drawing and really builds the house on the internet.

4

The house gets an address

It gives you the address (a link), and anyone in the world can visit.

🏠 The house = your website or app📝 The drawing = the code the AI writes🔗 The address = the link you share with anyone

What do you do? Just three things

  1. Sign up for MaysoorOnce. One minute.
  2. Introduce ChatGPT or Claude to MaysoorGive it Maysoor's link and approve. Only once.
  3. Ask for what you want“Make a page for my shop…” — done. The link arrives in the chat.

No coding, no hosting, no files to touch.

For developers

ChatGPT · Claude
MCP client
OAuth 2.1 + MCP
HTTPS
Maysoor
MCP server
deploy
Isolated container per app
static · node · python
wildcard TLS
Visitors
name.apps.thara.cloud
What it isA remote MCP server that gives AI assistants a deploy target: it turns tool calls into apps running in isolated containers on HTTPS links.
ProtocolMCP — Streamable HTTP (stateless, JSON) · https://mcp.thara.cloud/mcp · plus legacy HTTP+SSE: GET https://mcp.thara.cloud/sse
AuthOAuth 2.1: Dynamic Client Registration (RFC 7591), PKCE S256, resource indicators (RFC 8707), protected-resource metadata (RFC 9728) · or Authorization: Bearer mcp_…
Toolsdeploy_app update_app_files list_apps get_app get_app_logs list_app_files read_app_file stop_app start_app delete_app
Runtimesstatic (nginx), Node.js 24 with npm, Python 3.12 with pip.
App contractListens on $PORT (8080) · code is read-only · persistent data in /data
IsolationOne container per app: unprivileged user, read-only root filesystem, no Linux capabilities, 256 MB and 0.5 CPU. No access to the host or internal services; port 25 blocked.
DeploysDependencies install in a throwaway container, then the version is swapped, with automatic rollback if the new one fails. Logs via get_app_logs.
RoutingCaddy + wildcard TLS: https://<name>.apps.thara.cloud

Try it from a terminal

npx @modelcontextprotocol/inspector --cli https://mcp.thara.cloud/mcp --transport http --header "Authorization: Bearer mcp_YOUR_KEY" --method tools/list

Create a key in your dashboard. Full details in the guide.