jotview について
jotviewは、Markdownをjotbins.comで表示できるリンクに変換し、リンクからMarkdownを読み取るコマンドラインツールです。MCPサーバーとしても動作し、AIエージェントによる文書リンクの作成や共有リンクの読み取りに対応します。
主な機能
- 01Markdownを表示用リンクに変換
- 02リンクからMarkdownを読み取り
- 03Mermaid図の内容に対応
- 04ローカルとリモートのMCPサーバー
- 05短縮とアップロードの制御
活用シーン
- 01Markdownのメモやレポートの共有
- 02Mermaid図を表示できるリンクに変換
- 03AIエージェントによる文書リンクの作成
- 04共有されたMarkdownの読み取りと修正
MCP 対応
jotviewは、render_markdownとread_linkツールを備えたローカルstdioおよびリモートStreamable HTTPのMCPサーバーを提供します。ローカルサーバーは許可されたテキストファイルも読み取れます。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://mcp.jotbins.com/mcpclaude mcp add --transport http jotbins-jotview https://mcp.jotbins.com/mcp{"mcpServers":{"jotbins-jotview":{"type":"http","url":"https://mcp.jotbins.com/mcp"}}}Cursor で開く{"servers":{"jotbins-jotview":{"type":"http","url":"https://mcp.jotbins.com/mcp"}}}VS Code で開く{"mcpServers":{"jotbins-jotview":{"type":"http","url":"https://mcp.jotbins.com/mcp"}}}{"mcpServers":{"jotbins-jotview":{"serverUrl":"https://mcp.jotbins.com/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
詳細
jotview
Markdown ファイルを、レンダリングできる jotbins のリンクに変換します。
npx jotview notes.md
# https://jotbins.com/d#z:U1bwSM3JyecCAA
依存関係はありません。インストール、アカウント、設定も不要です。
仕組み
ドキュメントは圧縮され、URL の フラグメント(# の後ろの部分)に格納されます。フラグメントがサーバーに送信されることはないため、2000 文字以下のリンクなら、入力した内容がマシンの外に出ることはありません。リンクを開くと、ブラウザー内ですべてレンダリングされます。
使い方
jotview <file> mint a link from a file
jotview read markdown from stdin
jotview decode <url> print the markdown behind a /d or short link
jotview mcp [--raw] run as an MCP server for AI agents
--raw never shorten; always the full /d URL
--short always shorten, even when small
--keep make a shortened link permanent
--open open the link in your browser
--copy copy the link to your clipboard
--json print the result as one JSON line (see below)
--base-url <url> override https://jotbins.com
-h, --help
-v, --version
例:
jotview README.md --open
cat notes.md | jotview
jotview notes.md | pbcopy
LINK=$(jotview notes.md --raw)
jotview decode https://surl.jotbins.com/abc123 > notes.md
decode は jotbins.com/d リンク(ローカルでデコード)と、surl.jotbins.com の短縮リンク(取得します。クリックと同様に、有効な短縮リンクはそのまま有効な状態に保たれます)を受け付けます。
短縮と、その代償
ドキュメントのリンクは、ドキュメントのサイズに応じて長くなります。文字数は Markdown のサイズのおよそ半分です。20 KB のファイルでは約 8,700 文字の URL になり、Discord、X、ほとんどのチャットクライアントでは受け付けられません。
そのため、2000 文字を超えるリンクは surl.jotbins.com を使って短縮されます。短縮が行われると、jotview は stderr に通知します。
note: uploaded to jotbins to shorten (8768 → 30 chars). use --raw to keep it local.
note: short link expires after 30 days unused. use --keep to keep it forever.
短縮するとドキュメントがアップロードされます。 フラグメントは Markdown そのもの なので、URL を保存するとテキストも保存されます。しきい値以下ではアップロードもネットワークリクエストも一切行われません。--raw を使うと、ほとんどの場所に貼り付けられないほど長い URL になることを承知のうえで、長いドキュメントをローカルに保てます。
短縮リンクは自動的に整理されます。 30 日間誰も開かなかったリンクは削除されますが、待機ページから復元できる期間が 60 日間あります。最初からリンクを永久に残すには --keep を指定するか、その期間内に待機ページで Save link をクリックしてください。完全な /d リンクは保存されないため、期限切れになりません。
短縮サービスに接続できない場合や、レート制限がかかった場合、jotview は完全なリンクを出力して 0 で終了します。短縮の問題によってパイプラインが失敗することはありません。
AI エージェントとの連携(MCP)
jotview mcp は、2 つのツールを備えた stdio MCP サーバーです。render_markdown を使うと、AI が Markdown(メモ、レポート、Mermaid 図など)を書き、それを渡せる jotbins リンクを返します。read_link を使うと、共有した jotbins リンクを読み取ります。
Claude Code
claude mcp add jotview -- npx -y jotview mcp
Claude Desktop — 最新リリースから jotview.mcpb をダウンロードし、ダブルクリックしてください。任意で、ファイルの読み取りを許可するドキュメントフォルダーを選択できます。
Cursor などのクライアント — MCP 設定に追加します。
{ "mcpServers": { "jotview": { "command": "npx", "args": ["-y", "jotview", "mcp"] } } }
あとは、「デプロイの流れを図にして、jotbins のリンクを教えて」と頼むだけです。
render_markdown は content(Markdown)と、任意の title(最初の見出しの代わりに使うリンクテキスト)、keep(短縮リンクを永久に残す)、shorten("auto"、"always"、または "never")を受け取ります。完成した Markdown リンク [First heading](url) と、何かがアップロードされたかどうかを示すメモを返します。ファイルを読み取ることはありません。AI がすでに持っているテキストを渡します。
ファイルのレンダリング。 ローカルサーバーには content の代わりに path を渡すこともできるため、AI がツール呼び出しにファイル全体を貼り付ける必要はありません。読み取り対象は .md、.markdown、.mdx、.txt ファイルのみで、サーバーが実行されているフォルダー(Claude Code はプロジェクト内で起動します)、または --allow-dir で許可したフォルダー内に限られます。
claude mcp add -s user jotview -- npx -y jotview mcp --allow-dir ~/notes
サーバーが / またはホームフォルダーで実行されていて、--allow-dir が指定されていない場合、path は無効になります。リモートサーバーがファイルを読み取ることはありません。
read_link は url(/d リンクまたは短縮リンク)を受け取り、そのリンクの Markdown を返します。リンクを貼り付けて、「誤字を直して、新しいリンクを教えて」と頼めます。リンクは変更されません。編集すると、新しいリンクになります。
アップロード。 リンクの文字数ごとにトークンを消費するため、MCP は CLI より早い段階で短縮します。500 文字を超えるリンクは surl.jotbins.com を経由し、ドキュメントをアップロードします(keep が設定されていない場合、短縮リンクは 30 日間未使用だと期限切れになります)。アップロードを完全に禁止するには、サーバーを --raw を付けて起動します。
claude mcp add jotview -- npx -y jotview mcp --raw
2024-11-05 から 2026-07-28 まで、あらゆる MCP リビジョンのクライアントで動作します。
リモートサーバー — インストール不要
同じツールを https://mcp.jotbins.com/mcp(Streamable HTTP、サインイン不要)で実行できます。ローカルコマンドを実行できないクライアント向けです。
- claude.ai(ウェブおよびモバイル): Settings → Connectors → Add custom
connector →
https://mcp.jotbins.com/mcpを貼り付けます。 - Claude Code:
claude mcp add -s user --transport http jotview https://mcp.jotbins.com/mcp
ローカルサーバーと同じルールですが、アップロードを禁止することはできません。ドキュメントを surl.jotbins.com に送信しないようにするには、呼び出しごとに shorten: "never" を指定するか、ローカルの --raw サーバーを使用してください。アップロードにはクライアントごとのレート制限があり、制限を超えても完全なリンクは引き続き取得できます。
Worker は worker/ にあり、cd worker && npx wrangler deploy でデプロイします。
出力仕様
stdout には URL だけが出力されます。 通知、警告、エラーは stderr に出力されるため、$(jotview x.md) や jotview x.md | pbcopy の出力はクリーンな状態に保たれます。
--json を指定すると、スクリプトや CI 向けに、代わりに stdout に 1 行の JSON が出力されます。
{"url":"https://surl.jotbins.com/abc123","rawUrl":"https://jotbins.com/d#z:…","shortened":true,"permanent":false,"failure":null}
failure は、短縮を試みて失敗した場合の短縮サービスのエラーです(その場合、url は完全なリンクになります)。
終了コード:0 成功、1 実行時エラー、2 使用方法のエラー。
制限
入力サイズは 1 MB に制限されています。これは /d レンダラーが開けるサイズと同じです。
要件
Node 18 以降。
リリース
リリースは GitHub Actions から実行します。最新の main で次を実行します。
npm version minor
git push --follow-tags
npm version は manifest.json と server.json も更新します。次に、v* タグによってテストが実行され、npm に公開され(信頼された公開、プロビナンス付き)、jotview.mcpb が GitHub リリースに添付され、MCP Registry のエントリーが更新されます。まず CHANGELOG.md の Unreleased の内容を新しいバージョンの下に移動してください(npm version を実行する前にコミットします)。Worker は別途デプロイします:cd worker && npx wrangler deploy。
リリースの実行が途中で失敗した場合は、原因を修正し、gh workflow run release.yml -f tag=vX.Y.Z で完了させてください。完了済みのステップはスキップされます。
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。