Builds and audits ecommerce pages with design tokens, product imagery, commerce mechanics, SEO planning, and publishing checks.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β or use 1-click editor setup below.
π‘ Paste the JSON block into your client's configuration file under mcpServers, then restart the application.
Inspect callable tools, capabilities, and parameters exposed to AI agents by Uxgen.
uxgen_briefTWO MODES, AND `improve` IS THE DEFAULT WHENEVER THE MERCHANT ALREADY HAS A STORE. `mode: "improve"` β their page is KEPT: the theme is inherited (`uxgen_theme` with `heriteDe`), `uxgen_audit` runs in conservation (`conserver: true`) and returns only what can be ADDED at an anchor or FIXED in place, each addition is inserted with `uxgen_piece` at the anchor the audit names, and a per-section diff (kept / changed / added) is shown before `uxgen_publier`. There is no Β« write the page Β» step. `mode: "rebuild"` β the construction path below. THE RULE WHEN `mode` IS NOT GIVEN: improve when `idea` says a site EXISTS (Β« existing Β», Β« already have Β», Β« keep Β», Β« don't rebuild Β», Β« j'ai dΓ©jΓ Β», Β« my store is at <URL> Β»); rebuild when a NEW store is the request (Β« build / create my store Β», Β« a brand-new site Β», Β« I don't have a store yet Β») or when asked for in those words (Β« rebuild Β», Β« from scratch Β»). A new-store request wins over the possessive: Β« build my store Β» = rebuild, Β« improve my store Β» = improve. The answer names the mode and the words that decided it. CALL THIS FIRST for any page or site you are about to build, before writing a single line. It takes the user's own sentence and returns (a) the full text of the design law, (b) the CONTRACT for that trade β what has to be present, and the objection each presence kills, (c) the commerce-kit verdict, which DECIDES which mechanics apply given the nature of the object, (d) the proposed theme, (e) the seven-step path. π¨ IT RETURNS NO PAGE PLAN AND NO BLOCK IDS, deliberately: a default plan once produced the same page for five unrelated trades. Structure, composition and the graphic gesture are YOURS; the page is written by hand. Calling this tool after you have started coding is good for one thing only: surveying the damage.
uxgen_themeTHE LOCKED GRAMMAR β call it right after `uxgen_brief` and BEFORE the first tag. Its CSS is pasted as is at the top of the page and is not retouched: that is what stops two dark grounds stacking. π THE COMMERCE KIT. Pass `commerce` and the kit is BUILT: you get back TWO VERSIONED URLS with their `integrity` β a `<link>` and a `<script>` to paste β plus the marking contract. The kit holds the buying path BY CONSTRUCTION (cart, drawer, quantity, total, free-shipping threshold, delivery date, a button that carries its amount) β it is the answer to a `uxgen_audit` that refused the transaction. β οΈ WHY URLS AND NOT BYTES. The two files are the SAME for every merchant β measured, not assumed: the kit carries no merchant data at all, your configuration lives in your page's `<script data-ux-commerce>` tag. Sending them as text cost 400 KB (~100 000 tokens) of YOUR context, every time, for a constant. Pass `kit: true` to get the bytes anyway β for an offline page, or one that must not fetch anything at runtime. Turns a brand color and an adjective into a COMPLETE set of CSS variables: palette (3 roles + 2 derived), font pair, radii, shadows, rhythm, motion. Works in OKLCH, holds WCAG contrast, and corrects luminance when a pair fails. CALL IT RIGHT AFTER uxgen_brief AND BEFORE THE FIRST TAG, then run it again as soon as the client gives their real color. Its CSS is pasted AS IS at the top of the page and never touched up: that is what stops two dark grounds from stacking. β οΈ YOU MUST PASS "color" OR "paletteId": "adjective" alone is REFUSED.
uxgen_imageTHE MATERIAL OF THE PAGE β scene OR packshot. Start with `emploi` and `categorie`: two words, and the prompt is written to the codes of that sector (background, light, human presence, set density, a quiet zone measured for the headline). π¨ IT DOES NOT ONLY DO PACKSHOTS: a free `prompt` + `cutout: false` produces THE SCENE (dining room, consulting room, workbench, shopfront) β the trades with no object to cut out need exactly that. `cutout: true` = the cut-out packshot chain. It writes the image to disk, cut out once, trimmed, framed to the ratio, in WebP, and returns the <img> tag with its real dimensions. LIGHTING IS GRADED AND MEASURED AUTOMATICALLY: do not write "soft light" or "cream background", you would switch back on what the chain switches off. The details of the grading, of the uses and of the categories are returned IN THE RESPONSE.
uxgen_renderRENDERS YOUR PAGE AND GIVES YOU THE IMAGES BACK, in this response β nothing is written to any disk. Send `html` (the page content, as text) or `url`. You get the first screen and the full page at 390 and 1440 px, as real images you must OPEN and LOOK AT before you change anything. A page that was never looked at is the first cause of an ugly site. β οΈ THE 8-FRAME SCROLL STRIP IS NOT RETURNED BY DEFAULT: measured at 698 KB for a text-only page, several MB for a real one. Ask for it with `bande: true` and it is served up to a hard weight cap, which the answer states. β± Expect 10 to 25 seconds. MAKES THE PAGE VISIBLE. Call it as soon as the page is assembled, and after every visual fix, BEFORE the audit. It opens the page in headless Chrome (no server left running) and WRITES TO DISK: the first screen alone, the full page, and a strip of 8 frames captured during a scripted scroll, at 390 and 1440 px. It also returns what a screenshot cannot show: horizontal overflow per width, approximate LCP, transferred weight, images without dimensions. THE PATHS IT RETURNS MUST BE OPENED WITH YOUR IMAGE-READING TOOL: this tool does not judge for you, it hands you the view. Writing a page you never look at is the number one cause of ugly sites.
uxgen_auditMEASURES A PAGE FOR REAL, IN HEADLESS CHROME, ON THIS SERVER β five widths (360, 390, 768, 1100, 1440), the computed styles, the scroll, and a robot that CLICKS the buying path. Send `html` (the page content, as text) or `url` (a live page). It writes NOTHING anywhere: it returns named gaps, each with the selector and the gesture that closes it, and NO score to chase. β± EXPECT 45 TO 65 SECONDS. Measured 25/08 on a 2 KB page: 47 s at five widths. This is not a hang β do not retry, and tell your user it is running. π§· `conserver: true` β THE AUDIT OF A PAGE YOU KEEP (default after a brief in `improve` mode). It returns only what can be ADDED (a missing mechanic, each with its ANCHOR: Β« after the buy box Β», Β« before the footer Β») or FIXED in place (a dead link, an image without dimensions, an illegible text). The rebuild families β canon sequence, grounds, radii, header grid, typography, signature gesture, animations, page length β are set aside, and the report says how many and which. It never points you to a tool this server does not run: an absent part is added with `uxgen_piece` at its anchor. MEASURES the page and RETURNS NAMED GAPS. A real audit in headless Chrome at 360, 390, 768, 1100 and 1440 px, on a block (`blockId`), an HTML file (`path`) or a URL (`url`). It returns the profile it used and every gap with its SELECTOR, its WEIGHT and THE GESTURE that closes it, most expensive first. π¨ AUDIT THE PAGE, NOT THE BLOCKS: colors, radii, breathing room and distance to the price only show up on the assembled page. π¨ NO SCORE, NO THRESHOLD, NO GO-AHEAD, and that is deliberate: nothing to clear, nothing to push up. YOU are the one who decides to ship, after LOOKING at the screenshots. Fix by the GESTURE the gap names, never by pushing a number. The response stays under 10,000 characters and SAYS what it leaves out; the full report is written next to the page in `_bloom-audit/`.
uxgen_ameliorerβ NOT AVAILABLE ON THIS HOSTED SERVER β do not call it, it will refuse. WHAT IT DOES WHERE IT RUNS: it ADJUSTS THE CSS OF ONE SECTION β one to five scoped rules β and NEVER ADDS A SECTION. It is not the tool that adds a missing mechanic. WHY IT REFUSES HERE: its judge is a VISION MODEL and no vision key is configured, and its engine is not deployed on this server; a tool that "improves" a page without looking at it would be inventing its corrections. TO IMPROVE AN EXISTING PAGE: `uxgen_brief` in `improve` mode, then `uxgen_audit` with `conserver: true` β it names what to ADD and where β and `uxgen_piece` at the anchor. π― THE ONLY EXTERNAL JUDGE IN THE PRODUCT, ~30 SECONDS BY DEFAULT. It is the only piece of the chain that says whether the page is BEAUTIFUL β uxgen_audit only says whether it is clean. At scope "pli" (THE DEFAULT) it judges the first screen at 390 px only: 2 to 3 vision calls, ~0.004 $. `portee: "page"` takes the whole page: ~50 calls, 20 to 40 minutes. HOW IT JUDGES: each section is captured ALONE and submitted to an external vision model that returns NO SCORE β what is wrong, what it costs, and the CSS gesture with its values. The gesture is applied, the section recaptured, and both images go back to the judge IN A RANDOMISED ORDER: if it does not pick the new one, THE GESTURE IS REVERTED. β LOOK AT THE before|after BOARDS it writes, with your image-reading tool, before you announce anything at all.
The uxgen MCP server supports a structured workflow for creating or improving ecommerce pages. It starts with uxgen_brief, which interprets the merchantβs request as either an improvement to an existing store or a rebuild for a new store. The response includes the applicable design rules, commerce requirements, theme proposal, and recommended sequence, but deliberately does not generate a page plan or block IDs.
For an existing store, the improvement path preserves the current theme and asks the audit to identify additions or in-place fixes. For a new store, the rebuild path applies the construction workflow. This distinction is decided from the wording of the request when no mode is supplied.
Call uxgen_theme after the brief and before writing the first page tag. It creates CSS variables for palette roles, typography, radii, shadows, spacing, and motion. A real color or paletteId is required; an adjective alone is rejected. The returned CSS is intended to be pasted unchanged.
uxgen_image creates either a scene or a cut-out product image. The emploi and categorie inputs guide sector-specific image generation, while a free prompt with cutout: false can produce environments such as a dining room or workbench. uxgen_packshot places a brand label onto a product photograph through a two-call detection and composition process.
After assembly, uxgen_render captures the first screen and full page at mobile and desktop widths. uxgen_audit measures five viewport widths, computed styles, page scrolling, and the buying path, returning named gaps rather than a score. The returned images must be inspected separately by the calling agent.
The uxgen MCP server includes tools for:
uxgen_piece.uxgen_demarrer and uxgen_poser.uxgen_seo.The commerce kit returns versioned <link> and <script> URLs plus an integrity value. It includes buying-path mechanics such as cart behavior, quantity, totals, free-shipping thresholds, delivery dates, and an amount-carrying button. Passing kit: true returns the files as bytes for offline use.
The supplied material describes a hosted remote server. Remote tools such as uxgen_demarrer and uxgen_poser exchange recipe or HTML text in tool calls rather than reading or writing the callerβs disk. Generated image URLs may point to https://www.uxgen.ai.
uxgen_publier does not publish files on this hosted server. It checks the exact HTML, requires the render result from uxgen_render, and returns a verdict and content for the caller to write. A rejected page is treated as a draft and should be written with a no-index marker rather than replacing the publishable page.
No installation command, client-specific setup, license, or environment variable is specified in the supplied material.
Audits can take roughly 45β65 seconds, while rendering generally takes 10β25 seconds. The audit is not a quality score or release gate. uxgen_ameliorer is unavailable on the hosted server, so existing-page fixes should use the improve brief, a conserving audit, and uxgen_piece at the reported anchor.
Free accounts expose 10 catalogue parts; paid plans expose all 173. SEO usage depends on plan allowance and platform budget. The SEO provider key remains on the uxgen server.
Factual signals from GitHub, npm, and our automated checks β not a rating.
No reviews yet β be the first to share how this listing worked for you.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/uxgen)<a href="https://allmcps.com/mcp/uxgen"><img src="https://allmcps.com/api/badge/uxgen?style=directory" alt="Uxgen on AllMCPs" /></a>