mdmark

MCPサーバーを起動する

MCP の常駐サーバーを起動・停止し、待ち受けているポートを確かめる手順

プラグインの MCP サーバー plugin:mdmark:mdmark は、mdmark serve が常駐させるサーバーへ HTTP でつなぐ。 プラグインを入れた後、MCP のツールを使う前に、端末で 1 回起動する。 並行して開いたセッションは、同じプロセスのツールを呼ぶ。

前提

手順

常駐サーバーを起動する

serve を起動する

npx github:shuhei1101/mdmark#v{バージョン} serve

{バージョン} は使うバージョンの {MAJOR}.{MINOR}.{PATCH}。 初回の起動は依存を取るため、待つ。 起動のコマンドは、バージョンをまたいで変わらない。

待ち受けると、接続先の URL を標準出力に 1 行出し、端末を開いたまま動き続ける。

MCP サーバーを起動しました: http://127.0.0.1:8782/mcp

127.0.0.1 の /mcp だけを待ち受ける。 ほかのパスは 404、Host や Origin が localhost でないリクエストは 403 で返す。

待ち受けているポートを確かめる

出力の URL を読む

起動したときの出力の URL のポートが、待ち受けているポート。 既定は 8782、MDMARK_PORT を指定したときはそのポート。

別の端末から確かめる

macOS・Linux
lsof -iTCP:8782 -sTCP:LISTEN
Windows
Get-NetTCPConnection -LocalPort 8782 -State Listen

待ち受けているプロセスが 1 つ出る。

Claude Code からつなぐ

起動してからセッションを開く

常駐サーバーを起動した後に開いたセッションは、plugin:mdmark:mdmark がつながる。

起動していなかったセッションをつなぎ直す

常駐サーバーが起動していないと、そのセッションでは MCP サーバー plugin:mdmark:mdmark だけが接続に失敗する(ECONNREFUSED)。 ほかの MCP サーバーとセッションは使える。

常駐サーバーを起動した後、同じセッションで /mcp を開き、plugin:mdmark:mdmark を選んで接続し直す(Reconnect)。 セッションを開き直さずに、ツールを呼べる。

ポートを変える

MDMARK_PORT を両方に設定する

既定のポート 8782 をほかのプロセスが使っているとき、serve は待ち受けずに、理由と直し方を標準エラーに出して終了コード 1 で終わる。 Claude Code の接続先も同じ環境変数で決まるため、~/.claude/settings.json の env と、serve を起動する環境の両方に同じ MDMARK_PORT を設定する。

{
  "env": {
    "MDMARK_PORT": "18782"
  }
}
MDMARK_PORT=18782 npx github:shuhei1101/mdmark#v{バージョン} serve

PowerShell では、先に $env:MDMARK_PORT = "18782" を実行する。 ~/.claude/settings.json を変えた後は、セッションを開き直す。

MDMARK_PORT は 1〜65535 の整数。 整数でない値を指定すると、serve は待ち受けずに終了コード 1 で終わる。 serve が既に起動しているときは、起動し直さずにそのまま使える。

止める

端末で止める

serve を動かしている端末で Ctrl+C を押す。 待ち受けを閉じて、終了コード 0 で終わる。 止めている間、Claude Code では MCP サーバー plugin:mdmark:mdmark が接続に失敗する。

反映

起動した常駐サーバーに、MCP のツールの呼び出しが届く。 起動する前に開いたセッションは、/mcp で接続し直した後から。

確認

常駐サーバーが待ち受けている

起動の出力に http://127.0.0.1:{ポート}/mcp が出て、そのポートで待ち受けるプロセスがある。

MCP サーバーがつながっている

セッションで /mcp を開く。 plugin:mdmark:mdmark がつながっていて、ツールが並ぶ(MCP)。

元に戻す

Ctrl+C で常駐サーバーを止める。 プラグインは入ったまま残る。 外すには プラグインを入れる の「元に戻す」。