The gnostic OpenAPI generator hardcodes `format: enum`, `format: bytes`, and `format: field-mask` on string properties. These are OpenAPI-only markers; MCP clients treat tool schemas as JSON Schema 2020-12 and warn or fail on them (zod-based parsers log "unknown format" for every tool on every load, ajv strict mode rejects the definitions). Normalize schemas as they leave the resolver and when parameter schemas are cloned: drop `format: enum` (the `enum` keyword is already present), rewrite `format: bytes` to `contentEncoding: base64`, and drop `format: field-mask`. The generated openapi.yaml is unchanged. A catalog test now walks every curated tool's input and output schema and fails on any format outside the registered allowlist. Fixes #6262 |
||
|---|---|---|
| .github | ||
| cmd/memos | ||
| docs | ||
| internal | ||
| proto | ||
| scripts | ||
| server | ||
| store | ||
| web | ||
| .dockerignore | ||
| .gitignore | ||
| .golangci.yaml | ||
| .release-please-manifest.json | ||
| AGENTS.md | ||
| CHANGELOG.md | ||
| CODEOWNERS | ||
| CONTEXT.md | ||
| go.mod | ||
| go.sum | ||
| LICENSE | ||
| README.md | ||
| release-please-config.json | ||
| SECURITY.md | ||
✨ Featured sponsor: CodeRabbit — Industry-leading AI code reviews.
Memos
Fast enough for every thought. Private enough for all of them.
Memos is an open-source, self-hosted home for short-form thinking. Daily notes, links, work logs, and snippets flow into a chronological Markdown timeline—on infrastructure you control, without the overhead of an all-in-one workspace.
Run with Docker · Try the live demo · Read the docs
Why Memos?
- Capture quickly — Write in Markdown, attach media, and save without choosing a title, folder, or template.
- Organize lightly — Revisit notes through the timeline, search, tags, and pins.
- Share selectively — Keep memos private or publish only what you choose.
- Keep control — Self-host Memos with zero telemetry and MIT-licensed source.
Quick Start
Run Memos with Docker:
docker run -d \
--name memos \
-p 5230:5230 \
-v ~/.memos:/var/opt/memos \
neosmemo/memos:stable
Other install options are in the deployment guide.
Web Clipper
Save pages, selections, and images from your browser straight into Memos as source-linked Markdown. Get the Memos Web Clipper for Chrome or Firefox.
Sponsors
Love Memos? Sponsor the project on GitHub.
Get Help
Read the docs, join Discord, or ask in GitHub Discussions. Found a bug or have an idea? Open an issue. To contribute, see the contributing guide.