This guide is the mcp-use entry from our seven-framework deploy comparison. We shipped the same example on Manufact Cloud: an echo tool and a greet_widget that returns a MCP Apps view. Below is the deploy path we used; the reference server code is in the second half if you want to reproduce the example.
If you want to run the same deploy pipeline on your repo, connect it in the dashboard. Open the dashboard.
Deploy to Manufact
Manufact Cloud was built to run mcp-use servers natively: the framework detector recognizes mcp-use as a dependency and the preset wires the right build/start commands automatically.
Push the repo to GitHub
Make sure resources/greet-widget/widget.tsx is committed: mcp-use bundles it at server boot from the repo, not from any build artifact.
Open the new-server flow
Go to manufact.com/cloud/<your-org>/servers/new and pick Deploy from GitHub. The framework detection step labels the repo mcp-use SDK.
Confirm build and start
The preset fills:
- Build command:
npm run build - Start command:
npm start - Port:
3000
Leave them. The cloud's generated Dockerfile installs deps (including mcp-use's Vite peer for widget bundling), runs tsc, and runs node dist/index.js.
Click Deploy
The first build is 60–120 seconds: mcp-use pulls down its widget toolchain on npm install. Once you see Server status: running, the URL is live.
Open the inspector at the live URL
Every mcp-use deployment ships a built-in inspector at /inspector:
Call greet_widget from the inspector's tools panel: the widget renders inline. You're seeing exactly what ChatGPT or Claude will render when they call your server.
Smoke-test the protocol
Grab the mcp-session-id header from the response and reuse it for tools/list. mcp-use is stateful by default; if your client can't initialize, set statelessHttp: true on the constructor and redeploy.
Example repo: manufacts/mcp-detect-mcp-use
Live /mcp: wild-forge-dj9bw.run.mcp-use.com/mcp — serverInfo.name is mcp-detect-mcp-use (Manufact server status: running).
Public chat for free
Manufact's per-server Public Chat turns your deployment into a hosted conversational UI at https://<slug>.run.mcp-use.com/chat. Toggle it on from the server's Public Chat tab: useful for sharing the widget with non-technical users without writing a frontend.
The steps above are what we used for the live demo. Your repo can use the same GitHub deploy flow. Open the dashboard.
Reference server
Use this section if you are following along with the same example. If you already have an MCP app to deploy, the GitHub steps above are enough.
What we deployed
- An MCP server with
MCPServer.listen()and a built-in inspector - An
echotool that returns text via thetext()helper - A
greet_widgettool whose response is a React widget rendered in the host
Project setup
tsconfig.json:
The resources/ directory at the repo root is not included in tsc: mcp-use bundles it separately at runtime via Vite, so it's free to use JSX without leaking React types into your server build.
The server
src/index.ts:
The widget
resources/greet-widget/widget.tsx:
useWidget() returns the props sent in the tool's widget({ props }) call, plus theme, isPending, and a few helpers for client-driven state. Theming is built in.
What the host sees
When you call tools/list, mcp-use auto-attaches all the _meta keys hosts care about:
resources/list includes the auto-bundled HTML resource:
You wrote a tool definition, a React component, and one helper call inside the handler. mcp-use produced all of the above.
Run it
Boot logs print every tool, every widget, and the inspector URL:
The inspector is a full MCP client at /inspector with BYOK chat: call your tools and see the widget render in the same window.
When to reach for it
You want the lowest possible distance between "I have an idea for a widget" and "users can call it." The widget DSL is opinionated but unobtrusive: the React component is just a React component, and you can drop down to manual _meta whenever you need protocol-level control. For teams shipping multiple widgets a week, this is what we built mcp-use for.
The full comparison across all seven frameworks is in Deploying Seven MCP Frameworks.









