Skip to content
Agentmart
Submit a tool

Piia Engram

Local-first AI identity for MCP coding tools.

Connector by Patdolitse · GitHub account verified by the MCP Registry

IndexedAGPL-3.0Local (stdio)★ 163
Write a review

Install

Works with Claude Code, Codex, VS Code, Cursor, Windsurf, Claude Desktop. Read the repository before you give any tool access to your data.

npx agentmarket install connector/patdolitse-piia-engram

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Local-first AI identity for MCP coding tools. Lessons, decisions, and context you control.

Use cases: agent-memory

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this server can do and what it asks for, from its tool list and install config. Checked Oct 25, 2026.

Tools
30 read · 16 write · 2 delete · 11 not yet classified
Secrets
None asked for
Install scripts
None found
Runs as
Python package

Tools by what they do 59

Read from the source code; the running server may list different tools.

Read 30 · Look things up without changing anything.

  • check_anchors
  • explore_knowledge
  • extract_session_insights
  • find_tool
  • get_audit_log
  • get_daily_log
  • get_decisions
  • get_identity_card
  • get_identity_facets
  • get_knowledge_history
  • get_knowledge_overview
  • get_lessons
Show 18 more tools
  • get_permission_profile
  • get_playbooks
  • get_project_context
  • get_recall
  • get_recent_context
  • get_relevant_knowledge
  • get_resume_brief
  • get_stale_knowledge
  • get_user_context
  • get_wrap_up_session_status
  • ingest_notes
  • list_agent_sessions
  • list_projects
  • list_tools
  • read_web_content
  • request_outline_review
  • review_staging
  • search_knowledge

Write 16 · Create, change, send or run things.

  • add_decision
  • add_lesson
  • add_playbook
  • archive_knowledge
  • confirm_knowledge
  • import_engram
  • manage_caller_trust
  • memory_store
  • merge_knowledge
  • onboard_accept
  • register_tool
  • save_agent_context
Show 4 more tools
  • save_project_snapshot
  • start_project
  • update_identity
  • update_knowledge

Delete 2 · Delete, drop, revoke or wipe things.

  • manage_playbook
  • manage_relation

Not yet classified 11 · We could not tell from the name and description.

  • doctor
  • export_engram
  • export_feedback_report
  • export_knowledge_report
  • get_knowledge_inheritance
  • onboard_repo
  • playbook_execution
  • preview_context_governance
  • refresh_quick_context
  • user_portrait
  • wrap_up_session

Secrets and settings it asks for

Other settings (environment variables or headers).

  • ENGRAM_MCP_STARTUP_SYNC
  • ENGRAM_TOOLS
  • PYTHONIOENCODING

Files it touches

  • Any path the agent passes to its tools

Tools (59)

Read from the source code; the running server may differ. Descriptions are the server’s own words; hidden characters are shown as [U+…].

  • add_decision

    记录单条关键决策(用户明确选了某个方案)。 / Record one key decision when the user explicitly chose an option. **Lifecycle: writeback** — 对话中做出明确决策时调用。 Lifecycle: writeback — call when an explicit decision is made during conversation. 用途:用户说"我们决定用 X"或"以后都用 Y"时调用。 Purpose: Call when the user says they decided to use X or will use Y going forward. 注意:如果用户给了一段会话摘要让你自动提取,请用 extract_session_insights 而不是本工具。 Note: If the user gives a session summary for automatic extraction, use extract_session_insights instead. 决策链(Decision Thread):同一问题改选方案时,新决策是取代旧决策的提案 (pending_supersedes),在任何审批模式下都等主人用 engram review 批准,批准前旧决策照常使…

  • add_lesson

    记录单条经验教训(你已经知道要记什么)。 / Record one lesson learned when you already know what to save. **Lifecycle: writeback** — 对话中学到可复用的经验时调用。 Lifecycle: writeback — call when reusable experience is learned during conversation. 用途:用户明确说出一条踩坑经验或技术发现时调用。 Purpose: Call when the user explicitly states a lesson, pitfall, or technical finding. 注意:如果用户给了一段会话摘要让你自动提取,请用 extract_session_insights 而不是本工具。 Note: If the user gives a session summary for automatic extraction, use extract_session_insights instead. Args: summary: 教训的一行摘要。 / One-line lesson summary. detail: 详细说明(可选)。 / Detailed explanation (option…

  • add_playbook

    记录操作手册(Playbook)— 结构化的多步骤流程。 / Record an operational playbook — a structured multi-step procedure. 用途:完成一个多步骤操作流程后(如发布到 Registry、上架应用等),将步骤和经验记录为 Playbook, 方便日后调取复用,避免重复摸索。 Purpose: After completing a multi-step operational process (publishing to a registry, app deployment, etc.), record the steps as a Playbook for future retrieval. 每条 Playbook 独立存储为单个文件,通过 triggers(记忆点关键词)快速调取。 Each Playbook is stored as an individual file, quickly retrievable via trigger keywords. 经 MCP 写入的 Playbook 一律进入待审(任何审批模式),主人用 engram review 批准后才会被使用。 A playbook written over MCP always waits in the review queue (ev…

  • archive_knowledge

    按 ID 归档 lesson、decision 或 playbook(自动识别类型)。 / Archive a lesson, decision, or playbook by ID, automatically detecting the item type. 用途:某条知识已经过时但不应删除时调用。 Purpose: Call when a knowledge item is outdated but should be preserved rather than deleted. 注意:如果只是内容重复需要合并,用 merge_knowledge。被主人钉住的条目经 MCP 只读:返回 pinned_entry(零写入)并给出用 supersedes 提交修订提案的方式。 Note: If the item is a duplicate that should be merged, use merge_knowledge. An Owner-pinned entry is read-only over MCP: the reply is pinned_entry (nothing written) with how to submit a supersedes revision proposal instead. 待审(pending)条目的归档由主人在本地 engra…

  • check_anchors

    Owner-only: revalidate anchor-backed freshness provenance for one repository. Owner/admin surface: checks project-local anchors and writes anchor_status / anchor_checked_at; refused for non-owner callers when governance is enabled. 用途:owner 在当前仓库内确认依赖或文件锚点是否仍成立;失效锚点会回落时间衰减。 Purpose: Let the owner re-check dependency/file anchors for a repository; invalid anchors fall back to time decay through the pure freshness policy. Args: project_root: 当前仓库根目录。 / Current repository root. adopt_legacy: 是否为旧 anchor 绑定当前 project id,但不重新判定状态。 / Whether to bind legacy anchors to the current project i…

  • confirm_knowledge

    Owner-only: explicitly stamp a knowledge item with human/test/anchor freshness provenance. Owner/admin surface: writes owner-confirmed provenance stamps and is refused for non-owner callers when governance is enabled. A pending (staging) item is decided in the local engram review: the reply is local_review_only (nothing written). 用途:用户/owner 已经确认某条知识仍成立,或明确背书它由测试信号/锚点支撑时调用。 Purpose: Call only after explicit owner confirmation that a knowledge item is still valid, or is backed by a test signal / owner-approved anchor. Args: item_id: lesson、decision 或 playbook 的 ID。 / ID of the lesson, de…

  • doctor

    记忆系统自诊断。 / Memory system self-diagnosis. 用途:检查 Engram 记忆系统健康状态,发现潜在问题(数据碎片、过期知识、冲突决策、 身份层异常等)。这是 MCP doctor;CLI 冲突视图请用 ``engram conflicts list``。 Purpose: Run a comprehensive health check on the Engram memory system — detects data fragmentation, stale knowledge, conflicting decisions, identity issues, and more. Args: output_format: "markdown" 或 "json"。 / "markdown" or "json".

  • explore_knowledge

    探索知识关联:相连条目、相似条目或全库合并建议。 / Explore knowledge links: related items, similar items, or merge candidates across the library. 用途:已知条目 ID 时沿关系图看相关知识(related)或查近似重复(similar);定期维护时 全库扫描可合并条目(merge_candidates,附可直接执行的 merge 命令)。 Purpose: Follow the knowledge graph from a known item (related), find near-duplicates of an item (similar), or scan the whole library for merge candidates during maintenance (merge_candidates, with actionable merge commands). 注意:只有关键词没有 ID 时用 search_knowledge;执行合并用 merge_knowledge。 Note: Use search_knowledge when you only have keywords; use merge_knowledge to actually merge. …

  • export_engram

    导出 Engram 数据:单文件备份或 OpenClaw 兼容格式。 / Export Engram data: a single-file backup, or the OpenClaw-compatible format. Owner/export surface: writes backup/export files and is refused for non-owner callers when governance is enabled. 用途:format="native"(默认)把整库导出为单一 JSON 备份文件,用于备份、迁移 到另一台机器或跨设备同步;format="openclaw" 导出为 SOUL.md + MEMORY.md + USER.md,交给 OpenClaw 或兼容工作流使用。 Purpose: format="native" (default) exports the entire store as one JSON backup for backup/migration/sync; format="openclaw" exports SOUL.md, MEMORY.md, and USER.md for OpenClaw-compatible workflows. 注意:导出包含全部身份、知识和项目数据,请按隐私级别处理文件。 No…

  • export_feedback_report

    导出匿名内测反馈报告。 / Export anonymous beta feedback report. 用途:用户想分享使用反馈时调用。报告只包含计数和分布,不含知识内容或个人信息。 Purpose: Call when the user wants to share usage feedback. The report contains only counts and distributions — no knowledge content or personal information.

  • export_knowledge_report

    导出完整 Markdown 知识报告并返回内容。 / Export a full Markdown knowledge report and return its content. Owner/export surface: writes an exports/knowledge_report_*.md file and is refused for non-owner callers when governance is enabled. 用途:需要把当前知识库整理成人可读报告,用于审阅、归档或分享时调用。 Purpose: Call when the knowledge base should be rendered into a readable report for review, archiving, or sharing. 注意:报告会保存到 ~/.engram/exports/,同时返回正文内容。 Note: The report is saved under ~/.engram/exports/ and the content is returned as well.

  • extract_session_insights

    从会话摘要中批量自动提取经验教训和决策(你不需要自己分类)。 / Automatically extract lessons and decisions from a session summary without manually classifying them. **Lifecycle: writeback (auto)** — 自动提取的知识默认进入 staging 层,需要 review 后才升级为 verified。 Lifecycle: writeback (auto) — auto-extracted knowledge defaults to staging tier and requires review before promotion to verified. 用途:会话结束时,把一段自由文本摘要交给 Engram,它会自动解析出 lessons 和 decisions 并存入知识库。 Purpose: Call at the end of a session with a free-text summary so Engram can parse and store lessons and decisions. 注意:如果你已经明确知道要记一条 lesson 或 decision,直接用 add_lesson 或 add_decision 更精准;本…

  • find_tool

    搜索已注册的本地工具/程序。 / Search for registered local tools and programs. 用途:需要查找某个工具的路径、版本或安装方式时调用。避免重复搜索或重新安装已有工具。 Purpose: Call when you need a tool's path, version, or install method. Prevents re-searching or re-installing. Args: query: 搜索关键词(名称、分类、用途均可匹配)。 / Search keywords matching name, category, purpose, or path.

  • get_audit_log

    获取最近的审计日志条目。 / Get recent audit log entries. 用途:需要查看 Engram 最近的读写操作、排查行为或核对记录时调用。 Purpose: Call when inspecting recent Engram reads/writes, debugging behavior, or auditing activity. 注意:审计日志默认开启;用 ENGRAM_AUDIT=0 可关闭。最多返回 200 条。 Note: Audit logging is on by default (opt out with ENGRAM_AUDIT=0). Max 200 entries. Args: limit: 最多返回多少条(默认 50,上限 200,按最近优先)。 / Maximum entries to return (default 50, max 200, most recent first).

  • get_daily_log

    读取项目的每日日志(人类可读的会话时间线)。 / Read a project's daily log (human-readable session timeline). 用途:v3.30 新增——每次 wrap_up_session 会在 ``~/.engram/daily/<pid>/<YYYY-MM-DD>.md`` 追加一条带时间戳的条目(含 lesson/decision/playbook 计数 + 摘要前 600 字符)。 新会话需要"上次到底干了什么"的快速概览时调本工具,比 search_knowledge 更直观。 Purpose (v3.30): every wrap_up_session appends a timestamped entry to ``~/.engram/daily/<pid>/<YYYY-MM-DD>.md`` with a lesson/decision tally and the first ~600 chars of the summary. Call this when a new session needs a glance-able "what happened today" timeline — faster than search_knowledge for recall. Args: project_fold…

Show 44 more tools
  • get_decisions

    按时间列出关键决策;也可还原决策链或某个问题的修订历史。 / List the user's key decisions by time; can also reconstruct a decision thread or a question's revision history. 用途:浏览/筛选最近决策;给 thread_seed_id 时还原包含该条目的【决策链】(演进顺序、 superseded 标记、当前 head);给 history_question 时按问题文本模糊匹配,返回该决策 的完整修订历史(revisions + current)。 Purpose: Browse or filter recent decisions. With thread_seed_id, reconstruct the DECISION THREAD containing that item (evolution order, superseded flags, current heads). With history_question, fuzzy-match by question text and return the full revision history (revisions + current). 注意:有明确关键词搜索决策内容用 search_knowledge…

  • get_identity_card

    导出用户的可携带 AI 身份卡(Markdown 格式)。 / Export the user's portable AI identity card as Markdown. Owner/export surface: writes exports/identity_card.md and is refused for non-owner callers when governance is enabled. 用途:需要把用户身份、工作方式、质量标准、经验教训分享给其它 AI 工具时调用。 Purpose: Call when another AI tool needs a self-contained summary of the user's identity, work style, quality standards, and lessons. 注意:如果本会话只需要运行时上下文,用 get_user_context 更合适。 Note: If the current session only needs runtime context, get_user_context is usually the better choice.

  • get_identity_facets

    按切面读取用户身份信息(画像/偏好/信任边界/工作风格/质量标准/领域图谱)。 / Read user identity facets: profile, preferences, trust boundaries, work style, quality standards, and the domain map. 用途:需要单独读取某一类身份字段(如角色语言、协作偏好、验收标准、技术领域)时调用。 Purpose: Call when you need a single identity facet such as role/language, collaboration preferences, acceptance standards, or technical domains. 注意:完整冷启动上下文用 get_user_context;facet 名与 update_identity 的 field 一一对应(外加 domains)。 Note: Use get_user_context for the full cold-start context; facet names mirror the update_identity fields (plus domains). Args: facet: all | profile | preferences …

  • get_knowledge_history

    查看一个知识条目(lesson/decision/playbook)的修订历史。 / Return the revision history (superseded snapshots) of one knowledge item. **Lifecycle: retrieval** — 需要追溯某条知识改过什么、何时改的、改前长什么样时调用。 Lifecycle: retrieval — call when you need what changed on an item, when, and what the prior body looked like. 用途:修订后核对旧行为、审计版本链、或找回被改掉的内容。 Purpose: verify prior behavior after a revision, audit a version chain, or recover replaced content. Args: item_id: 条目 ID(稳定 HEAD id,不是快照 id)。 / Item id (the stable HEAD id, not a snapshot id). include_bodies: 是否在结果里带快照正文(默认 false 只给元数据)。 / Include snapshot bodies in the resul…

  • get_knowledge_inheritance

    为新项目或任务生成可继承知识包。 / Build a knowledge inheritance pack for a new project or task. 用途:根据自由文本描述,从现有 lessons 和 decisions 中找出最相关的可复用知识。 Purpose: Call to rank existing lessons and decisions against a free-text description and return reusable knowledge. 注意:本工具不需要已保存的项目快照;如果要同时创建项目档案,用 start_project。 Note: This tool does not require a saved project snapshot; use start_project if you also want to create a project record. Args: description: 新项目或任务的自由文本描述。 / Free-text description of the new project or task. limit: 最多返回多少条(默认 10,上限 20)。 / Maximum number of items to return in total (default 10, …

  • get_knowledge_overview

    获取统一的知识概览:摘要、健康报告和过期知识。 / Get a unified knowledge overview: digest, health report, and stale items. 用途:需要快速了解知识库整体状态、健康度或待复查条目时调用。 Purpose: Call when you need a quick view of knowledge-base status, health, or items needing review. 注意:如果只想列出过期条目,用 get_stale_knowledge 更直接。 Note: If you only want stale items, get_stale_knowledge is more direct. Args: section: 概览部分:'all'、'digest'、'health' 或 'stale'。 / Overview section: 'all', 'digest', 'health', or 'stale'. stale_days: 超过多少天算过期知识。 / Number of days after which knowledge is considered stale.

  • get_lessons

    获取用户从过去项目中学到的经验教训。 / Get lessons the user learned from past projects. 用途:用这些经验来避免重复过去的错误,可按领域、来源工具和数量过滤。 Purpose: Call to avoid repeating past mistakes, optionally filtering by domain, source tool, and limit. 注意:如果你只有项目路径、不知道关键词,用 get_relevant_knowledge 自动推荐。 Note: If you only have a project path and no search keywords, use get_relevant_knowledge for automatic recommendations. Args: domain: 按领域过滤(如 'python'),支持多标签教训的包含匹配。 / Filter by domain, such as 'python'; supports contains matching for multi-label lessons. source_tool: 按来源工具过滤(如 'claude_code', 'codex')。 / Filter by source tool, …

  • get_permission_profile

    查看当前所有调用者的权限全景:谁有什么信任级别、能看到什么。 / View the permission landscape: who has what trust level and what they can access. 用途:想了解"哪些 AI 工具可以读我的 Engram"、"Cursor 能看到私密数据吗"时调用。 显示显式授权、自动分类规则、信任级别定义、已撤销的调用者。 Purpose: call when you want to know which AI tools can read your Engram data, what each one can access, and which ones have been revoked. Shows explicit grants, auto-classification rules, trust level definitions, and revoked callers. 治理层开启时(ENGRAM_GOVERNANCE=1),仅 private-self 可调用。 When governance is enabled, only the owner (private-self) can call this.

  • get_playbooks

    Playbook 统一读取入口:列表 / 单条 / 最近使用 / 管理视图。 / Unified Playbook reader: list, single item, recently used, or management view. 用途:浏览已记录的操作流程;按 ID 调取单条手册详细步骤;冷启动时浮现最近用过的流程; 或查看含归档/删除元数据的管理视图。 Purpose: Browse recorded procedures; fetch one playbook's full steps by ID; surface recently used playbooks at session start; or inspect the management view with archived/deleted metadata. Args: domain: 按领域筛选(mode=list,可选)。 / Filter by domain (mode=list, optional). limit: 返回条数上限(默认 20;mode=recent 建议传 5,mode=management 建议传 100)。 / Max items (default 20; suggest 5 for recent, 100 for management). proj…

  • get_project_context

    读取特定项目的知识快照(项目级,只含该项目的历史)。 / Read the knowledge snapshot for a specific project, containing only that project's history. 用途:想了解某个项目之前的技术栈、已知问题、协作次数时调用。 Purpose: Call when you need a project's previous tech stack, known issues, notes, or collaboration history. 注意:如果想获取用户级完整身份上下文,用 get_user_context;如果想写入项目快照,用 save_project_snapshot。 Note: Use get_user_context for full user-level context; use save_project_snapshot to write a project snapshot. Args: project_folder: 项目文件夹路径。 / Project folder path.

  • get_recall

    获取结构化 Recall Surface v1 载荷。 / Get a structured Recall Surface v1 payload. 用途:在新任务、跨工具接续或需要"一次拿到可执行记忆包"时调用。 返回身份摘要、最近活动、项目/查询相关知识和治理元数据。 Purpose: Call when a new task or cross-tool handoff needs one structured, actionable memory bundle: identity slice, recent activity, relevant knowledge, and governance metadata. 只返回已审核且当前有效的知识;预算裁掉内容时 meta.omitted 给出 {omitted_count, ids, sections, reason}。 Returns reviewed, current knowledge only; when the budget drops items, meta.omitted reports {omitted_count, ids, sections, reason} (no content). 注意:该聚合视图可能组合多类知识和最近上下文,因此治理开启时仅 owner (private-self) 可读;非 o…

  • get_recent_context

    找回最近的 AI 对话上下文。 / Retrieve the most recent AI conversation context. 用途:上下文丢失时(工具重启、会话断开)调用,找回之前的工作状态。 Purpose: Call after context loss (tool restart, session disconnect) to recover previous work state. 不会自动加载到新会话 — 只在你需要时才读取。 Does NOT auto-load into new sessions — only reads when you ask. Args: tool: 工具名(可选)。留空则搜索所有工具的上下文。 / Tool name (optional). Empty searches all tools. limit: 最多返回几个会话(默认 1 = 最近一次)。 / Max sessions to return (default 1 = most recent).

  • get_relevant_knowledge

    按项目路径自动推荐最相关的经验教训(无需搜索词)。 / Automatically recommend the most relevant lessons for a project path, without search keywords. **Lifecycle: retrieval** — 在对话中需要项目相关的历史知识时调用。 Lifecycle: retrieval — call mid-conversation when project-relevant past knowledge is needed. 用途:你知道当前项目路径但不知道该搜什么词时调用,Engram 根据项目技术栈自动筛选。 Purpose: Call when you know the current project path but not the right search terms; Engram filters by project tech stack. 注意:如果用户给了明确搜索词,用 search_knowledge 更直接。只返回已审核且当前有效的经验(待审、被取代、已归档的不返回)。 Note: If the user provides explicit search keywords, search_knowledge is more direct. Returns re…

  • get_resume_brief

    跨会话/跨工具接续简报(v3.30 新增)。 / Cross-session, cross-tool resume brief. **用途:v3.30 行业首家"一次调用拿到完整接续简报"的高层 API。** 用户切换工具(Claude Code → Codex/Cursor)或开新对话时,AI 调用本工具 一次即可拿到:用户身份 + 当前项目状态 + 今日日志 + 最近会话上下文 + 最近经验/决策 + 建议阅读的项目文档清单。结果用 ``<engram-resume priority="high">`` XML 标签包裹,提示客户端 AI 优先遵守。 Purpose (v3.30): the "what does the next AI need to know in 30 seconds" high-level endpoint. When users switch tools or open a new chat, calling this once returns identity + project state + today's daily log + recent context + top lessons/decisions + suggested project docs to read. Result is wrapped in ``<engram-res…

  • get_stale_knowledge

    列出超过指定天数未复习的知识条目。 / List knowledge items not reviewed for more than the specified number of days. 用途:定期检查哪些经验或决策需要复习或归档。 Purpose: Call during periodic maintenance to find lessons or decisions that need review or archiving. 注意:如果想直接归档某条,用 archive_knowledge;如果确认仍有效,用 review_staging(action="review_item") 刷新。 Note: Use archive_knowledge to archive an item directly; use review_staging(action="review_item") to refresh an item that is still valid. Args: days: 超过多少天算过期(默认 30)。 / Number of days after which an item is stale (default 30). limit: 最多返回多少条(默认 20)。 / Maximum number of items to ret…

  • get_user_context

    获取用户的个性化上下文(冷启动,分层延迟可控)。 / Get tiered cold-start user context with latency control. **Lifecycle: startup** — 对话开始时调用,为 AI 注入用户身份和上下文。 Lifecycle: startup — call at conversation start to inject user identity and context. 用途:在每次新对话开始时调用,了解用户是谁、如何工作、学到了什么、质量标准是什么。 Purpose: Call at the start of each new conversation to understand who the user is, how they work, what they have learned, and their quality bar. 分层说明 / Tiered behaviour: - "quick": 仅身份画像 + 工作偏好(纯 JSON 读取,无文件扫描,最低延迟)。 Profile + preferences only — pure JSON reads, no filesystem scans. Lowest latency. - "standard"(默认): 加上质量标准、经验领域、相关教训…

  • get_wrap_up_session_status

    读取 wrap_up_session 的阶段状态。 / Read metadata-only stage status for a wrap_up_session operation. 用途:当 MCP 客户端在会话收尾时遇到 transport timeout,可用调用前已知的 idempotency_key,或成功返回过的 operation_id,查询最后阶段和终态。长期未更新的 running 会只读标记为 stale_running。该工具不返回会话摘要正文或项目本地路径。 Purpose: after a session-closeout transport timeout, query metadata-only state by the caller-known idempotency_key or a returned operation_id. Long-unupdated running records are projected as stale_running without mutating the record. No summary text or local project path is returned.

  • import_engram

    预览 Engram 数据导入:备份文件或 OpenClaw 兼容文件(经 MCP 只能预览)。 / Preview an Engram data import: a backup file or OpenClaw-compatible files (preview only over MCP). 经 MCP 只返回预览(dry_run=true);真正写入只能由主人在本地执行 `engram import <backup.json> --apply --yes` (覆盖模式加 --overwrite)。不带 dry_run=true 的请求返回 local_only,零写入。 Over MCP this only previews (dry_run=true). Applying an import is a local Owner command: `engram import <backup.json> --apply --yes` (add --overwrite for replace). A request without dry_run=true answers local_only and writes nothing. Owner/admin surface: refused for non-owner callers when governance is en…

  • ingest_notes

    从自由文本笔记中提取经验教训和关键决策并写入知识库。 / Extract lessons and key decisions from free-form notes and save them to the knowledge base. 用途:用户贴了一段笔记,希望 Engram 尝试解析其中的 lessons 和 decisions 时调用。 Purpose: Call when the user pastes notes and wants Engram to parse possible lessons and decisions from them. 注意:如果是会话结束摘要,extract_session_insights 更贴近场景;如果已经明确一条 lesson 或 decision,用 add_lesson 或 add_decision。 Note: For an end-of-session summary, extract_session_insights fits better; for one explicit lesson or decision, use add_lesson or add_decision. Args: text: 多行自由文本笔记。 / Multi-line free-form notes. source_t…

  • list_agent_sessions

    列出可用的 AI 对话上下文记录(仅元数据)。 / List available AI context sessions (metadata only). 用途:查看有哪些历史会话记录可以找回。 Purpose: See which historical session records are available for recovery. Args: tool: 工具名(可选)。留空则列出所有工具。 / Tool name (optional). Empty lists all tools. limit: 最多返回多少条(默认 20)。 / Max entries to return (default 20).

  • list_projects

    列出用户参与过的所有项目及基本信息。 / List all projects the user has worked on with basic metadata. 用途:需要发现已有项目记录、确认项目路径或查看项目清单时调用。 Purpose: Call when discovering saved project records, confirming project paths, or reviewing the project list. 注意:读取单个项目详情用 get_project_context。 Note: Use get_project_context to read details for one project.

  • list_tools

    列出所有已注册的本地工具/程序。 / List all registered local tools and programs. 用途:查看当前环境中所有已知的工具、运行时和程序。 Purpose: View all known tools, runtimes, and programs in the current environment. Args: category: 按分类筛选(runtime, cli, library, credential, config, service, other),留空列出全部。 / Filter by category; empty lists all.

  • manage_caller_trust

    调用者信任统一入口:授予 / 修改 / 撤销某个 AI 工具的信任级别。 / Unified caller-trust management: grant, change, or revoke an AI tool's trust level. Owner/admin surface: changes caller trust grants and is refused for non-owner callers when governance is enabled. 用途:action=grant 设置或修改信任级别,例如让 Cursor 访问工作级数据: manage_caller_trust("grant", "cursor", "trusted-local");action=revoke 撤销 未来访问权(前向撤销——已返回的上下文无法召回;重新授权再调 grant)。 Purpose: action=grant sets or changes a caller's trust level; action=revoke denies all future reads by that caller (forward-only — context already returned cannot be recalled; re-authorize via grant). 可…

  • manage_playbook

    Playbook 统一管理入口:更新 / 归档 / 删除 / 恢复。 / Unified Playbook management: update, archive, delete, restore. 用途:修正补充手册内容(update)、标记过时(archive)、确认后软删除(delete)、 恢复归档或已删手册(restore)。 Purpose: Correct or enrich a playbook (update), mark outdated (archive), soft-delete after confirmation (delete), or restore (restore). update 只传需要更新的字段,未传字段保持不变,版本号自动递增。 delete/restore 默认 dry_run=True 预览,需 confirm=True 才真正执行。 For update, pass only the fields to change; version auto-increments. delete/restore default to dry_run=True preview and require confirm=True. 被主人钉住的条目经 MCP 只读:返回 pinned_entry(零写入)并给出用 supersedes 提交修订提…

  • manage_relation

    知识关系统一入口:建立或移除条目间关联(无类型双向 / 有类型有向)。 / Unified knowledge relations: create or remove links between items (untyped bidirectional, or typed directed). 用途:rel 留空时管理无类型、双向的"see also"关联;rel 取 led_to / implemented_by 时管理有类型、有方向的演进边,用于重建"想法 → 决策 → 实现" 决策链(喂给 get_decisions 的 thread_seed_id 分支);内部 supersedes 链仅由版本 更新维护,不能手工建立或移除,其他关系的 unlink 幂等。 Purpose: with rel empty this manages the untyped bidirectional "see also" link; with rel set (led_to / implemented_by) it manages the typed, directed evolution edge consumed by decision threads (get_decisions thread_seed_id); internal supersedes lineage cannot …

  • memory_store

    统一知识写入入口 — 根据 kind 自动路由到 add_lesson / add_decision / add_playbook。 Unified knowledge write endpoint — routes to add_lesson / add_decision / add_playbook based on kind. **Lifecycle: writeback** — 对话中产生值得长期保留的知识时调用。 Lifecycle: writeback — call when the conversation produces knowledge worth persisting. 这是 Provider 兼容的统一写入接口。如果你已经明确知道要写 lesson/decision/playbook, 也可以直接调用对应的专用工具。本工具的优势在于:调用方不需要知道 Engram 内部的分类体系。 This is a provider-compatible unified write interface. You may also call the specialized tools directly. The advantage here: callers don't need to know Engram's internal taxonomy. Args: …

  • merge_knowledge

    将次要知识条目合并进主知识条目。 / Merge a secondary knowledge item into a primary knowledge item. 用途:find_similar_knowledge 发现重复或高度相似条目后,用来保留主条目并归档次要条目。 Purpose: Call after find_similar_knowledge identifies duplicate or highly similar items, keeping the primary item and archiving the secondary one. 注意:主条目的内容会保留,次要条目的关联关系会转移后归档。两个条目都会被改动,因此两个版本号都必填。 Note: The primary item's content is preserved; related links from the secondary item are transferred before it is archived. Both entries change, so both versions are required. 被主人钉住的条目经 MCP 只读:返回 pinned_entry(零写入)并给出用 supersedes 提交修订提案的方式。 An Owner-pinned entry…

  • onboard_accept

    Owner-only, local only: accepting an onboard candidate is the local `engram onboard-accept`. Owner/admin surface: compatibility endpoint that directs the Owner to the local command; no candidate is accepted over MCP. 接受 onboard 候选(校验锚点并提升为 verified)是主人的本地命令 `engram onboard-accept <id>`;经 MCP 在任何模式下都返回 local_review_only,零写入。 Accepting an onboard candidate (check its anchor, promote it to verified) is the Owner's local command `engram onboard-accept <id>`; over MCP, in every approval mode, the reply is local_review_only and nothing is written. Args: item_id: onboard 候选的 ID。 / The onboard …

  • onboard_repo

    Owner-only: scan a repo and create staging repo-fact candidates. Owner/admin surface: writes staging candidate repo-facts and is refused for non-owner callers when governance is enabled. 用途:owner 扫描仓库中的 npm/Python/file 锚点,生成 staging 候选事实供主人在本地用 `engram onboard-accept` 确认;不会自动验证或提升信任。 Purpose: Scan the repo's npm/Python/file anchors and create staging repo-fact candidates for the owner to accept locally with `engram onboard-accept`. Nothing is auto-verified. Args: project_root: 仓库根目录;留空时使用当前工作目录。 / Repository root; defaults to cwd.

  • playbook_execution

    Playbook 执行统一入口:准备计划 / 更新步骤 / 查看状态。 / Unified Playbook execution: prepare a plan, update a step, or check status. 用途:"按上次流程来" — prepare 调取 Playbook 替换参数生成被动参考计划; update_step 逐步标记完成情况;status 查看步骤状态与结果汇总。 AI 逐步确认执行,不自动运行。 Purpose: "Use the previous procedure" — prepare fetches a Playbook, substitutes parameters, and returns a passive step plan; update_step tracks per-step progress; status returns the step rollup. AI confirms each step; no auto-execution. Owner/export surface: prepare writes an execution-plan file and is refused for non-owner callers when governance is enabled. Args: actio…

  • preview_context_governance

    Build a local context-governance preview; proposal-only, no apply. Owner-gated aggregate read surface: when governance is enabled, non-owner callers are refused before any store-backed mode can gather knowledge. Modes: - safe_context: redact/trim a supplied payload, or gather recall if payload is empty. - freshness_conflicts: scan local lessons/decisions and return metadata-only review proposals. - replay_packet: build a redacted context-compression replay packet from supplied summary. - external_evidence: render a local Markdown evidence draft from supplied evidence rows. Args: mode: O…

  • read_web_content

    读取网页、视频或文章的文本内容。 / Read text content from a web page, video, or article. 用途:用户发链接并要求分析、看看或读一下时调用。 Purpose: Call when the user sends a URL and asks to analyze, inspect, or read it. 工作方式:优先使用本地边车(localhost:7890,覆盖 YouTube 字幕、B 站、公众号等), 边车不可用时自动降级到包内内置 reader(需 `pip install "piia-engram[reader]"`)。 How it works: prefers the local sidecar (localhost:7890; YouTube subtitles, Bilibili, WeChat, ...), and falls back to the self-contained built-in reader (install with `pip install "piia-engram[reader]"`) when no sidecar is running. Args: url: 要提取内容的网页链接。 / URL to extract content from.

  • refresh_quick_context

    刷新本地 `quick_context.md` 快照(跨工具 / 离线场景的快速通路)。 / Refresh the local quick_context.md snapshot (cross-tool / offline fast path). Owner/export surface: writes ~/.engram/quick_context.md and is refused for non-owner callers when governance is enabled. 用途:把当前 Engram 状态固化为一份纯文本身份卡,写到 `~/.engram/quick_context.md`。任何 AI 工具(包括没接 Engram MCP 的)都可以直接 Read 这个文件作为冷启动上下文,无需 MCP 调用。 Purpose: Persist the current Engram state as a plain-text identity card at `~/.engram/quick_context.md`. Any AI tool — even one without Engram MCP — can Read this file as cold-start context without an MCP round-trip. 何时调用 / When …

  • register_tool

    注册本地工具/程序到环境图谱(已存在则更新)。 / Register a local tool or program in the environment registry; updates if it already exists. 用途:安装、发现或确认某个工具/程序/运行时的位置和版本后调用,让所有 AI 工具都能快速查到。 Purpose: Call after installing, discovering, or confirming a tool's location and version, so all AI tools can find it. 写入时机 / When to call: - 安装新工具后(pip install, npm install -g, 手动下载等) - 发现系统上已有工具的准确路径后 - 工具版本升级后 - 发现某些路径不能用时(如 Windows Store stub)更新 notes 警告 Args: name: 工具名称(如 'Python', 'gh', 'wrangler')。 / Tool name, e.g., 'Python', 'gh', 'wrangler'. path: 可执行文件或配置文件的完整路径。 / Full path to executable or config file. …

  • request_outline_review

    生成交互式知识审查 HTML 页面,用户可在浏览器中逐条保留或归档知识。 / Generate an interactive knowledge review HTML page where the user can retain or archive items. Owner/export surface: writes an exports/review_*.html file and is refused for non-owner callers when governance is enabled. 用途:用户说"帮我核对一下记忆"、"看看我的知识库"、"review my knowledge"时调用。 Purpose: Call when the user wants to audit their knowledge base, e.g. "review my knowledge" or "check my memory". 生成的 HTML 页面包含身份画像总览、经验教训(按领域分组)、关键决策,可逐条勾选保留/归档。 用户审查完成后,将结果粘贴回对话或下载 JSON,再调用 review_staging(action="apply_text") 执行归档。 Args: lang: 页面语言,"zh"(中文)或 "en"(英文),默认中文。 / Pag…

  • review_staging

    知识评审统一入口:列队列 / 批量审批 / 单条复习 / 执行审查结果。 / Unified knowledge review: list the staging queue, batch-approve, refresh one item, or apply review-page results. 用途:action=list 查看待审核 staging 候选(metadata-only,只返回 id/类型/领域/ 计数,不回显正文);batch 只做 approve/reject 预览(dry_run=True);review_item 标记单条知识"已复习"(只刷新 last_reviewed,不改内容)。 Purpose: action=list inspects pending staging candidates (metadata-only); batch previews approve/reject (dry_run=True); review_item marks one knowledge item as reviewed. 批准、拒绝、归档待审提案只能由主人在本地 engram review 中完成(任何模式): 经 MCP 的 batch 落盘(dry_run=False)与 apply_text 返回 local_review_only,零写入。 …

  • save_agent_context

    自动保存 AI 对话上下文检查点。 / Auto-save an AI conversation context checkpoint. 用途:在关键节点(任务启动、阶段完成、方向变更)自动调用,静默记录工作状态。 Purpose: Call at key moments (task start, milestone, direction change) to silently record work state. 设计理念:像 Office 自动保存 — 平时无感,崩溃/重启时可找回。 Design: Like Office autosave — invisible during work, recoverable after crash/restart. Args: tool: 调用来源工具名,如 'claude_code', 'codex', 'cursor'。 / Source tool name. content: 上下文内容(当前任务、进度、下一步,自由文本)。 / Context content (current tasks, progress, next steps, free text). session_id: 会话 ID(可选)。留空则新建会话,填入已有 ID 则追加到同一会话文件。 / Session ID (optional)…

  • save_project_snapshot

    写入或更新项目的知识快照(写操作,不是读取)。 / Write or update a project's knowledge snapshot; this is a write operation, not a read. 用途:保存或更新当前项目的技术栈、已知问题、注释等信息。 Purpose: Call to save or update a project's tech stack, known issues, notes, and related metadata. 注意:读取项目快照用 get_project_context,不是本工具。 Note: Use get_project_context to read a project snapshot; this tool writes one. Args: project_folder: 项目文件夹路径。 / Project folder path. data_json: JSON 字符串,支持字段 title、tech_stack、known_issues、notes。 / JSON string supporting fields: title, tech_stack, known_issues, and notes.

  • search_knowledge

    搜索知识库(lessons/decisions/playbooks)。 / Search lessons, decisions, and playbooks by keyword. **Lifecycle: retrieval** — 在对话中需要检索历史知识时调用。 Lifecycle: retrieval — call during conversation when past knowledge is needed. Call when the user asks to find knowledge about a specific topic, or recalls a procedure ('X how to' / 'X steps'). Result groups: "lessons" / "decisions" / "playbooks" hold reviewed, current items only. Items still waiting for the user's review come back separately under "pending" (same three lists, each item flagged pending_untrusted=true): treat them as unconfirmed proposals, no…

  • start_project

    新项目一键启动:继承跨项目经验并建立项目档案。 / Start a new project in one step: inherit cross-project knowledge and create a project record. 用途:开始一个新项目时调用,一次拿到过往相关 lessons 和 decisions,并初始化项目快照。 Purpose: Call when starting a new project to retrieve relevant prior lessons and decisions and initialize the project snapshot. 注意:如果只想获取可继承经验、不需要创建项目档案,请直接用 get_knowledge_inheritance。 Note: If you only want inheritable knowledge and do not need a project record, use get_knowledge_inheritance directly. Args: description: 新项目的自由文本描述(用于匹配已有知识)。 / Free-text description of the new project, used to match existing knowledg…

  • update_identity

    提议修改一个身份字段,等待本地审核。 / Propose an identity change for local review. 用途:需要修改 profile、preferences、trust_boundaries、work_style 或 quality_standards 时调用。 Purpose: Call when changing profile, preferences, trust_boundaries, work_style, or quality_standards. 所有模式只创建 pending 身份提案;Owner 用 engram review 查看旧值/新值并批准或拒绝。 All modes create pending identity proposals only; the Owner compares old/new values in engram review. 批准前自动上下文继续使用已批准身份。trust_boundaries 的变更也需要审核。 Automatic context uses approved identity until approval, including trust_boundaries changes. Args: field: 字段名:profile、preferences、trust_bou…

  • update_knowledge

    按 ID 更新 lesson、decision 或 playbook(自动识别类型)。 / Update a lesson, decision, or playbook by ID, automatically detecting the item type. 用途:需要修改已有知识条目的内容、状态或元数据时调用。内容变更会自动保留旧版本为不可变快照并递增版本号(用 get_knowledge_history 查看)。 Purpose: Call when an existing knowledge item's content, status, or metadata needs to be changed. Content changes automatically retain the prior body as an immutable snapshot and bump the version (see get_knowledge_history). 必填 expected_version:先读取条目(get_lessons / get_decisions / search_knowledge / get_playbooks 的结果都带 version),再把该值传入。缺失返回 version_required(附当前版本与示例),过期返回 version_confl…

  • user_portrait

    用户写照统一入口:查看 / 对比 / 保存快照。 / Unified user portrait: view, compare, or snapshot. 用途:action=get 生成精简写照——身份(角色/语言/技术水平)+ 经验/决策/领域/ 项目/工具聚合计数与主要领域,不含任何经验/决策原文,只读不写盘;compare 对比 最近两份快照给出成长增量(计数增减、新增领域/工具、身份字段变化,只读,不足 两份时返回当前写照并提示尚无基线);save 保存带时间戳的版本化快照 (<engram>/portraits/<时间戳>.json,写操作,只保留最近若干份)。 Purpose: action=get builds the lean portrait (identity + aggregate counts, NO raw lesson/decision text, read-only); compare reports the growth delta between the two most recent snapshots (read-only); save persists a timestamped versioned snapshot (write; older snapshots are pruned). Args: action: get(默…

  • wrap_up_session

    会话结束一键收尾:自动提取知识、操作流程并保存项目快照。 / Wrap up a session in one step: extract knowledge, detect playbooks, and save a project snapshot. **Lifecycle: session-end** — 对话结束时调用,完成知识提取和上下文保存。 Lifecycle: session-end — call at conversation end to extract knowledge and persist session context. 用途:一次对话结束时调用,把会话摘要交给 Engram 自动提取 lessons、decisions 和 Playbook 草稿,并可选更新项目快照。 Purpose: Call at the end of a conversation to let Engram extract lessons, decisions, and playbook drafts from the summary and optionally update the project snapshot. Playbook 自动提取:如果摘要描述了一个多步骤操作流程(3+ 步骤,含顺序标记和操作动词),会自动生成 Playbook 草稿存入 staging…

Signals

Stars
163
Forks
13
Open issues
1
Contributors
2
Weekly downloads
459
Last commit
Oct 23, 2026 (5 days ago)
Last release
Oct 21, 2026 (7 days ago)
Last package publish
Oct 21, 2026 (7 days ago)

From GitHub (fetched Oct 24, 2026) and the package registry.

Details

Registry name
io.github.Patdolitse/piia-engram
Version
4.26.0
Auth
No auth
Packages
pypi piia-engram
License
AGPL-3.0
First seen
Oct 24, 2026
Last checked
Oct 24, 2026
Cite this page

Piia Engram MCP server. Agent Mart. https://agentmart.dev/connectors/patdolitse-piia-engram (last updated 2026-10-24)