mcp
Publish artifacts to one stable public temp.md link that updates in place. No account needed.
Should I use this
Quality & Safety
Findings (2)
- LOWin restore_temp
- LOWin set_comments
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"mcp": {
"command": "npx",
"args": [
"@tempmd/mcp"
]
}
}
}Runnable packages
0.4.3stdioRemote endpoints
https://api.temp.md/mcpstreamable-httpWhat it can do
Tool inventory
Tools (8)
🟡publish_temp(files, title, spa_mode, idempotency_key)
Publish an inline text or base64 bundle to a stable public URL. Send index.html as the main page. Repeated identical calls are idempotent. If the MCP connection uses a temp.md account API key, the Temp is owned by that account immediately.
Input Schema
{
"type": "object",
"properties": {
"files": {
"minItems": 1,
"maxItems": 20,
"type": "array",
"items": {
"type": "object",
"properties": {
"path": {
"type": "string",
"minLength": 1,
"maxLength": 512,
"description": "Safe relative bundle path. The main page should be index.html."
},
"content": {
"type": "string",
"description": "UTF-8 text by default, or base64 when encoding is base64."
},
"content_type": {
"type": "string",
"minLength": 1,
"maxLength": 255
},
"encoding": {
"default": "utf8",
"type": "string",
"enum": [
"utf8",
"base64"
]
}
},
"required": [
"path",
"content"
]
}
},
"title": {
"type": "string",
"maxLength": 120
},
"spa_mode": {
"type": "boolean"
},
"idempotency_key": {
"type": "string",
"minLength": 1,
"maxLength": 128
}
},
"required": [
"files"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🔴update_temp(temp_id, update_token, files, title, spa_mode, ...)
Atomically publish a new inline bundle behind the same canonical URL. The previous Version stays live if this call fails.
Input Schema
{
"type": "object",
"properties": {
"temp_id": {
"type": "string",
"minLength": 1,
"description": "The Temp ID."
},
"update_token": {
"description": "Scoped Temp update token. May be omitted when the MCP Authorization header contains an account API key that owns the Temp.",
"type": "string"
},
"files": {
"minItems": 1,
"maxItems": 20,
"type": "array",
"items": {
"type": "object",
"properties": {
"path": {
"type": "string",
"minLength": 1,
"maxLength": 512,
"description": "Safe relative bundle path. The main page should be index.html."
},
"content": {
"type": "string",
"description": "UTF-8 text by default, or base64 when encoding is base64."
},
"content_type": {
"type": "string",
"minLength": 1,
"maxLength": 255
},
"encoding": {
"default": "utf8",
"type": "string",
"enum": [
"utf8",
"base64"
]
}
},
"required": [
"path",
"content"
]
}
},
"title": {
"type": "string",
"maxLength": 120
},
"spa_mode": {
"type": "boolean"
},
"idempotency_key": {
"type": "string",
"minLength": 1,
"maxLength": 128
}
},
"required": [
"temp_id",
"files"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_temp_status(temp_id, update_token)
Inspect lifecycle, expiry, restore eligibility, ownership, moderation, and settings.
Input Schema
{
"type": "object",
"properties": {
"temp_id": {
"type": "string",
"minLength": 1,
"description": "The Temp ID."
},
"update_token": {
"description": "Scoped Temp update token. May be omitted when the MCP Authorization header contains an account API key that owns the Temp.",
"type": "string"
}
},
"required": [
"temp_id"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪restore_temp(temp_id, update_token)
Reactivate an expired Temp during its restore grace period without changing its URL.
Input Schema
{
"type": "object",
"properties": {
"temp_id": {
"type": "string",
"minLength": 1,
"description": "The Temp ID."
},
"update_token": {
"description": "Scoped Temp update token. May be omitted when the MCP Authorization header contains an account API key that owns the Temp.",
"type": "string"
}
},
"required": [
"temp_id"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡snapshot_temp(temp_id, update_token, label)
Create a fixed snapshot URL for the current Version while the canonical URL continues to track the latest Version.
Input Schema
{
"type": "object",
"properties": {
"temp_id": {
"type": "string",
"minLength": 1,
"description": "The Temp ID."
},
"update_token": {
"description": "Scoped Temp update token. May be omitted when the MCP Authorization header contains an account API key that owns the Temp.",
"type": "string"
},
"label": {
"type": "string",
"maxLength": 120
}
},
"required": [
"temp_id"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🔴set_comments(temp_id, update_token, enabled)
Toggle pinned visitor feedback on a Temp.
Input Schema
{
"type": "object",
"properties": {
"temp_id": {
"type": "string",
"minLength": 1,
"description": "The Temp ID."
},
"update_token": {
"description": "Scoped Temp update token. May be omitted when the MCP Authorization header contains an account API key that owns the Temp.",
"type": "string"
},
"enabled": {
"type": "boolean"
}
},
"required": [
"temp_id",
"enabled"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢list_temps
List Temps owned by the account API key supplied in the MCP Authorization header.
Input Schema
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}🔴recover_update_token(temp_id)
Rotate every prior scoped update token and return one replacement. Requires an owning account API key in the MCP Authorization header.
Input Schema
{
"type": "object",
"properties": {
"temp_id": {
"type": "string",
"minLength": 1
}
},
"required": [
"temp_id"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Community
Evidence