โจ Features
- ๐ Immutable โ every publish creates a new URL; stored Markdown and uploaded assets cannot be updated
- ๐ Capability URL โ anyone with the URL can read it; a 94-bit random ID resists guessing, and pages request no indexing
- ๐ผ๏ธ Local images โ referenced images are uploaded automatically, deduplicated, and served from opaque URLs
- โก Fast โ Cloudflare Workers + R2 + CDN cache; no database, server-rendered documents
- ๐ค Agent-ready โ CLI
--jsonoutput, plus remote and local MCP servers
Pages remain available only while the instance and its storage operate. Viewer updates can change presentation; remote images depend on their hosts. Search-engine directives are not access control and do not guarantee exclusion from search results.
๐ Quick Start
Use Mote from the terminal, from an AI agent, or both โ pick what fits your workflow.
CLI
With Node.js 20+ and publishing permission on https://mote.pub, create a file named hello.md containing # Hello, Mote, then run from its folder:
npm install -g mote-cli
mote login
mote hello.md
Published:
https://mote.pub/7Vk3mQ9x2NFaP4Ls
Live sample โ a project update with images, tables, and code ยท Markdown source
Open the returned URL to read your page. The URL above illustrates the output; each publication gets a new ID.
Need an instance or help signing in? Follow Publish your first document. For your own Access-enabled instance, log in with mote login --api https://mote.example.com --auth-mode oauth. Instance selection and other authentication modes are covered in authentication.
Full options, configuration, scripting and source installation: CLI reference.
MCP
Point your agent at the remote MCP endpoint โ on Access-enabled instances it authenticates over OAuth:
{
"mcpServers": {
"mote": {
"type": "http",
"url": "https://mote.pub/api/mcp"
}
}
}
A local stdio server is also available, adding publish_markdown_file with automatic local-image upload. Setup, tools, and verified clients: docs/mcp.md.
Skill
Teach your agent when and how to publish with Mote:
npx skills add flc1125/mote
The skill drives the CLI or MCP tools โ details: docs/skill.md.
๐ Markdown support
- Tables, task lists, alerts, foldable admonitions and content tabs.
- Code titles and line highlighting; image widths and captions.
- Text highlights, definition lists, abbreviations, footnotes and Chinese emphasis compatibility.
- Math formulas and a supported subset of Mermaid diagrams, with processing limits.
Server-rendered content stays readable without JavaScript. Fixed scripts enhance navigation, code copying, image viewing and footnote previews. CSP restricts these scripts. Document content cannot run scripts.
Compatibility reference and limits ยท Live compatibility specimen ยท Markdown source
๐ Self-hosting
Run your own instance on Cloudflare: docs/self-hosting.md, including free-tier limits and capacity considerations.
๐ Limits
1 MiB = 1,048,576 bytes. The CLI counts assets after content deduplication; remote images are not included. The bundle limit is Markdown plus uploaded image bytes. See exact limits.
Uploaded SVG images and raw HTML SVG are not supported. Static Mermaid diagrams use separately sanitized, generated SVG.
๐ Documentation
- Documentation index โ guides and references organized by task.
- First publication โ install, sign in and publish your own file.
- CLI ยท Authentication ยท MCP ยท Skill ยท Markdown compatibility
- Self-hosting ยท Deployment operations
- Migration notes ยท Changelog
- Contributing ยท Security policy
Production Workers deploy from
mainthrough Cloudflare Workers Builds. GitHub Actions handles CI and stable-tag CLI/GitHub releases; see deployment operations.
๐ License
Mote is released under the MIT License.