Search / design.sleek/sleek
Sleek
R0· no sign-inDesign your mobile app UI with AI, then have your coding agent build the real app from it.
v1.0.1 · active · repository · website · descriptor JSON · versions
Search / design.sleek/sleek
R0· no sign-inDesign your mobile app UI with AI, then have your coding agent build the real app from it.
v1.0.1 · active · repository · website · descriptor JSON · versions
{
"mcpServers": {
"sleek": {
"type": "http",
"url": "https://sleek.design/api/mcp"
}
}
}claude mcp add --transport http sleek https://sleek.design/api/mcp[mcp_servers.sleek]
url = "https://sleek.design/api/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"sleek": {
"type": "remote",
"url": "https://sleek.design/api/mcp",
"enabled": true
}
}
}{
"mcpServers": {
"sleek": {
"type": "http",
"url": "https://sleek.design/api/mcp"
}
},
"deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=sleek&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vc2xlZWsuZGVzaWduL2FwaS9tY3AifQ%3D%3D"
}{
"servers": {
"sleek": {
"type": "http",
"url": "https://sleek.design/api/mcp"
}
}
}{
"mcpServers": {
"sleek": {
"httpUrl": "https://sleek.design/api/mcp"
}
}
}extensions:
"sleek":
enabled: true
name: "sleek"
type: streamable_http
uri: "https://sleek.design/api/mcp"
timeout: 300
protocol.modernsupports 2026-07-28 (server/discover)protocol.statelessanswers without a sessionprotocol.transportstreamable HTTPprotocol.list_ttltools/list declares ttlMs 0, so clients re-fetch it on every useauth.prm, auth.as_metadata, auth.cimdno remote uses OAuthauth.secret_in_urlno templated URLtools.descriptionsevery tool has a descriptiontools.description_lengthdescriptions are concisetools.schemasevery tool has an object input schematools.annotations12 of 12 tools declare readOnlyHint or destructiveHinttools.directory_hintsevery tool declares readOnlyHint, destructiveHint, idempotentHint and openWorldHinttools.token_costabout 3,003 tokens to load every tooltools.api_dumptools are not a one-to-one API dumpstability.changes, stability.rug_pulltool history recorded for 5 of the 7 days neededdeps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI packagesearch_mentionsaddedFind the workspace's projects by name for an @ mention, newest first. Each item is a resource link whose name is the projectId and whose uri is the projectUrl. To browse every project, use list_projects.
cancel_design_runchangedoutput schemaget_design_runchangeddescription, output schemaPoll a run that design returned as 'queued' or 'running'. Wait a few seconds between polls. On 'completed', data.result.operations lists the saved screens and theme changes. Share projectUrl and call screenshot. On 'failed', read data.error.message and send your user to data.error.url if present. A failed run, including a cancelled one, keeps what it saved in that same list and uses credits only when the list is not empty. Check it before resending the brief.
Poll a run that design returned as 'queued' or 'running'. Wait a few seconds between polls. On 'completed', data.result.operations lists the saved screens and theme changes. Share projectUrl and call screenshot. On 'failed', relay data.error.message to your user, with data.error.url if present. A failed run, including a cancelled one, keeps what it saved in that same list and uses credits only when the list is not empty. Check it before resending the brief.
designchangeddescription, output schemaRun Sleek's design agent to create or edit screens from a plain-language brief. Send the whole request as ONE message, such as 'a food delivery app with onboarding, restaurants, dish detail, cart, tracking, and profile'. The agent plans the screens together, so separate calls produce mismatched screens. A run uses workspace credits only when it completes or saves changes. By default this waits for the run to finish. If it returns 'queued' or 'running', poll get_design_run. Only one run can be active per project. On CONFLICT, poll get_design_run until the run settles, then retry. cancel_design_run stops it sooner. If a failed run has data.error.url, send your user there. They have to act before you retry. On completion, share projectUrl with your user and call screenshot.
Run Sleek's design agent to create or edit screens from a plain-language brief. Send the whole request as ONE message, such as 'a food delivery app with onboarding, restaurants, dish detail, cart, tracking, and profile'. The agent plans the screens together, so separate calls produce mismatched screens. A run uses workspace credits only when it completes or saves changes. By default this waits for the run to finish. If it returns 'queued' or 'running', poll get_design_run. Only one run can be active per project. On CONFLICT, poll get_design_run until the run settles, then retry. cancel_design_run stops it sooner. If a failed run has data.error.url, relay data.error.message to your user with that link. They have to act before you retry. On completion, share projectUrl with your user and call screenshot.
screenshotchangeddescriptionRender up to four project screens as one inline image, after a design run completes. Rendering is free. Send projectUrl with the image so your user can open and edit the designs.
Render up to four project screens side by side as one inline image, after a design run completes. Returns the image, PNG unless format asks for WebP, and a one-line text note. Rendering uses no credits. Send projectUrl with the image so your user can open and edit the designs.
cancel_design_runchangeddescription, output schema, annotationsAsk a design run to stop, for example when the brief was wrong. A queued run never starts. A running run stops at its next step and stays 'running' until it settles. A run cut short settles as 'failed' with error code 'cancelled', or 'execution_failed' if saving its changes failed. It keeps any screens and theme changes it saved, listed in data.result.operations, and is charged only when that list is not empty. A run that had already finished settles as 'completed'. The project stays locked until the run settles, so poll get_design_run before starting another run. A run that stopped responding settles as 'failed' with error code 'execution_timeout' 15 minutes after creation.
Ask a design run to stop, for example when the brief was wrong. Returns the run as it stands right after the request. A queued run comes back 'failed' with error code 'cancelled' and never starts. A running run comes back still 'running' and stops at its next step. A run cut short settles as 'failed' with error code 'cancelled', or 'execution_failed' if saving its changes failed. It keeps any screens and theme changes it saved, listed in data.result.operations, and uses credits only when that list is not empty. A run that finishes before it stops settles as 'completed'. A run that had already settled comes back unchanged. The project stays locked until the run settles, so poll get_design_run before starting another run. A run that stopped responding settles as 'failed' with error code 'execution_timeout' 15 minutes after creation.
get_design_runchangeddescription, output schemaPoll a run that design returned as 'queued' or 'running'. Wait a few seconds between polls. On 'completed', data.result.operations lists the saved screens and theme changes. Share projectUrl and call screenshot. On 'failed', read data.error.message and send your user to data.error.url if present. A failed run, including a cancelled one, keeps what it saved in that same list and is charged only when the list is not empty. Check it before resending the brief.
Poll a run that design returned as 'queued' or 'running'. Wait a few seconds between polls. On 'completed', data.result.operations lists the saved screens and theme changes. Share projectUrl and call screenshot. On 'failed', read data.error.message and send your user to data.error.url if present. A failed run, including a cancelled one, keeps what it saved in that same list and uses credits only when the list is not empty. Check it before resending the brief.
designchangeddescription, input schema, output schema, annotationsRun Sleek's design agent to create or edit screens from a plain-language brief. Send the whole request as ONE message, such as 'a food delivery app with onboarding, restaurants, dish detail, cart, tracking, and profile'. The agent plans the screens together, so separate calls produce mismatched screens. A run spends workspace credits when it completes or saves changes. By default this waits for the run to finish. If it returns 'queued' or 'running', poll get_design_run. Only one run can be active per project. On CONFLICT, poll get_design_run until the run settles, then retry. cancel_design_run stops it sooner. If a failed run has data.error.url, your user has to act there, such as topping up credits, before you retry. On completion, share projectUrl with your user and call screenshot.
Run Sleek's design agent to create or edit screens from a plain-language brief. Send the whole request as ONE message, such as 'a food delivery app with onboarding, restaurants, dish detail, cart, tracking, and profile'. The agent plans the screens together, so separate calls produce mismatched screens. A run uses workspace credits only when it completes or saves changes. By default this waits for the run to finish. If it returns 'queued' or 'running', poll get_design_run. Only one run can be active per project. On CONFLICT, poll get_design_run until the run settles, then retry. cancel_design_run stops it sooner. If a failed run has data.error.url, send your user there. They have to act before you retry. On completion, share projectUrl with your user and call screenshot.
list_referenceschangedoutput schemaget_componentchangeddescription, output schemaFetch a screen's generated HTML. Returns only the version the screen currently shows. Use allVersions for the full history, which can be large. The returned screenId is the value design takes. Use this for a build handoff, not to check whether a design run worked.
Fetch a screen's generated HTML. Returns the screen in data, with the HTML at data.versions[].code. versions holds only the version the screen currently shows. Use allVersions for the full history, which can be large. The returned screenId is the value design takes. Use this for a build handoff, not to check whether a design run worked.
Showing the latest 10. Full history: list_changes · trend: quality JSON.
Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.
+repository +dns-namespace +website +reachable +uptime-100% +updated-5d-ago
Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.
| remote | auth | reachable | uptime 30d | p50 | protocol | last ok |
|---|---|---|---|---|---|---|
https://sleek.design/api/mcp streamable-http | none | yes | 100% | 195 ms | 2026-07-28 | 2026-10-20 |
cancel_design_rundestructive | Ask a design run to stop, for example when the brief was wrong. Returns the run as it stands right after the request. A queued run comes back 'failed' with error code 'cancelled' and never starts. A running run comes back still 'running' and stops at its next step. A run cut short settles as 'failed' with error code 'cancelled', or 'execution_failed' if saving its changes failed. It keeps any screens and theme changes it saved, listed in data.result.operations, and uses credits only when that list is not empty. A run that finishes before it stops settles as 'completed'. A run that had already settled comes back unchanged. The project stays locked until the run settles, so poll get_design_run before starting another run. A run that stopped responding settles as 'failed' with error code 'execution_timeout' 15 minutes after creation. |
create_project | Create an empty project. Returns it in data, plus projectUrl. Pass data.id as projectId to design, then call screenshot. Creating a project is instant and uses no credits. Only design runs do. Share projectUrl so your user can watch and edit the designs. |
delete_projectdestructive | Permanently delete a project and all its screens. Designs cannot be recovered. Call only after your user confirms the exact project by name. Never delete projects to tidy up on your own initiative. |
designdestructive | Run Sleek's design agent to create or edit screens from a plain-language brief. Send the whole request as ONE message, such as 'a food delivery app with onboarding, restaurants, dish detail, cart, tracking, and profile'. The agent plans the screens together, so separate calls produce mismatched screens. A run uses workspace credits only when it completes or saves changes. By default this waits for the run to finish. If it returns 'queued' or 'running', poll get_design_run. Only one run can be active per project. On CONFLICT, poll get_design_run until the run settles, then retry. cancel_design_run stops it sooner. If a failed run has data.error.url, relay data.error.message to your user with that link. They have to act before you retry. On completion, share projectUrl with your user and call screenshot. |
get_componentread-only | Fetch a screen's generated HTML. Returns the screen in data, with the HTML at data.versions[].code. versions holds only the version the screen currently shows. Use allVersions for the full history, which can be large. The returned screenId is the value design takes. Use this for a build handoff, not to check whether a design run worked. |
get_design_runread-only | Poll a run that design returned as 'queued' or 'running'. Wait a few seconds between polls. On 'completed', data.result.operations lists the saved screens and theme changes. Share projectUrl and call screenshot. On 'failed', relay data.error.message to your user, with data.error.url if present. A failed run, including a cancelled one, keeps what it saved in that same list and uses credits only when the list is not empty. Check it before resending the brief. |
get_projectread-only | Fetch a project and its projectUrl. Use it to confirm the project exists and share the URL with your user. Use list_components to see its screens. |
list_componentsread-only | List a project's screen names and active version numbers without generated HTML. Pass each item's screenId to design. Pass its id as componentId to get_component or in componentIds to screenshot. Use get_component only when you need a screen's code. |
list_projectsread-only | List the workspace's projects, newest first. Each project holds one app's screens, theme, and design chat. Check here before create_project to avoid duplicates. |
list_referencesread-only | List curated app styles and their preview images. When your user asks for a look such as Airbnb, brutalist, or dark fintech, pass the closest reference's id as referenceId to design. Without a reference, the agent picks a style. |
screenshotread-only | Render up to four project screens side by side as one inline image, after a design run completes. Returns the image, PNG unless format asks for WebP, and a one-line text note. Rendering uses no credits. Send projectUrl with the image so your user can open and edit the designs. |
search_mentionsread-only | Find the workspace's projects by name for an @ mention, newest first. Each item is a resource link whose name is the projectId and whose uri is the projectUrl. To browse every project, use list_projects. |
Schemas: list_tools.
{
"name": "design.sleek/sleek",
"icons": [
{
"src": "https://sleek.design/icon.svg",
"sizes": [
"any"
],
"mimeType": "image/svg+xml"
}
],
"title": "Sleek",
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
"remotes": [
{
"url": "https://sleek.design/api/mcp",
"type": "streamable-http"
}
],
"version": "1.0.1",
"repository": {
"url": "https://github.com/sleekdotdesign/mcp",
"source": "github"
},
"websiteUrl": "https://sleek.design/agents",
"description": "Design your mobile app UI with AI, then have your coding agent build the real app from it."
}