Skip to main content
Glama
metacoma

freeplane-mcp

by metacoma

freeplane-mcp

Claude Desktop、Cursor、opencodeなどのAIエージェントが、実行中のFreeplaneマインドマップを[freeplane_plugin_grpc](じEditZoom G0) gRPCプラグイン経由で読み取りおよび変更できるようにするMCPサーバーです。

一度だけの「Markdown → 画像」生成MCPサーバーとは異なり、変更は現在開いているFreeplaneマップにライブで適用されます。

アーキテクチャ

MCP client (Claude / Cursor / opencode)
        │
        │ stdio or Streamable HTTP (MCP SDK)
        ▼
freeplane-mcp (Python, FastMCP)
        │
        │ gRPC (grpcio)
        ▼
Freeplane + org.freeplane.plugin.grpc
(port 50051)

Related MCP server: xmind-mcp

必要条件

  • Python 3.10+

  • gRPC helloプラグインがインストールされたForeplanが実行されていること

  • 既定のFreeplane gRPCポート: 50051

インストール

cd ~/spaces/freeplane-mcp
python -m venv .venv
.venv/bin/pip install -e .

実行

stdio

Claudeの標準トランスポート。

.venv/bin/freeplane-mcp

Streamable HTTP

.venv/bin/freeplane-mcp --transport http --port 8000

設定

環境変数

CLI オプション

デフォルト

FREEPLANE_GRPC_HOST

--grpc-host

127.0.0.1

FREEPLANE_GRPC_PORT

--grpc-port

50051

FREEPLANE_GRPC_TIMEOUT

10

FREEPLANE_MCP_TRANSPORT

--transport

stdio

FREEPLANE_MCP_HOST

--host

127.0.0.1

FREEPLANE_MCP_PORT

--port

8000

MCPツール

export_map

現在のマップを標準JSONエクスポートします。

サポートされているフィールド:

text, id, children, note, detail, link, tags, icons, attributes, background_color, folded、および relationships

import_map

標準JSONからマインドマップをインポートします。

サポートされているinsert_mode値:

  • root — マップのルートの下に挿入(デフォルト)

  • nodeinsert_node_id の下に挿入

  • selected — 現在選択されているノードの下に挿入

テスト

現在のマップをエクスポート:

.venv/bin/python -c "
import sys; sys.path.insert(0, '.')
from freeplane_mcp.freeplane_grpc import FreeplaneGrpcClient
c = FreeplaneGrpcClient()
print(c.export_map())
"

マップをインポートして再エクスポート:

.venv/bin/python -c "
import sys; sys.path.insert(0, '.')
from freeplane_mcp.freeplane_grpc import FreeplaneGrpcClient
c = FreeplaneGrpcClient()
c.import_map('{\"text\": \"Hello from MCP\", \"children\": [{\"text\": \"child 1\"}]}')
print(c.export_map())
"

MCPクライアント設定

stdio設定の例:

{
  "mcpServers": {
    "freeplane": {
      "command": "/home/bebebeka/spaces/freeplane-mcp/.venv/bin/freeplane-mcp"
    }
  }
}

HTTP設定:

{
  "mcpServers": {
    "freeplane": {
      "url": "http://127.0.0.1:8000/mcp"
    }
  }
}

JSON形式の注記

標準JSON形式は、プラグインのJsonHelper.javaが定義します。

インポートは _fp_import_root_node をサポートしています:

{"_fp_import_root_node": "root", "mindmap": {...}}

これはマップのルートの下に挿入します。

GXP10 これは特定のノードの下に挿入します。

ラッパーでな限り、マップは現在選択されているノードの下に挿入されます。

レガシー形式もサポートされています:

{"node text": {"child node": "note"}}

ライセンス

MIT

Install Server
A
license - permissive license
A
quality
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

View all related MCP servers

Related MCP Connectors

  • Persistent memory and knowledge management for AI agents with semantic search and 50+ tools.

  • Shared long-term memory vault for AI agents with 20 MCP tools.

  • A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/metacoma/mcp-freeplane'

If you have feedback or need assistance with the MCP directory API, please join our Discord server