What this server does, how sign-in works and what data it keeps.
https://mcp-home-k7q2.pages.dev/mcp: MCP over Streamable HTTP, POST only. Protocol versions: 2026-07-28, 2025-11-25, 2025-06-18, 2025-03-26.
2026-07-28 is served statelessly (version and capabilities in each request's _meta, server/discover supported).
Older clients may use the initialize handshake; no sessions are created.
| Tool | What it does | Input | Output (structured content) |
|---|---|---|---|
memo_write | Saves a text note on this server and returns its id. | text | id, created_at |
memo_search | Finds notes whose text contains every word of the query (case-insensitive), newest first. An empty query returns the newest notes. | query, limit | notes |
upload | Stores a file on this server and returns a public link that anyone can open. Give the file as `content` (text, or base64 with encoding "base64") or as a `url` to copy from. Max 10 MiB. | filename, content, encoding, mime_type, url | url, id, filename, size, mime_type |
transcribe | Fetches audio from a URL and turns it into timestamped text with Whisper (Workers AI). start and end are seconds from the beginning. Max 25 MiB. | url, language | segments, text, language, duration |
Every tool declares an outputSchema. Results come back as structuredContent that matches it, plus the same JSON as text.
Bad input comes back as a tool result with isError: true.
{ text } → { id }. Up to 20,000 characters.{ query } → { notes: [{ id, text, created_at, source }] }. Every word of the query must appear (case-insensitive); newest first; empty query = newest notes.{ filename, content, encoding? , mime_type? } or { url } → { url }. Up to 10 MiB. The link is served by this server under /files/ and anyone with it can open it.{ url } → { segments: [{ start, end, text }] }, times in seconds. Up to 25 MiB of audio; uses Whisper (@cf/openai/whisper-large-v3-turbo) on Cloudflare Workers AI./.well-known/oauth-protected-resource/mcp;
authorization server metadata (RFC 8414) at /.well-known/oauth-authorization-server.
A request without a token gets 401 with a WWW-Authenticate header that names the metadata./oauth/register.mcp (all four tools). Tokens are bound to the resource https://mcp-home-k7q2.pages.dev/mcp (RFC 8707) and last one hour; refresh tokens are issued.access_denied.| What | Where | How long |
|---|---|---|
| Notes: text, time, name of the app that wrote them | Cloudflare D1 | Until the owner deletes them |
| Uploaded files and their name, type, size, time | Cloudflare KV | Until the owner deletes them. Public to anyone with the link. |
| OAuth clients, grants and tokens (tokens and secrets only as hashes) | Cloudflare KV | Until they expire or are revoked |
Audio sent to transcribe | Not stored. Fetched, sent to Workers AI (zero data retention model), then dropped. The transcript is returned, not kept. | — |
| Request logs | Cloudflare platform logs | Cloudflare's default retention |
No analytics, no cookies except the short-lived consent cookies on the sign-in page.