/mcp is a hosted
MCP (Model Context Protocol) endpoint — the same
server that ships as the drop-core-mcp stdio bin, exposed
over Streamable HTTP. It is stateless:
every JSON-RPC message is an independent POST /mcp
answered with a plain JSON response (no SSE stream, no sessions;
GET/DELETE answer 405).
The tool surface is identical to the stdio server: guarded store
reads & writes, collections, templates, files, fetch/import,
design preview/commit — plus the drop-core:// rule and
agent-guide resources.
⚠ Your access-token is forwarded to the core API for every
tool call, so the token's own access tree keeps applying. Prefer a
store-scoped service token — master tokens work, but
are logged and echoed as tokenScope: "master" on every
result, and can reach every store on this environment.
| Header | Required | Description |
|---|---|---|
access-token |
always | A drop-core access token (store-scoped service token preferred). Authorization: Bearer <token> is accepted as an alias. |
store |
always | The store id this MCP session is PINNED to — one store per conversation. To work on another store, start a new session with its id here. |
Accept |
recommended | application/json, text/event-stream per the MCP spec. Plain-JSON clients without it are accepted too. |
Claude Code:
claude mcp add --transport http drop-core https://core.inbs.cz/mcp \ --header "access-token: <token>" \ --header "store: <store-id>"
.mcp.json:
{
"mcpServers": {
"drop-core": {
"type": "http",
"url": "https://core.inbs.cz/mcp",
"headers": {
"access-token": "<token>",
"store": "<store-id>"
}
}
}
}
MCP Inspector: run npx @modelcontextprotocol/inspector,
pick Streamable HTTP, enter the URL and the two headers.
The demo environment lives at
https://demo-core.inbs.cz/mcp (demo tokens only) — this
deployment's environment is shown in the version line above.
| Tool | Description |
|---|---|
readStoreDocument | Read a document of the session's store (path-guarded; customer/order/invoice PII refused). |
listStoreCollection | List documents of a store collection. |
updateStoreDocument | Guarded deep-merge write to a store document (direct /admin/update). |
writeSchema | Create or update a schema — a flat shared id per collection, or the per-document general/{collection}/{document} form for one-off pages. |
listCollections / registerCollection | List / register the store's data collections. |
listTemplateAssets / readTemplateAsset | Browse and read the store's template bundles. |
writeTemplateAsset | Versioned template file write. |
listStoreFiles / readStoreFile / writeStoreFile | Browse, read and write the store's file storage. |
fetchWebPage | SSRF-guarded fetch of an external web page. |
importImageFromUrl | Import an external image into the store's files. |
generateImage | AI image generation — only registered when the server has a Gemini key configured. |
writeWebTemplate | Write a web (page) template for an explicit target schema. |
previewDesign / commitDesign | Preview and commit the store's design tokens. |
Every tool result echoes the env and store
it ran on. This hosted endpoint is pinned to one store per
session (the store header): there is no
useStore tool and no per-call
store/env retargeting here — start a new
session to work on another store. Writes on prod
affect the live store, and the presented credential is
re-authorized on every call.
| Resource | Description |
|---|---|
drop-core://rules/{name} | A single drop-core rule fragment (the same rules composed into the admin agents' system prompts). |
drop-core://rules/all | All rule fragments concatenated. |
drop-core://docs/agents | The drop-core agent guide: data model, paths, workflows. |
Each button POSTs a single JSON-RPC message to
/mcp with the headers above.
// Use the buttons above to send a request