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.

Open Apps →

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

How every call behaves →

Methods

15 creditsPOST /api/v1/apps/build

Build 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

Changes something, so POST only. Draws 15 credits per call, or accepts payment.

ArgumentTypeDescription
prompt *stringDescription 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/build
Costs 15 credits
POST /api/v1/apps/create

Create an app — a small, self-contained HTML tool hosted here. Takes the HTML; apps_build writes it for you from a description

Changes something, so POST only.

ArgumentTypeDescription
name *stringApp name, e.g. "Pomodoro Timer"
html *stringThe app's HTML, inline CSS and JavaScript included, up to 256KB
slugstringURL-friendly id, e.g. pomodoro-timer. Derived from the name if omitted
descriptionstringWhat the app does. Defaults to the name
tagsstringComma-separated tags
iconstringAn SVG icon
pricenumberCredits 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/create
8 creditsPOST /api/v1/apps/edit

Edit an app you own — its name, description, tags, icon, HTML or price. Fields left out keep their value

Changes something, so POST only. Draws 8 credits per call, or accepts payment.

ArgumentTypeDescription
slug *stringThe app's URL slug, e.g. pomodoro-timer
namestringNew name. Left alone if omitted
descriptionstringNew description. Left alone if omitted
tagsstringNew comma-separated tags. Left alone if omitted
htmlstringNew HTML, up to 256KB. Left alone if omitted
iconstringNew SVG icon. Left alone if omitted
pricenumberCredits 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/edit
Costs 8 credits
POST /api/v1/apps/fork

Fork an app into your own account, to change independently of the original

Changes something, so POST only.

ArgumentTypeDescription
slug *stringSlug of the app to fork
new_slugstringSlug 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/fork
GET /api/v1/apps/read

Read the details of one app by its slug

ArgumentTypeDescription
slug *stringThe app's URL slug, e.g. pomodoro-timer
curl \
  "https://mu-mcp.yvangodard.me/api/v1/apps/read?slug=slug"
POST /api/v1/apps/run

Publish 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

Changes something, so POST only.

ArgumentTypeDescription
code *stringJavaScript 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/run
POST /api/v1/apps/test

Test 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

Changes something, so POST only.

ArgumentTypeDescription
slug *stringThe app's URL slug
curl -X POST \
  -H "Content-Type: application/json" \
  -d '{"slug":"slug"}' \
  https://mu-mcp.yvangodard.me/api/v1/apps/test

The same methods are tools over MCP, and every service on this instance is in one reference. Same method, same answer, same price.