Build State Studio
Provides live price lookup and refresh for PC components through Naver Shopping, falling back to deterministic estimated prices when credentials are missing or the lookup fails.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Build State StudioIs my current build ready for final assembly?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Build State Studio
A shared 3D PC assembly workspace where people and AI agents inspect, simulate, and repair the same build.
Built for The WebMCP Challenge, Build State Studio turns a visual PC configurator into an agent-native application. The interface and its 16 WebMCP tools share one deterministic domain model, so an agent can reason from structured hardware state instead of guessing from pixels or manipulating the DOM.
Live demo · WebMCP Challenge · MIT License

The problem
PC building is a spatial and systems problem. A valid build depends on case dimensions, motherboard form factor, CPU socket, memory generation, GPU and radiator clearance, PSU capacity, cable types, connector occupancy, and airflow direction.
A conventional visual configurator hides most of that meaning inside controls and rendered geometry. An AI agent must infer state from the screen, discover interaction targets, and hope every click had the intended effect. This becomes unreliable precisely when the task is most useful: diagnosing a conflict and coordinating several dependent changes.
Build State Studio exposes the underlying assembly model directly through WebMCP. Humans keep the tactile visual workflow; agents gain a typed, inspectable, and safe action surface.
Related MCP server: SymKit
What people and agents can do together
Consider a build with a long GPU and a front-mounted radiator that occupy the same physical clearance zone:
The person sees the collision highlighted in the 3D workspace.
The agent calls
get_build_stateandvalidate_buildto inspect the authoritative topology and diagnosis.The agent discovers legal alternatives with
get_available_mountsrather than guessing a mount ID.The agent calls
simulate_changesto preview moving the radiator without touching the live build.After the plan validates, the agent commits the move with
move_component.The 3D scene, readiness status, activity history, persistence layer, and undo state update together.
The person can continue manually or undo the agent's latest safe action.
This is the core idea: WebMCP is not a chat layer beside the product. It is another trusted way to operate the product's real domain commands.
Why WebMCP matters here
Without WebMCP | With Build State Studio's WebMCP surface |
Reconstruct the build from pixels and labels | Read placements, cables, fan configuration, issues, and revision as structured data |
Guess component, connector, and mount identifiers | Discover valid IDs and compatibility metadata from read-only tools |
Apply a sequence and hope intermediate steps succeed | Simulate the entire sequence atomically before committing |
Mutate the interface through fragile selectors | Reuse the same guarded command layer as the GUI |
Risk undoing newer human work | Permit agent undo only when no later topology change would be lost |
The result is faster and more reliable task completion while keeping the human-visible workspace authoritative.
Try the core flow
Run locally
Requirements: Node.js 20.19+ or 22.12+ and npm.
npm install
npm run devOpen the local URL printed by Vite and select Auto fill build. The app displays a reviewer simulation panel when the browser does not expose WebMCP, so the read, validate, simulate, and move flow remains demonstrable in a standard browser.
Run with a WebMCP agent
Use either:
ChatGPT's in-app browser, which supports WebMCP; or
a WebMCP-enabled version of Chrome with
chrome://flags/#enable-webmcp-testingenabled and the browser restarted.
Open the app, auto-fill a build, and give the agent this task:
Inspect this PC build. If it is incomplete or conflicted, discover the available parts and mounts, simulate the smallest safe fix, apply it, and validate the result. Do not replace the GPU.
Useful follow-ups:
“Which required power cables are missing? Connect them using connector IDs you discover from the app.”
“Compare the available case profiles before changing the case.”
“Disconnect the GPU power cable, explain the readiness change, then undo your action.”
“Check the current airflow layout and correct any fan facing the wrong direction.”
The header reports whether all 16 tools registered successfully. Chrome DevTools can also show the registered WebMCP tools under the Application panel.
WebMCP tool surface
Tools are registered with document.modelContext.registerTool() using strict object schemas with additionalProperties: false. Read operations are side-effect free; mutations go through guarded domain commands.
Inspect and reason
Tool | Purpose |
| Read placements, connections, fan settings, activity, revision, and undo availability |
| Discover component IDs, dimensions, power data, compatibility, and typed connectors |
| Compare case dimensions, supported form factors, mounts, clearances, and fan guidance |
| Find compatible, unoccupied mounts for the active case and optional component |
| Return |
Simulate and act
Tool | Purpose |
| Evaluate a typed sequence atomically without changing live state |
| Install a catalog component in a compatible free mount |
| Move an installed component to a compatible free mount |
| Remove a component and dependent cables or fan configuration |
| Connect compatible output and input connectors |
| Remove a cable by its discovered connection ID |
| Set an installed fan to |
| Change the active case through the shared command path |
| Fill compatible empty mounts deterministically |
| Clear non-case components only with explicit confirmation |
| Undo the latest agent mutation only when it is still safe |
Architecture
flowchart LR
Human[Human controls] --> Commands[Shared domain commands]
Agent[WebMCP agent] --> Tools[16 typed tools]
Tools --> Commands
Tools --> Simulation[Pure atomic simulation]
Simulation --> Constraints[Compatibility and readiness engine]
Commands --> State[Authoritative build state]
State --> Constraints
State --> Scene[React Three Fiber scene]
State --> History[Activity and stale-safe undo]
State --> Storage[Validated local persistence]Every live topology change passes through commitDomainAction or commitDomainActions. That boundary applies domain guards, records the actor and affected components, advances a monotonic topology revision, and stores the snapshot needed for safe undo. simulate_changes uses the same pure transitions against a cloned state and rolls the whole projection back if any action fails.
The GUI, 3D mount interactions, imported build validator, and WebMCP tools therefore cannot drift into separate interpretations of compatibility.
Product capabilities
Interactive 3D assembly with orbit controls, mount selection, collision highlighting, airflow visualization, and recoverable scene errors
Six case profiles ranging from compact Mini-ITX systems to ATX and full-tower layouts
A curated component catalog covering cases, motherboards, CPUs, GPUs, memory, storage, cooling, fans, and power supplies
Compatibility checks for physical clearances, motherboard form factor, CPU socket, memory generation, GPU/radiator overlap, GPU cable space, PSU capacity and connectors, and airflow
Readiness assessment that separates blocking conflicts from missing components, missing power connections, and non-blocking warnings
Atomic multi-action simulation, human undo/redo, and stale-safe agent undo
Validated versioned JSON import/export and local persistence
English and Korean interface with locale-aware KRW price display
Optional Naver Shopping price refresh during local development, with catalog estimates as a fallback
Responsive layouts for desktop, tablet, and mobile
Safety and reliability
Agent access is deliberately constrained:
Tool inputs reject unknown fields and invalid enum values.
IDs must be discovered from the current catalog, case profile, or build state.
Mount occupancy, physical fit, platform compatibility, connector direction, connector type, and connector reuse are enforced below both UI and agent actions.
Simulations never mutate the live store.
clear_buildrequiresconfirm: true.Agent undo is rejected if a later human or agent change could be overwritten.
Imported JSON is validated before it can replace the active build.
Registration and invocation outcomes are recorded in in-memory telemetry for runtime diagnostics.
Development
# Install dependencies
npm install
# Start the Vite development server
npm run dev
# Run the test suite once
npm test
# Type-check and create a production build
npm run build
# Preview the production build
npx vite previewOptional live price lookup
The local Vite server and preview server expose /api/prices. To enable Naver Shopping results, provide these environment variables before starting the app:
NAVER_CLIENT_ID=your_client_id
NAVER_CLIENT_SECRET=your_client_secretCredentials remain server-side. If they are absent or the lookup fails, the interface continues to use deterministic estimated prices.
Verification
npm test
npx tsc -b
npm run buildThe automated suite covers domain command invariants, compatibility constraints, readiness assessment, catalog and case discovery, strict WebMCP schemas, tool registration, read purity, connection parity, atomic simulation rollback, persistence validation, scene transforms, asset integrity, and UI regressions.
Automated tests mock the browser WebMCP API. Before publishing a release, also exercise the deployed app in ChatGPT's in-app browser or WebMCP-enabled Chrome and record the successful client and tool sequence.
Project structure
src/
app/ Application shell and runtime status
components/build/ Human build, validation, activity, and review controls
components/scene/ React Three Fiber scene and component renderers
domain/ Components, cases, commands, constraints, and simulation
i18n/ English/Korean strings and locale helpers
scene/ Mount transforms, layout, camera, and model registry
store/ Shared Zustand state and validated persistence
webmcp/ Tool schemas, registration, implementations, and telemetry
server/ Optional Naver Shopping price adapter for Vite
public/assets/ GLB assets, manifests, validation reports, and attribution
docs/ Implementation notes and screenshots
tests/ Repository-level integrity testsTechnology
React 19 and TypeScript
Vite
React Three Fiber, Drei, and Three.js
Zustand
Vitest
WebMCP imperative API
Prototype scope
Build State Studio is a hackathon prototype, not a substitute for manufacturer documentation or a professional system integrator. The catalog is intentionally bounded, prices can be estimates, and some case geometry is represented by simplified clearance envelopes. The architecture keeps catalog data, case profiles, mounts, constraints, commands, and rendering separate so more manufacturers, components, and higher-fidelity geometry can be added without changing the human-agent collaboration model.
License and asset attribution
The source code is released under the MIT License. Third-party and reconstructed visual assets retain their own license and attribution notes under public/assets/**/ATTRIBUTION.md.
WebMCP resources: specification · Chrome developer guide · tool security guidance
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
No tool schema history has been recorded yet.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Task and planning workspace for humans collaborating with AI agents
MCP server for the Fail Modes taxonomy — a knowledge base of AI system failure modes
MCP Hub: AI service discovery, per-user OAuth, and multi-service workflow orchestration
Read-only MCP over an agentic SLR workspace with per-claim citation verification
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceAn MCP server that extends AI coding assistants with deterministic, algorithmic capabilities such as code analysis, fault localization, and formal verification, enabling an autonomous engineering team within the IDE.MIT
- AlicenseBqualityBmaintenanceMCP server for symbolic computation that enables AI agents to perform step-by-step derivations, transform formulas, and verify results with full provenance, combining natural language with formal mathematical operations.4110Apache 2.0
- AlicenseNot gradedqualityBmaintenanceAn MCP server enabling AI-driven CAD automation for SolidWorks at the feature level, converting intent into CAD-neutral IR and compiling it into concrete operations. It provides engineering-semantic tools and a deterministic compiler, bridging any MCP-capable AI client to SolidWorks via COM.AGPL 3.0
- AlicenseNot gradedqualityCmaintenanceEnables AI models to automate SolidWorks CAD at the feature level through MCP, including building parts from DXF/DWG drawings and reproducing existing parts via a deterministic compiler.AGPL 3.0
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/leechleech04/webMCP-project'
If you have feedback or need assistance with the MCP directory API, please join our Discord server