{"name":"com.sketchxflow/mcp","slug":"sketchxflow-mcp","title":null,"description":"Design websites, apps and logos with SketchXFlow — and brief its development team.","url":"https://mcp.market/server/sketchxflow-mcp","rating":null,"grade":"C","score":58,"certified":false,"status":"active","category":"media","tags":["media"],"presence":{"score":17,"stars":null,"forks":null,"downloads_week":530,"last_push_at":null,"license":"MIT"},"uptime":null,"claimed":false,"transport":"npm","callable_via_gateway":false,"default_price_micros":0,"repository":"https://gitlab.com/kriyax-labs/sketchxflow","website":"https://sketchxflow.com/mcp","version":"0.22.0","remotes":[],"packages":[{"registryType":"npm","identifier":"@sketchxflow/mcp","version":"0.22.0","transport":{"type":"stdio"},"environmentVariables":[{"description":"Your SketchXFlow API key (sk_live_…), from sketchxflow.com → Account → API keys.","isRequired":true,"format":"string","isSecret":true,"name":"SKETCHXFLOW_API_KEY"},{"description":"API base URL. Defaults to https://sketchxflow.com; only set this to point at a staging server.","format":"string","name":"SKETCHXFLOW_API_URL"}]}],"tools":[{"name":"sketchxflow_add_image","description":"Insert an image into an existing design — a poster, creative, or any page. Either AI-GENERATE one from `prompt` (costs coins, respects the project's AI-image toggle) OR drop in an existing image by `image_url` (a public http(s) URL). Optional `placement` positions it ('top right', 'center', 'bottom left', …) — it goes in as a movable overlay you can reposition/resize afterward with sketchxflow_edi","write_action":true,"price_micros":0,"input_schema":null},{"name":"sketchxflow_brand_kits","description":"List the brand kits (saved brand identities — name, palette, fonts, voice) in your account, to attach to a launch kit via brand_kit_id.","write_action":false,"price_micros":0,"input_schema":null},{"name":"sketchxflow_check_job","description":"Pick up a generation that was still running when the tool call returned. Pass the job_id from a '⏳ Still …' reply; this waits for it and returns the finished result, or reports how far along it is.","write_action":false,"price_micros":0,"input_schema":null},{"name":"sketchxflow_clarify","description":"Use BEFORE designing when the brief is thin. Send the user's latest message (and the running `vision` + `history` from prior turns); get back a reply to relay, the updated `vision` board, `ready` (true when there's enough to design), and `missing` topics. When ready, the response includes `design_prompt` — pass that to sketchxflow_design_page. Free. Loop this with the user one question at a time.","write_action":false,"price_micros":0,"input_schema":null},{"name":"sketchxflow_create_animation","description":"Generate a motion-graphics ANIMATION from a brief — a branded intro / logo reveal / kinetic-typography sting, or a product demo. It becomes a self-contained, auto-playing motion page (timeline JSX). Optionally GROUND it on an existing project (`source_project_id` — its pages render to REAL screenshots that animate into the video), a logo (`source_logo_id`), and/or a live URL. Async (~1–4 min); the","write_action":true,"price_micros":0,"input_schema":null},{"name":"sketchxflow_create_logo","description":"Design a brand LOGO from a name + brief — a symbol mark plus wordmark, lockups, and favicons. Optionally ground it on an existing project so it inherits that brand's palette/fonts. Async; streams progress (~1–3 min). Returns a displayable logo image URL you can drop into a design with sketchxflow_add_image(image_url=…).","write_action":true,"price_micros":0,"input_schema":null},{"name":"sketchxflow_design_creative","description":"Generate a fixed-canvas graphic — a flyer, poster, social post/story, or an AD creative for Meta / Instagram / Google (feed, story, reel, leaderboard, rectangle, skyscraper, mobile banner, billboard…) — from a brief. Pick the placement via `format`. Returns a preview URL and a rendered PNG. This is for STATIC creatives, distinct from sketchxflow_design_page (which builds websites/app screens). Tak","write_action":false,"price_micros":0,"input_schema":null},{"name":"sketchxflow_design_email","description":"Generate a responsive, client-safe HTML email — newsletter, welcome, promotional, announcement, transactional, or event invite — from a brief. Uses email-safe rules (table layout, inline CSS, 600px column) so it renders in Gmail / Apple Mail / Outlook. Returns a preview URL and a rendered PNG; pull the HTML with sketchxflow_get_code (slug 'home'). Distinct from sketchxflow_design_page (websites) a","write_action":true,"price_micros":0,"input_schema":null},{"name":"sketchxflow_design_page","description":"Generate ONE polished page. Omit project_id to start a NEW project (creates the project + its first page). Pass an existing project_id to ADD a page to that project (brand-consistent).","write_action":false,"price_micros":0,"input_schema":null},{"name":"sketchxflow_edit","description":"Apply a natural-language change to one page — e.g. 'make the hero darker', 'tighten the pricing section', 'swap the testimonial for a logo wall'. Brand-locked: edits stay on-palette/on-type. Returns the updated page; call sketchxflow_get_code for the new HTML.","write_action":false,"price_micros":0,"input_schema":null},{"name":"sketchxflow_experimental_discuss","description":"One turn with the art director WITHOUT applying anything: pass what the user said and get back a revised proposal for the next layer. Use it when they want to change direction, ask a question, or think out loud before committing — 'warmer than that', 'what would you do instead?', 'can we skip the imagery for now?'. Free, instant, no coins. Loop this with the user, then apply with sketchxflow_exper","write_action":false,"price_micros":0,"input_schema":null},{"name":"sketchxflow_experimental_layer","description":"Stack ONE layer onto the design and return what it put down plus the director's next proposal. This is the step that costs coins. A SECTION layer is small and quick (a few seconds, ~3 coins) because it rewrites only that section; a whole-page finishing pass rewrites the document and costs more. The very first call always STAGES the page (the section shells) whatever else you pass.","write_action":false,"price_micros":0,"input_schema":null},{"name":"sketchxflow_experimental_stack","description":"Read a layered design's build: which sections exist, what is stacked inside each one, which whole-page passes have run, and what the director proposes next. Use it to get the section ids before targeting a layer.","write_action":false,"price_micros":0,"input_schema":null},{"name":"sketchxflow_experimental_start","description":"Open an EXPERIMENTAL DESIGN session: one surface, built the way a designer builds one — a SECTION at a time, each section STACKED up a layer at a time (a ground plane, shapes over it, the copy, imagery, effects), then whole-page passes at the end to make the sections agree. Returns the SECTION PLAN plus the art director's opening reply and the first layer proposal, for you to relay to the user. Fr","write_action":false,"price_micros":0,"input_schema":null},{"name":"sketchxflow_generate_from_plan","description":"Generate every page of a project's saved site plan, in one consistent pass. This is the step that costs coins and takes time (a few minutes, scaling with the page count); streams progress. Call it once the user is happy with the plan from sketchxflow_plan / sketchxflow_refine_plan — building is where changes get expensive, so settle the plan first. Then pull each page's HTML with sketchxflow_get_c","write_action":false,"price_micros":0,"input_schema":null},{"name":"sketchxflow_get_code","description":"Return the full HTML (Tailwind inline) of a generated page so you can re-implement or adapt it into the user's codebase (React/Next/Vue/plain HTML). Call after sketchxflow_design_page / sketchxflow_edit.","write_action":false,"price_micros":0,"input_schema":null},{"name":"sketchxflow_get_image","description":"Return a rendered screenshot (PNG) of a page so you can SEE how the design actually looks. Use it to visually verify or critique a design after sketchxflow_design_page / sketchxflow_design_creative / sketchxflow_edit, before implementing or iterating. slug 'home' is the main page / creative.","write_action":false,"price_micros":0,"input_schema":null},{"name":"sketchxflow_get_project","description":"Project status: preview URL + page list (slug/name).","write_action":false,"price_micros":0,"input_schema":null},{"name":"sketchxflow_launch_kit","description":"Generate a complete, on-brand LAUNCH KIT from one brief — a landing page + launch email + social posts + poster, all consistent. Auto-creates a brand (palette/fonts) if none is attached. Returns the set of preview URLs + project IDs. Takes ~3–8 min; streams progress. Pull any asset's code with sketchxflow_get_code (slug 'home').","write_action":false,"price_micros":0,"input_schema":null},{"name":"sketchxflow_list_models","description":"List the models you can pick — BOTH catalogs, kept separate: the LLM TEXT models for the `model` parameter (the model that writes the page) and the IMAGE models for `image_model` (the model that renders the pictures in it). Each entry carries a description, speed, relative cost, coin rates, and whether YOUR plan can actually use it. Also reports your plan, the defaults used when the parameters are","write_action":false,"price_micros":0,"input_schema":null},{"name":"sketchxflow_list_projects","description":"List the projects in your SketchXFlow account (most recent first).","write_action":false,"price_micros":0,"input_schema":null},{"name":"sketchxflow_plan","description":"Create the project and produce its SITE PLAN — the page list (slug, name, purpose) and each page's section breakdown — for review BEFORE any HTML is generated. Fast and synchronous; the plan is saved server-side against the returned project_id. Show it to the user, adjust with sketchxflow_refine_plan, then build with sketchxflow_generate_from_plan.","write_action":true,"price_micros":0,"input_schema":null},{"name":"sketchxflow_refine_plan","description":"Apply one natural-language change to a project's saved site plan and return the updated plan — 'add a careers page', 'drop the blog', 'the pricing page needs a comparison table', 'reorder so About comes before Pricing'. Fast and synchronous; nothing is built yet, so this is the cheap place to iterate. Loop it with the user until the page list is right, then call sketchxflow_generate_from_plan. Req","write_action":false,"price_micros":0,"input_schema":null},{"name":"sketchxflow_services_finalise","description":"Freeze the requirements and price them from the price list. Only with the client's explicit go-ahead. Returns whether the proposal issued and the link to read, accept and pay it on the website (sign-in needed).","write_action":false,"price_micros":0,"input_schema":null},{"name":"sketchxflow_services_invoices","description":"Every invoice on a project with its status and, for an open one, the page to pay it (UPI, cards, EMI, net banking or bank transfer; sign-in needed). Free.","write_action":false,"price_micros":0,"input_schema":null},{"name":"sketchxflow_services_projects","description":"Your projects with SketchXFlow's development services — the ones you've asked the team to build — with their state and links. Free.","write_action":false,"price_micros":0,"input_schema":null},{"name":"sketchxflow_services_requirements","description":"The requirements document the consultant is writing (sections, numbered requirements, modules), plus whether it can be finalised. Free.","write_action":false,"price_micros":0,"input_schema":null},{"name":"sketchxflow_services_say","description":"One turn of the requirements interview: send what the client said, get the consultant's reply, the question they should answer next (with options if any) and the live estimate from the price list. Free. Keep going until can_finalise is true, then call sketchxflow_services_finalise.","write_action":false,"price_micros":0,"input_schema":null},{"name":"sketchxflow_services_start","description":"Ask SketchXFlow to BUILD something for real (a website, web app or mobile app) at a fixed price from the public price list. Opens a project and returns the AI consultant's first question. Free; nothing is committed until a proposal is accepted on the website.","write_action":false,"price_micros":0,"input_schema":null},{"name":"sketchxflow_version","description":"Report which version of the SketchXFlow MCP server is running, whether a newer one is published, and whether the SketchXFlow API accepts your SKETCHXFLOW_API_KEY (shown only by its sk_live_ab12cd… prefix). Free, instant, no coins. Call it when another tool fails with an API-key error, or to check for updates.","write_action":false,"price_micros":0,"input_schema":null}],"scan":{"score":58,"grade":"C","scanned_at":"2026-09-20T11:36:06.920Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-20T11:36:06.814Z","components":{"code":{"score":25,"max":25,"notes":["6 source files scanned"]},"reliability":{"score":-1,"max":20,"notes":["no gateway calls yet and no remote to probe"]},"poisoning":{"score":-1,"max":15,"notes":["tools not inspected (local package is not executed); not counted"]},"auth":{"score":6,"max":15,"notes":["static API keys via environment variables"]},"maintenance":{"score":3,"max":15,"notes":["repository not readable: unknown"]},"identity":{"score":4,"max":10,"notes":["verified namespace with website, no repo"]}},"findings":[],"inputs":{"packages":[{"registryType":"npm","identifier":"@sketchxflow/mcp","version":"0.22.0","found":true,"license":"MIT","hasInstallScripts":false,"dependencyCount":3,"publishedAt":"2026-09-20T04:39:27.541Z","weeklyDownloads":530}],"repo":{"found":false},"icon":{"url":"https://sketchxflow.com/apple-icon","source":"site","width":180,"height":180},"presence":{"stars":null,"forks":null,"downloadsWeek":530,"license":"MIT","lastPushAt":null,"score":17}}}},"grade_history":[],"reviews":[]}