manufact-cloud (v1.0.0)

Manufact Cloud is a platform for deploying and managing MCP (Model Context Protocol) servers. This server exposes a composable, minimal set of tools over the Manufact Cloud API covering organizations, servers, deployments, build and runtime logs, and gateway analytics. Tools are intentionally narrow and each returns a curated field allowlist — call atomic sibling tools when you need more detail. Entities are addressed by ID: `organizationId` comes from `list_organizations`, `serverId` from `list_servers`, and `deploymentId` from `list_deployments`.

https://mcp.manufact.com/mcp

Installation Guide

Choose your preferred MCP client

Install in Claude Code

Run this command in your terminal:

claude mcp add --transport http "manufact-cloud" https://mcp.manufact.com/mcp

Install in Cursor

Click the button below to add this MCP server to Cursor:

Open in Cursor

Or add manually: Settings → MCP → Add server

Install in VS Code

Click the button below to add this MCP server to VS Code:

Open in VS Code

Or add manually: Settings → MCP → Add server

Install in VS Code Insiders

Click the button below to add this MCP server to VS Code Insiders:

Open in VS Code Insiders

Or add manually: Settings → MCP → Add server

Connect with ChatGPT

  1. Enable Developer Mode: Settings → Connectors → Advanced → Developer mode
  2. Import this MCP server: Go to Connectors tab and add: https://mcp.manufact.com/mcp
  3. Use in conversations: Choose the MCP server from the Plus menu

Primitives

Tools (20)

list_organizations

List organizations the authenticated user can access. Returns minimal rows (id, name, slug, role). This is the source of truth for `organizationId`, which every other tool in this server requires. Use get_organization_stats for counts and list_organization_members for the member roster.

get_organization_stats

Get summary stats for an organization: server count, deployment count, gateway tool-call count, and distinct session count. Does not return the server roster — use list_servers for that.

invite_org_member

Send an invitation to join an organization with a specified role.

list_org_invitations

List pending invitations for an organization.

cancel_org_invitation

Cancel a pending invitation.

list_servers

List MCP servers in an organization as compact rows (id, slug, name, status, tags). Uses native offset pagination. This is the source of truth for `serverId`; use sort and pagination to inspect the roster. Use get_server for full details including repo, get_server_domain for the main domain, and list_deployments (pass serverId) for history.

get_server

Get core details for one MCP server (id, slug, name, description, tags, status, latestDeploymentStatus, activeDeploymentId, repoFullName, productionBranch, deploymentCount). Does not include the full deployment history, domains, or internal provider config — use list_deployments (pass serverId) and get_server_domain for those.

update_server

Update an existing server's deploy configuration (start command, build command, port, Dockerfile path, root dir), auto-deploy triggers (watch paths, deploy branch patterns, wait for CI), and/or metadata (name, description, tags, production branch). Deploy-config fields are merged into the server's existing config — only the fields you pass are changed, the rest are preserved. Config changes do not take effect until the next deployment, so pass `redeploy: true` to trigger one immediately (or call the `redeploy` tool afterwards). Common use: fix a broken start command (e.g. set `startCommand` to a uvicorn ASGI command for a Python MCP server) and redeploy.

get_server_domain

Get the main custom domain and verification status for a server (domain, verified, status, sslStatus, cnameTarget, verificationErrors). Note: the main server domain lives on the server — preview domains live on individual deployments.

list_deployments

List deployments as compact rows (id, name, status, serverId, gitBranch, createdAt). Paginated server-side; pass `serverId` to scope to a single server's deployments and optional `status` to filter. This is the source of truth for `deploymentId`; filter by `status` (e.g. 'failed') to narrow down when the user describes a deployment rather than naming it. Use get_deployment for details, get_deployment_build_logs/get_deployment_runtime_logs for logs.

get_deployment

Get full details for one deployment: core fields (id, status, serverId, domain, port, timestamps, error, mcpUrl), git commit info, and source config (repo, branch, rootDir, runtime, buildCommand, startCommand). Use get_deployment_build_logs / get_deployment_runtime_logs for log streams.

redeploy

Trigger a new deployment of an existing Cloud server by serverId. Use this only when the user identified a specific existing Cloud server. For deploying a GitHub repo or the current project, use deploy instead.

deploy

Deploy a GitHub repository to Manufact Cloud. Use this when the user asks to deploy the current repo/project. Before calling, infer repoFullName from the local git remote when possible. The tool checks whether the repo is already connected to a Cloud server in the organization: if yes, it redeploys that server; if no, it creates a new GitHub-backed server and starts the initial deployment. This tool does not accept serverId; use redeploy for a known existing server.

stop_deployment

Stop a running deployment. Takes the deployment offline; to bring the server back up, call the redeploy tool to trigger a new deployment for an existing server.

get_deployment_runtime_logs

Get runtime logs for a deployment. Defaults to the most recent 100 lines — pass `lines` (1-5000) to change the tail size. Pass `query` to filter the fetched tail to lines containing a substring (case-insensitive) — useful for finding specific errors or messages without pulling huge tails.

get_deployment_build_logs

Get build logs for a deployment. Defaults to the last 100 lines — pass `lines` (1-5000) to change the tail size, or pass `offset` (character-offset pagination) to resume streaming an in-flight build from a previous call's `nextOffset`. `lines` takes precedence over `offset` if both are set.

get_observability_overview

Observability overview for one server: totalEvents, successEvents, errorEvents, avgDuration (ms), avgRequestSize, avgResponseSize aggregated over a time window. Use list_server_events for the underlying request stream, and get_server_tool_breakdown / get_server_client_breakdown for per-tool and per-client splits.

list_server_events

Gateway request log for a server, cursor-paginated (newest first). Each row includes method, path, status code, duration, client name/version, country, and error details when present. Uses cursor pagination, not offset: call again with cursorTime set to the previous response's nextCursor to page back further in time.

get_server_client_breakdown

Breakdown of which MCP clients are connecting to a server (clientName, clientVersion, protocol, sessionCount, requestCount) plus a timeline of request counts per client per bucket. Pair with get_server_tool_breakdown to see which tools those clients are calling.

get_server_tool_breakdown

Breakdown of tool/resource/prompt calls on a server over the last 24 hours, bucketed hourly. Returns aggregated per-method totals with per-bucket counts. Use get_server_client_breakdown for the who, and list_server_events for the raw call stream.

Resources (5)

manufact://infomanufact_info

Informational resource about Manufact Cloud platform, available tools, and external links

ui://widget/client-breakdown.htmlclient-breakdown

Breakdown of which MCP clients are connecting to a server, with a timeline of requests per client.

ui://widget/gateway-events.htmlgateway-events

Recent gateway request log for a server.

ui://widget/gateway-metrics.htmlgateway-metrics

Displays aggregated gateway metrics for a server over a time window.

ui://widget/tool-breakdown.htmltool-breakdown

Breakdown of tool/resource/prompt calls on a server over time.