Skip to main content
mcp-c is in open beta, and free to use. Share feedback via GitHub issues or Discord.

What is MCP-Cloud?

MCP-Cloud (mcp-c) is a fully managed cloud platform for hosting mcp-agents, apps, and mcp servers.

Key Benefits

  • One runtime for any MCP application – deploy durable mcp-agent workflows, FastMCP servers, or ChatGPT App backends. Everything is exposed as an MCP server at https://<unique_id>.deployments.mcp-agent.com (Cloud overview).
  • Temporal-backed execution – long-running tools and workflows run on Temporal with retries, pause/resume, and human input support (Long-running tools).
  • Managed secrets & authentication – manage secrets for both you, as the developer, and your users. Allow users to specify their own keys, and choose bearer or unauthenticated access today (OAuth coming soon) (Manage secrets and Deployment auth).
  • Observability built in – stream logs, forward traces, and inspect workflow history directly from the CLI (Observability).
  • Easy client install – use mcp-agent install or mcp-agent cloud configure to wire the deployed server into Claude Desktop, Cursor, VS Code, or ChatGPT Apps (Use a deployed server).
With that context, the steps below show exactly how to deploy.

1. Authenticate

uvx mcp-agent login
The CLI opens the Cloud dashboard so you can generate an API token. Credentials are stored under ~/.mcp-agent/.

2. Deploy

From the directory containing your mcp_agent.config.yaml (or pass --config-dir):
uvx mcp-agent deploy my-agent
During deployment you’ll classify secrets as deployment (stored securely) or user (provided later via mcp-agent cloud configure).
directory/
├── main.py
├── mcp_agent.config.yaml
└── mcp_agent.secrets.yaml
After a successful deploy you’ll receive an endpoint like:
https://<unique_id>.deployments.mcp-agent.com

3. Connect from clients

Your cloud deployment is a standard MCP server. Use any MCP client:
  • Claude Desktop
  • Python
uvx mcp-agent install https://<unique_id>.deployments.mcp-agent.com \
  --client claude_desktop \
  --name research-buddy
Replace claude_desktop with vscode, cursor, chatgpt, claude_code to install in those clients instead.

Monitor & manage

  • Logs
  • Servers
  • Workflows
uvx mcp-agent cloud logger tail my-agent --follow
uvx mcp-agent cloud logger tail my-agent --grep "ERROR" --since 5m

Example: 👋 Hello World agent

main.py
import asyncio
from typing import Optional

from mcp_agent.app import MCPApp
from mcp_agent.agents.agent import Agent
from mcp_agent.core.context import Context as AppContext
from mcp_agent.workflows.llm.augmented_llm_openai import OpenAIAugmentedLLM

# Create the MCPApp, the root of mcp-agent.
app = MCPApp(name="hello_world", description="Hello world mcp-agent application")

# Hello world agent: an Agent using MCP servers + LLM
@app.tool()
async def finder_agent(request: str, app_ctx: Optional[AppContext] = None) -> str:
    """
    Run an Agent with access to MCP servers (fetch + filesystem) to handle 
    the input request.
    """
    agent = Agent(
        name="finder",
        instruction=(
            """You are a helpful assistant. Use MCP servers to fetch and read 
            files, then answer the request concisely."""
        ),
        server_names=["fetch", "filesystem"],
        context=app_ctx,
    )

    async with agent:
        llm = await agent.attach_llm(OpenAIAugmentedLLM)
        result = await llm.generate_str(message=request)
        return result

async def main():
    async with app.run() as agent_app:
        # Run the agent
        readme_summary = await finder_agent(
            request="Please summarize the README.md file in this directory.",
            app_ctx=agent_app.context,
        )
        print(readme_summary)


if __name__ == "__main__":
    asyncio.run(main())
Deploy with:
uvx mcp-agent deploy hello-world

Learn more