Apps
Small self-contained web tools, built and run in place
Unit Converter — Convert between units — temperature, weight, dis... Free
Flashcards — Study flashcards — click to flip, arrow keys to ... Free
Bookmarks — Save links privately or publicly — an example ap... Free
8 apps available
Build apps, set your price, earn 90%% of every sale.
Calling it
Metered methods answer an unauthenticated call with 402 and an x402 challenge — pay it and the same request succeeds, with no account at all. A token works too.
curl -H "Authorization: Bearer $MU_TOKEN" \ https://mu-mcp.yvangodard.me/api/v1/apps/list
Methods
POST /api/v1/apps/buildBuild a small app from a description, save it, and return its details and URL. An app is a single page — a tracker, a checklist, a counter — that keeps its own store and runs in the browser
| Argument | Type | Description |
|---|---|---|
prompt * | string | Description of the app to build, e.g. 'an expense tracker', 'a packing checklist', 'a water intake counter' |
curl -X POST \
-H "Authorization: Bearer $MU_TOKEN" \
-H "Content-Type: application/json" \
-d '{"prompt":"prompt"}' \
https://mu-mcp.yvangodard.me/api/v1/apps/buildPOST /api/v1/apps/createCreate an app — a small, self-contained HTML tool hosted here. Takes the HTML; apps_build writes it for you from a description
| Argument | Type | Description |
|---|---|---|
name * | string | App name, e.g. "Pomodoro Timer" |
html * | string | The app's HTML, inline CSS and JavaScript included, up to 256KB |
slug | string | URL-friendly id, e.g. pomodoro-timer. Derived from the name if omitted |
description | string | What the app does. Defaults to the name |
tags | string | Comma-separated tags |
icon | string | An SVG icon |
price | number | Credits charged per use, 0 for free, up to 1000 |
curl -X POST \
-H "Content-Type: application/json" \
-d '{"html":"html","name":"name"}' \
https://mu-mcp.yvangodard.me/api/v1/apps/createPOST /api/v1/apps/editEdit an app you own — its name, description, tags, icon, HTML or price. Fields left out keep their value
| Argument | Type | Description |
|---|---|---|
slug * | string | The app's URL slug, e.g. pomodoro-timer |
name | string | New name. Left alone if omitted |
description | string | New description. Left alone if omitted |
tags | string | New comma-separated tags. Left alone if omitted |
html | string | New HTML, up to 256KB. Left alone if omitted |
icon | string | New SVG icon. Left alone if omitted |
price | number | Credits charged per use, 0 for free, up to 1000 |
curl -X POST \
-H "Authorization: Bearer $MU_TOKEN" \
-H "Content-Type: application/json" \
-d '{"slug":"slug"}' \
https://mu-mcp.yvangodard.me/api/v1/apps/editPOST /api/v1/apps/forkFork an app into your own account, to change independently of the original
| Argument | Type | Description |
|---|---|---|
slug * | string | Slug of the app to fork |
new_slug | string | Slug for the copy. Generated from the original if omitted |
curl -X POST \
-H "Content-Type: application/json" \
-d '{"slug":"slug"}' \
https://mu-mcp.yvangodard.me/api/v1/apps/forkGET /api/v1/apps/readRead the details of one app by its slug
| Argument | Type | Description |
|---|---|---|
slug * | string | The app's URL slug, e.g. pomodoro-timer |
curl \ "https://mu-mcp.yvangodard.me/api/v1/apps/read?slug=slug"
POST /api/v1/apps/runPublish a snippet of JavaScript and get back a URL that runs it in a browser. It returns a link rather than output — the code runs in a sandbox when somebody opens it, not here
| Argument | Type | Description |
|---|---|---|
code * | string | JavaScript to run in the page. It runs as a module, in a sandbox, with no access to the caller's account |
curl -X POST \
-H "Content-Type: application/json" \
-d '{"code":"code"}' \
https://mu-mcp.yvangodard.me/api/v1/apps/runGET /api/v1/apps/searchSearch the apps directory for small, useful tools, by name, description or tag
| Argument | Type | Description |
|---|---|---|
query | string | Search query — name, description or tag |
tag | string | Filter to apps carrying this tag |
curl \ "https://mu-mcp.yvangodard.me/api/v1/apps/search"
POST /api/v1/apps/testTest an app by checking its HTML and running its mu.api calls server-side, so an author finds out what is broken without opening it
| Argument | Type | Description |
|---|---|---|
slug * | string | The app's URL slug |
curl -X POST \
-H "Content-Type: application/json" \
-d '{"slug":"slug"}' \
https://mu-mcp.yvangodard.me/api/v1/apps/testThe same methods are tools over MCP, and every service on this instance is in one reference. Same method, same answer, same price.


