demo.st
Reserve a subdomain, upload .zip via MCP, get a link. Optional document API at api.demo.st.
Sollte ich dies verwenden
Qualität und Sicherheit
Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.
Kontextkosten
Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.
Installieren
Installation mit einem Klick
Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:
{
"mcpServers": {
"demost": {
"url": "https://demo.st/mcp"
}
}
}Remote-Endpunkte
https://demo.st/mcpstreamable-httpWas es kann
Tool-Inventar
Tools (13)
🟢check_subdomain_availability(name)
Check if a subdomain name is available on demo.st (e.g. "my-site" → my-site.demo.st).
Eingabe-Schema
{
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Subdomain name: letters, numbers, hyphens only; 1–63 chars."
}
},
"required": [
"name"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪reserve_subdomain(subdomain)
Reserve a subdomain for the logged-in account. One subdomain per account.
Eingabe-Schema
{
"type": "object",
"properties": {
"subdomain": {
"type": "string",
"description": "Subdomain to reserve (letters, numbers, hyphens; 1–63 chars)."
}
},
"required": [
"subdomain"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡upload_site(zip_base64, file_url, file_path)
Upload a .zip as site content for your reserved subdomain. Easiest for agents: zip_base64 (base64-encoded zip). Or file_url (public URL to zip). Or file_path (local path, when MCP runs locally).
Eingabe-Schema
{
"type": "object",
"properties": {
"zip_base64": {
"description": "Base64-encoded .zip content. Easiest for agents: create zip locally and pass here (no hosting needed).",
"type": "string"
},
"file_url": {
"description": "Public URL of a .zip file.",
"type": "string",
"format": "uri"
},
"file_path": {
"description": "Local path to a .zip file (for local/stdio MCP only).",
"type": "string"
}
},
"$schema": "http://json-schema.org/draft-07/schema#"
}🔴clear_site
Remove deployed site content from your subdomain. Subdomain remains reserved.
Eingabe-Schema
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}⚪release_subdomain
Release your reserved subdomain. Deletes the reservation, any deployed site, and all document DB data for that site.
Eingabe-Schema
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_site_api_key
Get (or create) the public site API key for your reserved subdomain. Embed this key in your static site and call https://api.demo.st/v1 with Authorization: Bearer <key>. Tenant is scoped by the key — never share another site's key.
Eingabe-Schema
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡rotate_site_api_key
Rotate the public site API key. The old key stops working immediately; update your site with the new key.
Eingabe-Schema
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢list_collections
List document collections for your site (api.demo.st document store).
Eingabe-Schema
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡create_collection(name)
Create a document collection (lowercase letter start; letters, numbers, underscores; max 63 chars). Max 20 collections per site.
Eingabe-Schema
{
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Collection name, e.g. todos or posts."
}
},
"required": [
"name"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🔴delete_collection(name)
Delete a document collection and all of its records.
Eingabe-Schema
{
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Collection name to delete."
}
},
"required": [
"name"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢list_records(collection, limit, offset)
List records in a document collection.
Eingabe-Schema
{
"type": "object",
"properties": {
"collection": {
"type": "string",
"description": "Collection name."
},
"limit": {
"description": "Max records to return (default 100).",
"type": "integer",
"minimum": 1,
"maximum": 500
},
"offset": {
"description": "Offset for pagination.",
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
}
},
"required": [
"collection"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🟡upsert_record(collection, data, id)
Create or update a JSON record in a collection. Pass data as an object. Optional id to upsert a specific record.
Eingabe-Schema
{
"type": "object",
"properties": {
"collection": {
"type": "string",
"description": "Collection name."
},
"data": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {},
"description": "JSON object to store."
},
"id": {
"description": "Optional record id (create or replace).",
"type": "string"
}
},
"required": [
"collection",
"data"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}🔴delete_record(collection, id)
Delete a record from a document collection.
Eingabe-Schema
{
"type": "object",
"properties": {
"collection": {
"type": "string",
"description": "Collection name."
},
"id": {
"type": "string",
"description": "Record id."
}
},
"required": [
"collection",
"id"
],
"$schema": "http://json-schema.org/draft-07/schema#"
}Community
Nachweis