
WireCat Memo
dev.wirecat由 wirecat.dev 发布v0.131.48更新于 Nov 7, 2026
People's context across messengers, notes and mail, from a local store. Set up the memo CLI first.
概览
本地优先的个人知识服务器,让助手检索你的笔记、文档、邮件和消息,并给出带来源引用的回答。
- 可以做什么
- 按词或语义检索笔记、邮件、消息和日历事件,每条结果附来源引用
- 读写笔记、标签、笔记与人物之间的链接,并把笔记导出为文件
- 查看某个人的上下文:关联身份、近期消息、邮件、相关笔记和未完成任务
- 管理组织、项目、关系、任务、依赖关系和本地提醒
- 为某个问题向助手提供证据包,可选由模型分析
- 记录助手提出的记忆、事实和待确认操作
- 适用场景
- 适合在本地保存笔记、邮件和聊天记录,并希望助手回答“我了解这个人什么”“这个话题在哪里讨论过”“我答应过什么”等问题且附上出处。也适合围绕这些来源跟踪人物、项目和任务的场景。
- 运行要求
- 通过 npx 以本地进程运行 npm 包 @wirecat/cli-memo;需要 Node.js 22.16+ 或 24+(不支持 23),仅在 Linux 上测试过。笔记需先添加并同步文件夹;邮件需另装 mail CLI;消息需 tg-cli 或 max-cli。语义检索需一次性下载本地模型。可选的模型分析使用 MEMO_MODELS_ANALYSIS_PROVIDER 和 MEMO_MODELS_ANALYSIS_MODEL。
安装
在 SourceWeft 中
- 打开 控制台中的 WireCat Memo,将其添加到工作区。
- 为需要使用其工具的对话启用该服务。
Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。
其他 MCP 客户端
参照 仓库 中的启动说明。
README
[Local knowledge for your AI agents]
memo
Local knowledge for your AI agents.
Your notes, documents, mail and messages in one local store — linked to people, tagged, and searchable
with a reference to every source.
memo is a command-line tool. It imports a folder of notes such as an Obsidian vault, the documents in
it, and your mail; it reads the messages that tg-cli and
max-cli keep. Then you, or your AI agent, ask: what do I know
about this person, where did we discuss this, what did I promise. Every answer points back to its source.
Example — search two invented notes in a notes folder:
Each hit names its file and shows a matching excerpt. The diagnostic line goes to stderr: the local model
is missing, so this search used words only. --json returns structured results for an agent or script.
Quick start
You need Node.js 22.16+ or 24+ (not 23). memo is tested on Linux; macOS and Windows are not tested yet.
A global install does not install the agent skill; run memo skill install --for all above.
npm 11.17 and later warn about install scripts not covered by allowScripts; with npm 11 the scripts still run.
npm 12 blocks them instead. Run the npm install -g --allow-scripts=… command npm prints under the warning;
it allows only the packages it names, once. On Windows, open a new terminal if memo is not found.
That is all notes need. Then add more context:
- Messages: install tg-cli or max-cli; memo reads the same local store.
- Search by meaning: needs a local model of about 135 MB, downloaded once with:
memo models download e5-small. Without it, memo searches by words. - Mail: install mail, run
mail <profile> session start --address <address>andmail <profile> sync; memo then searches that mail (memo search mail 'invoice'). - Stay current:
memo jobs startrunsmemo syncevery five minutes (Linux, systemd). - Your agent:
memo skill install --for allputs memo's skill where Claude Code, Codex and Gemini CLI read it;memo skill showprints it.
Or ask your agent: "Help me install memo with npm install -g @wirecat/cli-memo and
memo skill install --for all, read memo --help, then help me connect a notes folder I choose."
More: installation · install memo on wirecat.dev
What can you do?
"What do I need to know about Alice before the call?"
Every identity linked to her, the last message each way, chats in common, linked mail, the notes about her and the open tasks — each with a link to its source.
"Where did we discuss the Harbour budget?"
Messages, imported mail and notes, ranked together. When you know the kind, search notes,
search mail and search messages read every field.
"What did I promise people this week?"
An evidence bundle for your agent: the matching sources with their references, what was searched, and the instruction to cite them. Your agent writes the answer; memo calls a model only when you ask it to.
More: search · ask for the context you need
Built for AI agents
- Any agent with a terminal — Claude Code, Codex, Gemini CLI and others run
memocommands;--jsongives them structured output. - Evidence, not guesses —
memo answers createhands over sources with references, and says what it could not search. - MCP —
memo mcp servelets MCP apps such as Claude Desktop or Cursor read your messages, mail and notes, and propose memories, directly recorded facts and outbound actions. Project proposals can also be decided by the agent when allowed; you can require owner decisions instead. Apps on the web or phone use authenticated HTTP MCP through your HTTPS tunnel, with the same saved permissions.
More: connect your AI agent · memories and facts · the MCP server
Why memo?
- Local first. Everything lives in a local store; search by meaning uses a local model.
- Every answer has a source. Hits carry a reference you or your agent can open: a note, a file page, an email, a message.
- Links, not guesses. Notes link to people and records; identities are never merged because a name matches.
- Imports leave your sources untouched. Memo never changes a mailbox; Gmail cleanup
is a command of the separate
mailprogram. Tags and your own notes live in the store. - Review and delegation are recorded. Memories and outbound actions an agent suggests wait for your confirmation. Project decisions can be delegated or left to the owner. Memo never sends anything.
Status: early. Context, notes and their links, document import, Gmail and IMAP imports, tasks, manual relationships, evidence bundles and local reminders work. A task in a project cannot have a reminder yet.
More: security · security on wirecat.dev
What it reads
- Folders of notes: Obsidian or plain Markdown, with links, aliases and tags.
- Documents in them: TXT, CSV/TSV, text-layer PDF, DOCX, XLSX, ODT/ODS, PPTX and EPUB, with the page, row or cell each passage came from.
- Mail: Gmail or another IMAP account, synced by the mail CLI, text and headers only.
- Messages: the tg, max and wa store, with the people linked across messengers and mail.
You add your own notes about messages, people and projects, tags, tasks and reminders, organizations and projects.
More: notes · files memo can read
Commands by task
Every command takes --help; most take --json. memo guide lists scenarios — the commands for a common task, in
order — and memo guide person-brief gathers one person across every WireCat tool.
More: technical docs · memo on wirecat.dev
Notes from files, and notes you write
From a folder. memo folders add gives a folder an id that the store uses; its path is only where it is
on this computer, so the same folder on another computer is attached with memo folders update <id> <path>.
memo sync --only notes stores each file as a note named by its path. An edited file keeps its old text as a
revision; a moved file keeps its id, links and tags; a deleted file loses its text on the next import. The
obsidian format (the default) reads [[Note|label]] links, aliases, tags: and #tags; markdown reads
[label](path.md) links and tags:. A [[Kai Sample]] link becomes a link to a person once someone by that
name is in the store. Hidden folders such as .obsidian are skipped.
Written in memo. A note you write is the store's, not a file's, and is about whatever --subject names: a
person, a message, a chat, a project, a task, another note.
An edit names the revision it changes, so an edit made meanwhile is never lost. export writes your notes
as files that import then skips, and never overwrites a file you edited.
More: notes · add your notes · create your own notes
Search and evidence
Notes are searched by words and word stems in the query language messages use — phrases, AND/OR/NOT,
tag:, date: — and by meaning once the local model is downloaded (memo models download e5-small); both are ranked together. search all
reads messages, imported mail, notes and the calendar events gcal stored together, and nothing else. When you know the kind, its own search
reads every field: search mail takes from:, to:, cc:, bcc:, subject: and mailbox:.
memo answers create needs a scope (--all, or --source, such as --source telegram:1,notes) and returns evidence by default. To
call a model instead, set MEMO_MODELS_ANALYSIS_PROVIDER and MEMO_MODELS_ANALYSIS_MODEL and pass
--analyze; a remote model also needs --allow-remote.
More: search · searching on wirecat.dev
People, organizations and projects
memo context answers from the shared store: every identity linked to the person, the last message each
way, recent messages, chats in common, linked mail, their calendar events, the notes about them and the open tasks. Who is who is
decided in messaging — tg personal contacts link <person> email:<address> — and a same name is never enough.
memo notes links add telegram:"Alice Example" /path/to/notes/people/Alice.md names the note that is about her.
Organizations and projects are yours, not one account's. Relationships (member-of, related-to) are
manual statements; relationships scan only proposes a project's likely chats and people, or shared-domain links,
for you to confirm. A project can hold meetings (projects meetings link), and memo vocabulary gives projects and
topics reviewed aliases, so one name always means one project.
Before adding a new tag or topic, run memo vocabulary check <name> --json. Reuse a
canonical label or add an alias if it means the same thing. For a deliberately distinct label,
run memo vocabulary create <name> --fingerprint <creation_fingerprint> --json; select --kind topic
on both commands when creating a topic. The owner accepts this review; MCP has vocabulary_check
but no tool that creates a label. An intervening label or alias change requires a fresh review.
memo vocabulary check --json finds likely synonyms already in the catalog. Its complete
flag reports whether the bounded comparison finished; candidates require review and are never
merged automatically. Use --kind tag, --kind topic or --kind project to narrow the review.
More: people and projects · people on wirecat.dev
The separate mail CLI brings mail in: mail <profile> session start --address [email protected], then mail <profile> sync, fill the shared store, and memo searches and shows that mail.
mail keeps text and headers, not attachments, and only reads your mailbox.
Memo never opens a mailbox. Looking at a mailbox before a sync (mail <profile> account inspect), a Google Takeout
archive (mail <profile> messages import), rules and cleanup are commands of mail; memo sync and its timer only
prepare the stored mail for search by meaning. To see how far a mailbox synced, run mail <profile> status.
More: mail · mail on wirecat.dev
Tags, tasks and reminders
Tags are your labels on a note, an email, a message, a chat, a person, an organization, a project, a task,
a meeting, or every note under a folder. They live in the store; files, Gmail labels and mailbox flags are
never changed. A task points at the message or note it came from, or is your own in a
project (--project RES --title …), and can be blocked by another until it is done. memo tasks agenda
says what needs a look today in the account you name; a notes folder is one (--source notes). Reminders are local:
a caller you choose polls for them, and nothing is delivered to a messenger or mailbox.
More: tags · tasks and reminders · tag your sources
Agents and MCP
An agent with a terminal runs memo with --json. An MCP app starts memo mcp serve on stdin and stdout. Through it
the app can use Memo's commands, including writes, limited by the saved permissions and read lock.
It can open search references with notes_show and messages_show. Existing tool names still work:
An agent's new memories, directly recorded facts and outbound action proposals start as proposed.
Permission keys limit reading, editing and decisions; writes without a saved level use ask, which runs over MCP
without a terminal question. Source-folder and mail-rule changes need mcp.authority, off by default.
Project proposals have a separate flow: by default only you decide them. Set agent_decisions: true to let an agent
decide them with a recorded reason, creating accepted facts and numbered tasks or confirming a key document. Meeting decisions and annotation restore require explicit permissions. Memo never sends a message
or email. memo agents list lists each call, its result and time, without its arguments.
More: memories and facts · the MCP server · MCP on wirecat.dev
Keeping it current
memo sync brings notes and mail up to date and reads only what changed. memo jobs start --every 5m runs
it on a systemd user timer; jobs status shows the next and last run, and while timer runs fail every memo
command says so in one stderr line. A lock keeps two imports apart: a
timer run that finds a sync still running skips and exits 0. One failing source does not stop the others.
More: keeping memo up to date · import a folder on wirecat.dev
Configuration
memo folders add and memo jobs start write ~/.config/cli-memo/config.json for you. By hand you set what
to skip and where exported notes go:
More: configuration · configuration on wirecat.dev
Security
- Imports read note folders without changing them. Memo never opens a mailbox, sends mail or changes one; reading and cleaning up mail are commands of
mail. - What memo adds — your notes, links, tags, tasks, memories — stays in the local store.
- A note or mail deleted at the source loses its text in the store on the next import; a run that finds an unusually large share missing deletes nothing and says so.
- Evidence reaches a model only with
--analyze, and a remote one only with--allow-remote. - Agents propose; only you confirm memories and approve actions.
More: security · security on wirecat.dev
Limits
- Files up to 50 MiB; stored text up to 200,000 characters a file. Scanned PDFs, legacy
.xlsand larger files are reported, not read. - Search by meaning embeds at most 600 chunks a run; the next run continues.
memo sync --only mailreads 200 new messages per account a run by default (--limit) and keeps up to 1,000,000 characters of a body and 200,000 of an attachment's text (mail.max_body_chars,mail.max_attachment_chars).- Searches return at most 100 results;
tags listshows 100 labels unless--limitsays more. - Tags are 1–32 letters a–z, digits or hyphens.
More: files memo can read · files memo can read
When something is missing
-
Searched by words only: the local meaning model is not downloaded. Install it through tg, max or wa; they share the model folder. Without it, word search still works (search by meaning).
-
A folder is refused by import: it has no id yet —
memo folders add <path>. -
A name is refused: two people share it; use one of the ids it lists.
-
memo answers createasks for a scope: add--all, or--source. -
An empty search: the store holds nothing that matches — not proof that it never happened. Try the kind's own search, looser words, or import that source first.
-
A command failed and you want to see why:
memo runs list status:failed, thenmemo runs show <run-id>. Failed runs are kept for 30 days, runs that worked for 7 (runs).
More: if something is missing · search
Part of WireCat
WireCat is an open-source, local-first context layer for AI agents: tg for Telegram, max for MAX, wa for WhatsApp, zm for archived Zoom recordings, drive for Google Drive and Docs, and memo for your notes and mail. Their imported context is searchable locally. Start with your notes and add the sources you need.
Questions and setup help: join the WireCat Discord. Bugs go to this repository's issues.
Technical docs
The reader guides live on wirecat.dev.
Development
Pull requests are welcome; examples and tests use invented people only.
More: installation
License
来源:README.md,提交 b74571b
工具
0版本历史
16- v0.131.48最新Nov 7, 2026
- v0.131.44Nov 6, 2026
- v0.131.43Nov 6, 2026
- v0.131.39Nov 6, 2026
- v0.131.36Nov 5, 2026
- v0.131.29Nov 5, 2026
- v0.131.23Nov 5, 2026
- v0.131.22Nov 3, 2026
- v0.131.8Nov 1, 2026
- v0.131.4Nov 1, 2026
- v0.131.1Nov 1, 2026
- v0.126.0Oct 31, 2026
- v0.125.0Oct 31, 2026
- v0.123.0Oct 30, 2026
- v0.122.0Oct 30, 2026
- v0.121.0Oct 29, 2026
评分
已满足适用检查项的 50%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通25 分
请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。
- 已声明认证方式10 分
请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。
- 已列出工具15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分
其他 Wire 集成
Wire Cash: bank wire fees and transfer costs
cash.wire官方发布者
Wire Cash 让助手查询美国银行公布的境内外电汇手续费、当日截止时间,以及向墨西哥、印度、菲律宾汇款的 World Bank 汇款成本。

TollWire Evidence
由 GitHub 账号 TollWire 发布
本地 MCP 服务器,把智能体的变更、扫描、审批和部署记录到防篡改哈希链日志中,并可校验该日志。

WireCat b24
dev.wirecat
一个本地 CLI 驱动的 MCP 服务器,让助手读取和修改 Bitrix24 门户的 CRM:交易、线索、联系人、公司、销售流程和产品。

SupportWire
由 GitHub 账号 supportwire 发布
托管式 SupportWire MCP 服务器,让助手分诊客服会话、回复客户,并管理客户、任务与团队设置。
Touchline Wire — FPL & Premier League Intelligence
由 GitHub 账号 Steven-Robinson 发布
免认证的 MCP 服务器,为助手提供 2026/27 赛季英超与梦幻英超(FPL)实时数据:队长人选、预计出场、首发阵容、伤病与统计。