tempmd-mcp
The tempmd-mcp server lets you publish HTML, Markdown, CSV, or Mermaid artifacts to stable public URLs on temp.md and manage their full lifecycle — no account required.
Publish a new artifact (
publish_temp): Upload a file and receive a stable, shareable URL (e.g.amber-hill-9eb6.temp.md); credentials are auto-saved to a local.tempmdfile. Extra files (scripts, styles, images) can be bundled with the main artifact.Update an existing artifact (
update_temp): Push a new version behind the same URL without re-sharing; resets the 7-day active window.Check artifact status (
get_temp_status): Inspect a Temp's lifecycle state (active, cooling, or expired), its expiry time, and restore eligibility.Restore an expired artifact (
restore_temp): Reactivate a recently expired Temp at its original URL within 7 days of expiry.Freeze a snapshot (
snapshot_temp): Lock the current version as a fixed-reference snapshot with its own URL for sign-offs or approvals, while the canonical link continues serving the latest version.Toggle comments (
set_comments): Enable or disable visitor comments on a published Temp's page.List project Temps (
list_temps): View all Temp records (IDs, URLs, tokens, expiry) stored in the local.tempmdfile without a network call.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@tempmd-mcp publish this HTML page to temp.md"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
@tempmd/mcp
MCP server for temp.md — give agent-made artifacts one stable public link that updates in place.
Publish an HTML, Markdown, CSV, or Mermaid artifact and get a canonical URL like amber-hill-9eb6.temp.md. Push new versions behind the same URL — no re-sharing, ever. Temps expire intentionally when the work goes cold (7-day active window, resets on every update) and can be restored within 7 days of expiry.
Install
Remote — no install
claude mcp add --transport http tempmd https://api.temp.md/mcpRemote MCP accepts inline UTF-8 or base64 files. Anonymous publishing needs no
credential. To publish directly into an account and use account tools, configure
the connection with Authorization: Bearer <tempmd_key_...>.
Local stdio — best for filesystem access and larger directories
claude mcp add tempmd -- npx -y @tempmd/mcpCursor / Windsurf / any MCP client — add to your MCP config:
{
"mcpServers": {
"tempmd": {
"command": "npx",
"args": ["-y", "@tempmd/mcp"]
}
}
}tempmd-mcp remains available as a compatibility package with the same
implementation and version.
No account or API key required — temp.md is anonymous-create-first. Claim a Temp later to keep it.
The remote transport is limited to 10 MiB and 20 inline files per bundle. The stdio package uses local paths and supports the full 50 MiB / 100-file bundle.
Related MCP server: publish-artifacts-mcp
Tools
Tool | Local stdio | Remote | What it does |
| ✓ | ✓ | Publish a new artifact and get a stable public URL |
| ✓ | ✓ | Push a new version behind the same URL |
| ✓ | ✓ | Check lifecycle and restore eligibility |
| ✓ | ✓ | Bring a recently expired Temp back at the same URL |
| ✓ | ✓ | Freeze the current version as a fixed reference |
| ✓ | ✓ | Toggle pinned visitor comments |
| ✓ | ✓ | List local project records or account-owned Temps |
| — | ✓ | Rotate and recover a lost scoped update token |
publish_temp and update_temp accept spa_mode: true for client-routed
single-page apps. Leave it off for static sites so missing assets return 404.
Uploads are capped at 10 MB per file, 50 MB per bundle, and 100 files; publish
and update limits are 60/hour/IP and 120/hour/Temp/IP respectively.
How credentials work
publish_temp saves a record (Temp ID, URL, update token, expiry) to a .tempmd file in the project root. Every other tool reads that file automatically, so an agent can update the same Temp across sessions without you managing tokens. Tokens can also be passed explicitly via update_token.
Add .tempmd to .gitignore if the update token shouldn't be shared with everyone who can read the repo.
Configuration
Env var | Default | Purpose |
|
| Point at a different API (e.g. local dev |
Development
This repo mirrors the packages/mcp package from the temp.md monorepo, where development happens. Issues and feature requests are welcome here.
Semantics agents should preserve
The canonical URL is the only link to share — never surface version-specific links.
A failed update never breaks the live link; the last successful version keeps serving.
Prefer
update_tempoverpublish_tempwhen the project already has a Temp for the artifact.
Available Tools
7 toolsget_temp_statusGet Temp statusAInspect
Check a Temp's lifecycle: active/cooling/expired, when it expires, and whether it can be restored. Reads credentials from the project's .tempmd file when omitted.
Inputs: temp_id, project_dir, update_token.
list_tempsList this project's TempsAInspect
List the Temps recorded in this project's .tempmd file (local records, no network call).
Inputs: project_dir.
publish_tempPublish a new TempAInspect
Publish an artifact (HTML, Markdown, CSV, or Mermaid) to temp.md and get a stable public URL. Use only for a NEW artifact — if this project already has a Temp for it (check .tempmd), use update_temp to keep the same link. The record is saved to .tempmd automatically.
Inputs: file (required), title, project_dir, additional_files.
restore_tempRestore an expired TempAInspect
Reactivate a recently expired Temp — the same canonical URL comes back to life. Only works within 7 days of expiry. Reads credentials from .tempmd when omitted.
Inputs: temp_id, project_dir, update_token.
set_commentsEnable or disable commentsBInspect
Toggle pinned visitor comments (Pindrop) on a Temp's page. Reads credentials from the project's .tempmd file when omitted.
Inputs: enabled (required), temp_id, project_dir, update_token.
snapshot_tempFreeze a snapshotAInspect
Freeze the current version of a Temp as a fixed reference with its own URL — for sign-offs and 'approve exactly this' moments. The canonical link keeps serving the latest version; share the snapshot URL only when exactness matters. Reads credentials from the project's .tempmd file when omitted.
Inputs: label, temp_id, project_dir, update_token.
update_tempUpdate an existing TempAInspect
Push a new version of an artifact behind the same temp.md URL — no re-sharing needed. Resets the 7-day active window. Reads temp_id and update_token from the project's .tempmd file when omitted. If the update fails, the previous version stays live.
Inputs: file (required), title, temp_id, project_dir, +2 more.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 7 tools
Each tool targets a distinct operation: lifecycle check, local listing, publishing new, restoring expired, toggling comments, freezing snapshot, and updating existing. No functional overlap; clear boundaries.
All tools follow the snake_case verb_noun pattern (e.g., get_temp_status, publish_temp, snapshot_temp). No deviations or mixed conventions.
Seven tools cover the full lifecycle of temporary artifacts without bloat. The count feels right for the domain—neither too sparse nor excessive.
Core CRUD-like operations are covered (create via publish, read via get_status/list, update via update_temp, plus restore and snapshot). A delete tool is missing, but the domain may intentionally avoid deletion (temps expire naturally). Minor gap.
Maintenance
Related MCP Connectors
Publish HTML and Markdown pages at shareable links.
Publish and manage secure HTML links: PII/secret scanning, batch create, patch edits, analytics.
Publish HTML, files, or a URL to a permanent public URL, then update it — from any MCP agent.
Publish pages, documents and files as shareable links, and update them without changing the link.
Related MCP Servers
- AlicenseNot gradedqualityFmaintenanceEnables publishing and updating Claude artifacts or HTML to private, access-controlled links directly from Claude.1AGPL 3.0
- FlicenseNot gradedqualityDmaintenanceEnables publishing, updating, and sharing HTML artifacts with strict security isolation (origin separation, CSP, API keys) via MCP tools.1-
- AlicenseAqualityCmaintenancePublish HTML or markdown artifacts (reports, dashboards, demos) as instant shareable links with TTL expiry, social preview cards, and optional password protection. Works with the hosted service or a self-hosted instance.127 npm14MIT
- AlicenseAqualityBmaintenanceEnables publishing sanitized static HTML pages from an MCP agent and receiving shareable URLs, with tools for updating, listing, publishing, and deleting pages.1217 npmMIT