mcpField
M
Markmap MCP Server

Markmap MCP Server

ローカル
npmjs.com生産性29012 週間前に更新

Markmap MCP Server について

Markmap MCP Server は、Markdown をローカルでインタラクティブなマインドマップに変換し、PNG・JPG・SVG のサーバー側エクスポートにも対応する MCP サーバーです。チャットや文書のワークフローで素早くマインドマップを作りたい利用者に向いています。

主な機能

  1. 01Markdown からインタラクティブな HTML マインドマップを生成
  2. 02サーバー側で PNG・JPG・SVG を出力
  3. 03返却形式をファイルパスまたはインラインコンテンツから選択
  4. 04オフライン対応の HTML 出力
  5. 05ローカルの .md ファイルの読み込みと出力ファイルの管理

活用シーン

  1. 01設計文書やメモをマインドマップに整理する
  2. 02チャット向けにマインドマップの画像を生成する
  3. 03オフライン環境で HTML のマインドマップを共有する

MCP 対応

本プロジェクトは MCP サーバーであり、markdown_to_mindmap、list_mindmaps、get_mindmap、cleanup_mindmaps などのツールと mindmap_from_content プロンプトを MCP クライアントに提供します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"markmap": {
"command": "npx",
"args": [
"-y",
"@smithery/cli"
]
}
}
}
起動コマンドnpx -y @smithery/cli

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@smithery/cli

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

Markmap MCP サーバー

サンプルのマインドマップ

NPM バージョン NPM ダウンロード数 GitHub ライセンス 简体中文 スター数

Markmap MCP サーバーは、Model Context Protocol (MCP) に基づいています。markmap を使用して Markdown をインタラクティブなマインドマップに変換し、オプションでサーバー上で PNG / JPG / SVG にエクスポートして、エージェントが扱いやすい形式で提供できます。生成はローカルで実行され、サードパーティの API キーは不要です。

特長

  • Markdown → マインドマップ:Markdown(見出しと入れ子になったリスト)をインタラクティブな HTML マインドマップに変換します
  • エージェントに適した戻り値:ファイルパス、インライン HTML、画像コンテンツを返します(起動時に設定)
  • サーバー側エクスポート:Playwright を使用して PNG / JPG / SVG にエクスポートし、チャットやインラインでプレビューできます
  • ブラウザーでのプレビュー:ブラウザーを開く動作を設定できます(常に、開かない、またはエージェントに判断させる。起動時に設定)
  • ブラウザーのエクスポートツールバー:HTML の表示中に、ページの UI から PNG/JPG/SVG にエクスポートしたり、Markdown をコピーしたりできます
  • オフライン HTML:起動時に --offline を指定するとアセットがインライン化され、CDN にアクセスできない場合もページを利用できます
  • ファイルのワークフロー:inputPath から読み込み、最近の出力を一覧表示し、古いファイルを削除できます
  • プライバシー優先:変換はすべてローカルで行われ、クラウドのマインドマップ API は使用しません

前提条件

  1. Node.js v20 以降
  2. サーバー側での画像エクスポート(format: png|jpg|svg)には、Playwright と Chromium のインストールが必要です
npm install playwright
npx playwright install chromium

(playwright はこのパッケージのオプションの依存関係です。)

インストール

# Install from npm
npm install @jinzcdev/markmap-mcp-server -g

# Basic run
npx -y @jinzcdev/markmap-mcp-server

# Specify output directory and auto-open in browser
npx -y @jinzcdev/markmap-mcp-server --output /path/to/output/directory --open always
Docker
docker build -t markmap-mcp-server .
docker run --rm -i \
  -v /path/to/output:/data/markmap \
  -e MARKMAP_DIR=/data/markmap \
  markmap-mcp-server

または、クローンしてローカルで実行します。

git clone https://github.com/jinzcdev/markmap-mcp-server.git
cd markmap-mcp-server
npm install && npm run build
# Optional: enable server-side image export
npx playwright install chromium
node build/index.js

使い方

MCP クライアント(Cursor / Claude Desktop など)に次の設定を追加します。

{
  "mcpServers": {
    "markmap": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "@jinzcdev/markmap-mcp-server"],
      "env": {
        "MARKMAP_DIR": "/path/to/output/directory",
        "MARKMAP_OPEN": "never",
        "MARKMAP_RETURN_MODE": "path"
      }
    }
  }
}
サーバー設定(CLI / env)

これらはサーバーの起動時に決定されます。ツールの引数ではありません。

設定項目CLIEnv値デフォルト
出力ディレクトリ--output / -oMARKMAP_DIR任意のディレクトリパス~/.markmap-mcp
ブラウザーで開く--open [mode]MARKMAP_OPENalways | never | agent(引数なしの --open は always)never
戻り値モード--return-modeMARKMAP_RETURN_MODEpath | content | bothpath
オフライン HTML--offlineMARKMAP_OFFLINEtrue | false(CLI:有効にするには --offline を指定)false

CLI フラグは環境変数より優先されます。--output は MARKMAP_DIR より優先されます。

**--open:**引数なしの --open は always を意味します。--open always|never|agent のように指定することもできます。無効な値を指定すると、エラーで終了します。このフラグを指定しない場合は MARKMAP_OPEN が使用されます(デフォルトは never)。

戻り値モード:

モード意味
pathパスの JSON のみ(htmlFilePath + filePath)
contentインラインコンテンツのみ(未加工の HTML テキスト、または Base64 画像ブロック)。パスは含まれません
bothパスの JSON とインラインコンテンツ

生成される HTML には、常に markmap ツールバー、英語のエクスポートラベル、展開済みのすべてのノードが含まれます。

プロンプトの例
  • 「この設計ドキュメントをマインドマップにまとめてください。」
  • 「./notes/architecture.md をマインドマップに変換してください。」
  • 「このアウトラインから、チャット用の PNG マインドマップを生成してください。」

利用可能なツール

markdown_to_mindmap

Markdown をインタラクティブなマインドマップに変換します(オプションで画像も生成できます)。

パラメーター型デフォルト説明
markdownstring—Markdown コンテンツ(inputPath が設定されていない場合は必須)。両方指定された場合はこちらが優先されます。
inputPathstring—ローカルにある .md ファイルの絶対パス
formathtml | png | svg | jpghtml出力形式。画像形式には Playwright が必要です
filenamestringauto出力のベース名(サニタイズされ、必要に応じて markmap- が先頭に付加されます。同じ名前を再利用すると上書きされます)
openbooleanfalse結果をブラウザーで開くかどうか。サーバーのオープンモードが agent の場合にのみ公開されます(--open agent / MARKMAP_OPEN=agent)。

戻り値(returnMode=path):

{
  "htmlFilePath": "/path/to/markmap-….html",
  "filePath": "/path/to/markmap-….html"
}

画像形式の場合、filePath は画像のパスで、htmlFilePath は引き続き HTML ソースのパスです。

戻り値(returnMode=content): 生の HTML テキストブロック、または png/jpg/svg の場合は MCP の image コンテンツブロック(base64)です。パスの JSON は返されません。サイズが大きすぎる HTML(200KB 以上)は、パスの JSON にフォールバックします。

戻り値(returnMode=both): パスの JSON と、上記のインラインコンテンツを返します。

注: インタラクティブなズーム/折りたたみ機能とページ内の「PNG/JPG/SVG をエクスポート」ボタンは、HTML ビューアーの機能です。サーバー側の format: png|jpg|svg を使うと、エージェントはブラウザーで手動操作することなく直接利用できます。

list_mindmaps

出力ディレクトリにある最近生成されたファイルを、新しい順に一覧表示します。名前が markmap で始まるファイルのみが含まれます。

パラメーター型デフォルト説明
limitnumber20返すファイルの最大数(1~200)

{outputDir, files: [{name, filePath, size, mtimeMs, mtime}]} を返します。

get_mindmap

絶対パスを指定して、生成されたマインドマップファイルを取得します。パスは設定済みの出力ディレクトリ内に収まる必要があります(パストラバーサルは拒否されます)。

パラメーター型デフォルト説明
filePathstring—マインドマップファイル(HTML または画像)の絶対パス

JSON {filePath, mimeType, size} を返します。200KB 未満の HTML/SVG の場合は、テキストコンテンツブロックも追加で返します。PNG/JPG の場合はメタデータのみを返し、画像ブロックは返しません。ピクセルデータが必要な場合は、format=png\|jpg を指定して markdown_to_mindmap で再エクスポートしてください。

cleanup_mindmaps

古い(またはすべての)生成済みマインドマップファイルを削除します。

パラメーター型デフォルト説明
maxAgeDaysnumber7指定日数より古いファイルを削除します
allbooleanfalsetrue の場合、すべての markmap ファイルを削除します
dryRunbooleanfalsetrue の場合、削除せずにプレビューします
プロンプト:mindmap_from_content

モデルにメモを Markdown として構成し、その後 markdown_to_mindmap を呼び出すよう指示するヘルパープロンプトです。

パラメーター型デフォルト説明
topicstring—マップとして整理するトピックまたは未整理のメモ

関連プロジェクト

プロジェクト説明
MarkXMind OnlineMarkdown を使ってオンラインで XMind マインドマップを作成します。試してみる →
Obsidian MarkXMind PluginObsidian 内で XMindMark 構文を XMind マインドマップとしてレンダリングします。

ライセンス

このプロジェクトは MIT ライセンスのもとで提供されています。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。