プロトタイプ · プレビュー版:公式レジストリのすべてのサーバーを掲載し、30分ごとに同期しています。レビューとアカウント機能は今後のステップで始まります。
PopNx MCPAIを使う人のためのMCPサーバー · やさしい言葉で解説

memdsl

作者:Liyuan1992バージョン 0.9.2i★ –iパソコンで動く
レジストリ名io.github.Liyuan1992/memdsl

インストール

概要

作者による説明(英語の原文)

Review-gated declarative long-term memory with bounded read-only MCP access.

PopNx MCPの3つの柱

この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。

できること

このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。

  • 接続方法: パソコンで動く
  • トランスポート: stdio
  • カテゴリ: 検索・AIの記憶

インストール

使っているAIアプリを選んで、設定をコピーしてください。

インストールの前に

  • 基本チェック:1項目中1項目に合格
  • あなたのパソコンで、あなたのユーザーと同じ権限(ファイル、ネットワーク、アプリ)で動きます。
  • レジストリには、入力が必要なキーは載っていません。

どのアプリを使っていますか?

上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。

作者の .mcpb ファイルをダウンロード

リンク先は作者自身のファイルです。私たちが置いたり再パッケージしたりしたものではありません。ファイルを開くと、Claude Desktopがインストールします。

ターミナルでこれを実行します

ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。

ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。

これはパソコンで動くサーバーですが、ChatGPTがつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。

選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。

この設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。

できること

パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。

基本チェックi

誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月7日にチェック

  • ✓ 合格

    作者とリポジトリが一致

    レジストリ名は、リポジトリを所有するGitHubアカウント Liyuan1992 で確認済みです

  • … 未チェック

    今もメンテナンスされている

    このリポジトリはまだGitHubから読み取っていません

  • … 未チェック

    ライセンスがある

    このリポジトリはまだGitHubから読み取っていません

  • – 対象外

    エンドポイントが応答する

    これはパソコンで動くため、インターネット上のエンドポイントはありません

  • – 対象外

    OAuthでサインイン

    パソコンで動き、代わりにローカルの設定を使います

  • … 未チェック

    ツールの説明に隠れた指示がない

    パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです

検索・AIの記憶のほかのサーバーとの比較i

  • このカテゴリのほかの7283件のうち0%よりスターが多い
  • このカテゴリのほかの7283件のうち36%より最近レジストリに公開
  • 基本チェックの結果が、このカテゴリのほかの7283件のうち100%と同じかそれ以上

レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。

よくある質問

memdslは安全ですか?

当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。

どんなキーやコードが必要ですか?

レジストリには必須のキーは載っていません。ただし、最初に使うときにサインインを求めるサーバーもあります。

パソコンで動きますか、それともクラウドですか?

あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。

今もメンテナンスされていますか?

GitHubリポジトリの最終更新は–、最新バージョン(0.9.2)がレジストリに届いたのは2 か月前です。

どのアプリで使えますか?

Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにMCPBも必要です。

代わりに使えるものは?

同じカテゴリには:Context7, Codebase Memory, Exa

代わりの候補

同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。

カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i

Context7

作者:upstash

Up-to-date docs for AI agents

パソコンでもクラウドでも★ 64,224MIT昨日更新
インストール

Codebase Memory

作者:DeusData

Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.

パソコンで動く★ 48,148MIT21 日前更新
インストール

Exa

作者:exa-labs

Connect AI agents to Exa for web search, content fetching, and multi-step research.

クラウドで動く★ 5,213MIT先月更新
インストール

作者のREADME

READMEを開く

作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。

memdsl

English | 中文

English

Agent memory as source code the agent reads itself.

0.9 release line with experimental Edges

Version 0.9.0 adds an opt-in memdsl.workspace.v3 first-class explicit Edge experiment. It does not rewrite the frozen 0.8 contract: legacy relations and authority remain compatible, explicit Edge proposals always require a human, and explicit supersedes is graph-only. Source remains runtime authority; review/audit is a workflow contract, not a non-bypassable grant ledger. See the Phase 6 design and risk matrix and the release-scope evidence freeze.

Stable 0.8 compatibility contract

The 0.8 contract combines the previously unpublished navigation and View work now shipped by 0.9.0; neither 0.7.0 nor 0.8.0 was released separately. Stable public contracts include the v1 compatibility/authority surfaces, Catalog v1, Trace v1, indexed query/search trace, report diagnostics, public rebuildable CompiledWorkspace / compile_workspace, memdsl.workspace.v2, exact use, the generic dialect_mapping capability, ViewContext/ResolvedView, and the explicit opt-in v2 read schemas. Map v1 remains supported throughout the 0.8 line and will not be reconsidered for removal before 1.0.

The software release is 0.9.2, anchored by tag v0.9.2. It adds official MCP Registry metadata and a UV-based MCPB installer for the default-read-only memdsl-mcp server. Parser, schema, review, query, authority, and MCP tool contracts are unchanged from 0.9.1. Neither patch nor package-level release promotes the opt-in Edge surface to stable or makes automatic Edge generation authoritative.

The real-world rollout quality of quarantine/strict, dialect-candidate learning, and host-attested principal integration is still experimental and opt-in. Their safety invariants are not experimental: authorization happens before aggregation, incomplete hard-rule evaluation never becomes ALLOW, non-authoritative edges never gain authority, and repair paths remain open. CompiledWorkspace is a public rebuildable handle; its cache/index layout, compiler contract strings, and synthetic timing constants remain implementation details. Workspace-v3 first-class Edges are experimental. Automatic dialect learning, automatic Edge candidates, inferred authority, and cold-history/ incremental compilation are not shipped. Host extraction/sanitization and private schemas/policies/samples remain outside memdsl and are not release gates.

memdsl started with a retrieval failure. A memory system built on RAG failed to recall a memory it certainly had; a coding agent pointed at the same raw memory files traced it down in a few steps. Same model — the difference was the context contract. The agent knew the memory existed and could keep reading toward it; the retriever got exactly one similarity guess, and a miss looked identical to absence.

memdsl turns that difference into the product. Long-term memory lives in readable, lintable, reviewable .mem source files, and every runtime surface is built for an agent that reads memory itself:

  • A bounded memory Catalog (memdsl catalog, MCP memory_catalog / memdsl://catalog, Python build_memory_catalog): paged module/type/subject/ status navigation with item and byte budgets, revision-bound cursors, and no duplicated structured/text representation. It is the recommended session-start surface for large workspaces.
  • A compatible memory map (memdsl map, MCP memory_map / memdsl://map): the existing v1 full index remains available for older clients and is not silently changed into Catalog.
  • Indexed queries that explain their misses (search_trace in every serialized pack): deterministic lexical postings preserve the v1 EvidencePack ordering and authority lanes while exposing View/source identity, candidate-pool counts, filter-hidden matches, bounded vocabulary suggestions, and safe retry queries. Suggestions never write aliases or let candidate symbols redirect retrieval.
  • A bounded relation Trace (memdsl trace, MCP memory_trace, Python trace_memory): deterministic incoming/outgoing/both BFS navigation with relation filters, explicit cycle/back/cross edges, hard depth/node/edge/byte budgets, and revision-bound cursors. Connectivity is navigation, not proof.
  • Report-only link diagnostics (memdsl lint, MCP memory_lint and memdsl://status): duplicate ids, ambiguous/wrong-prefix/dangling targets, unknown relations, revision cycles, and supersede forks are explicit. Cycle edges cannot make every participant disappear, forks never select a winner, and default Map/query authority remains v1-compatible.
  • Raw source as the floor (memdsl://file/{file_id}): the agent can always drop down and read the actual declarations, the way a coding agent reads code.

The failure mode that started the project now fails loud — the memory exists, a filter hid it, and the trace says exactly that:

$ memdsl query examples/domains/coding -q "force push main" \

--type coding.bug_pattern --json "missing": [ "no active declarations matched query terms: ['force', 'push', 'main']", "1 active declaration(s) matched the query but were excluded by type/subject filters" ], "search_trace": { "excluded_by_filters": [ {"id": "coding.project_rule:git.no_force_push", ...} ], ... }

$ memdsl query examples/domains/coding -q "force push main" MUST

  • [coding.project_rule:git.no_force_push] Never force-push the main branch. (exceptions: []) [status=active; runtime_role=constraint; lifecycle={"status":"active"}]
Try it with Claude Code in two minutes

The core library and CLI support Python 3.9+. The MCP extra and memdsl-mcp server require Python 3.10+ because the upstream MCP SDK does.

# Python 3.10+

pip install "memdsl[mcp]" claude mcp add memdsl -- memdsl-mcp --workspace ~/memory # or an examples/ dir

The server instructs the agent to read memory_catalog first, continue only with a cursor bound to the same Source/View and filters, treat no_match as a retry signal, use memory_trace only for bounded explicit-relation navigation, and preflight consequential drafts against MUST constraints with memory_check. Legacy memory_map remains registered for compatible clients.

DeepSeek Harness

DeepSeek Harness can mount the same stdio MCP server through its official MCP client. The recommended overlay grants only read:summary,read:search, so the model can catalog, query, trace, explain, and check approved source memory but cannot create proposals. See the tested overlay and verification steps in the DeepSeek Harness integration guide.

Governed, typed memory

The second pillar: memory you can review like code, without forcing one author's ontology on every user. Version 0.8 preserves the two-layer type architecture introduced in 0.5 and the lifecycle-safe review contract from 0.6, then adds bounded compiled navigation and explicit workspace-v2 Views:

core memory record     claim / evidence / scope / confidence / lifecycle /

access policy / relations

domain type system coding.project_rule / assistant.commitment / writing.voice_preference / your own memory types

The core owns the stable behavioral contract. A workspace owns its vocabulary. A coding agent, personal assistant, and writing system should not have to call the same thing a preference, boundary, or fact just because memdsl's author chose those words.

Two layers

The core layer provides universal fields and five stable runtime roles:

Runtime roleEvidencePack behavior
symbolDefines a subject that other memories can reference
constraintActive declarations surface in MUST and participate in compliance
guidanceActive declarations surface in SHOULD
assertionActive declarations surface in CONTEXT when relevant
questionActive declarations surface in MISSING rather than as fact

Every searchable non-active hit is isolated under PROVISIONAL, regardless of runtime role. Candidate symbols cannot redirect queries, and candidate constraints cannot enter MUST or compliance.

The same authority boundary applies to relations. A supersedes relation can hide a target only when its source is active and its full-id or unique bare target resolves exactly. Candidate, retracted, archived, ambiguous, duplicate, or wrongly prefixed superseders cannot change query, MUST, or compliance. This is the v1 compatibility authority rule retained by 0.8. The opt-in ResolvedView path uses the same fail-safe base and adds only explicit v2 quarantine enforcement.

The core also understands capabilities such as requires_evidence, searchable, temporal, enforceable, guardable, exceptions_recommended, and the explicit review opt-in auto_approvable.

The domain layer defines meaningful memory types and compiles each one to a runtime role. The shipped examples include:

  • coding: coding.project_rule, coding.bug_pattern, coding.tool_preference
  • personal assistant: assistant.routine, assistant.commitment, assistant.relationship_context
  • writing: writing.voice_preference, writing.taboo_topic, writing.style_example

The built-in memdsl.standard@1 pack keeps existing entity, fact, preference, boundary, principle, decision, state, and open_issue workspaces working. Those names are compatibility defaults, not the universal ontology of human memory.

Define a domain vocabulary

A workspace opts into schemas with memdsl.json:

{

"schema_version": "memdsl.workspace.v1", "schemas": ["coding.memschema.json"] }

The schema defines domain types, fields, roles, and capabilities:

{

"name": "coding", "version": "1", "types": { "project_rule": { "runtime_role": "constraint", "required_fields": ["claim", "evidence", "scope"], "optional_fields": ["rationale", "owner"], "search_fields": ["rationale", "owner"], "capabilities": [ "requires_evidence", "searchable", "enforceable", "guardable", "exceptions_recommended" ], "defaults": {"force": "hard", "status": "active"}, "allowed_forces": ["hard"], "allow_extra_fields": false } } }

project_rule becomes the namespaced type coding.project_rule:

module coding.memory

entity Repository.Memdsl { canonical_name: "memdsl" status: active }

coding.project_rule git.no_force_push { subject: Repository.Memdsl claim: "Never force-push the main branch." scope: repository("memdsl") confidence: high exceptions: [] rationale: "Published history must remain auditable." guard { when_any: ["push", "git", "main"] deny_any: ["force-push", "--force", "--force-with-lease"] } lifecycle { status: active } access_policy { readers: [developer, coding_agent] writers: [maintainer] reviewers: [maintainer] export: internal } evidence { source: AGENTS.md quote: "Do not force-push unless the user explicitly asks." } }

Strict schemas reject undeclared fields. Unknown memory types fail lint with unknown_memory_type; they do not silently acquire ad-hoc behavior.

Exact imports and workspace-owned dialect

Existing workspaces stay compatible: no manifest and memdsl.workspace.v1 keep legacy global linking. A workspace can explicitly audit or enforce imports with v2:

{

"schema_version": "memdsl.workspace.v2", "schemas": ["workspace-dialect.memschema.json"], "linking": {"visibility": "report"} }

use X is r

冒頭だけを表示しています。続きはリポジトリで読めます

PopNxに聞く