seekstone
I keep running into the same problem — my draft got garbled. Let me start a fresh, complete, correct output with a clean mind. I will not reconstruct the tiny pieces, I will compose the whole final answer string once.
Final answer now, from here, with attention:
サーバー | 1k ノート | 5k ノート | 10k ノート | Seekstone @10k との比較 |
🥇 Seekstone | 1.1 | 3.1 | 6.2 | — |
obsidian-mcp-rs | 6.1 | 19 | 37 | 約6倍遅い |
obsidian-mcp-pro | 46 | 213 | 430 | 約70倍遅い |
obsidian-mcp-server | 82 | 356 | 732 | 約118倍遅い |
obsidian-mcp | 82 | 405 | 811 | 約131倍遅い |
mcpvault | 96 | 467 | 958 | 約155倍遅い |
mcp-obsidian | 164 | 740 | 1,550 | 約250倍遅い |
obsidian-tc | 264 | 1,302 | 2,714 | 約440倍遅い |
どの競合も、クエリごとにサブプロセスを起動するか HTTP ラウンドトリップを行っており、ほとんどがボールトの規模に応じて増大する処理を実行します。Seekstone はプロセス内でウォームなインデックスを保持しています — IPC もネットワークも不要 — そのため、キーワード検索は 10,000 ノートでも一桁のミリ秒に収まります(セマンティックモードでは、エンベディングとスキャンに約 8 ms の固定オーバーヘッドが加わるだけです)。しかもその差は規模が大きくなるほど広がります:1k → 10k ノートと規模が拡大するにつれ、競合は 5〜10 倍遅くなるのに対し、Seek はほぼ変化しません。最速の代替 — クエリのたびにボールトを再スキャンする obsidian-mcp-rs — でさえ、10k ノートのウォーム状態で 約6倍遅く、ペイロードは3倍です。REST プロキシ世代は 約90〜250倍遅くなります。
Seekstone は、ベンチマークセットの中で、どのボールトサイズでも約 2 KB のペイロードと一桁ミリ秒のキーワード遅延の両方を実現する唯一のサーバーです — そして、私たちの知る限り、公開されて再現可能なベンチマークを持つ唯一の Obsidian MCP サーバーでもあります。ハーネス、合成ボールト、完全な結果はすべてオープンソースです:benchmark-scaling.md と harness を参照してください。クローンして、実行して、検証してください。
インストール
自分に合った方法を選んでください。
AIエージェントを使っていますか?このプロンプトを貼り付けましょう
Claude Code, Cursor, または他のコーディングエージェントを使っているなら、あなた自身が操作を行う必要はありません— 以下のプロンプトを貼り付ければ、エージェントがインストールを実行します:
Install the MCP server for this editor, seekstone. Run
npx -y seekstone init --client code --write(usedesktop, orvscodefor other clients). It auto- ot detects my Obsidian vault. If it lists several, ask me which one to choose and re-run with--vault "<path>". If there are any errors, relay them to me, then tell me to restart the session so the seekstone tries to load.
seekstone init は完全に非対話型です。 --write を付けると、ボールトを検証してクライアント設定を1 回でパッチします(Claude Code は claude mcp add 、それ以外のクライアントはタイムスタンプ付きバックアップ付きの加法的 JSON パッチ)。
オプション 1 — ワンクリック (Claude Desktop、ターミナル不要)
GitHub Releases から
seekstone.mcpbをダウンロードClaude Desktop で開きます — Finder でダブルクリックするか、右クリック → アプリケーションから開く → Claude Desktop
プロンプトで自分の Obsidian ボールトのフォルダを選ぶ
seekstone が Claude のツールバーに表示されたら成功です。JSON の編集もターミナルも Node.js も不要です。
オプション 2 — ガイド付きセットアップ (CLI ユーザー推奨)
ターミナル を開き(macOS: Cmd+Space を押して「ターミナル」と入力し、Enter)、次を実行パシます:
npx -y seekstone initSeekstone が Claude のツールバーのプラグアイコンの下に表示されたら成功です。
Seekstone は Obsidian 自身のボールトレジストリを読み取って、ボルトを自動検出し、検証します。そして、貼り付けるための設定ブロックを出力するか、Claude Desktop を直接パッチします:
# Auto-detect vault, print config to paste
npx -y seekstone init
# Auto-detect vault, patch Claude Desktop in place (with backup)
npx -y seekstone init --write
# Specify vault explicitly if you have multiple
npx -y seekstone init --vault "/path/to/vault"
# Auto-configure Claude Code in one step (auto-detects vault, runs claude mcp add)
npx -y seekstone init --client code --write
# Or just print the Claude Code command without running it
npx -y seekstone init --client codeオプション 3 — 手動設定(Claude Desktop)
claude_desktop_config.json(設定 → 開発者 → Edit Config)に追加:
{
"mcpServers": {
"seekstone": {
"command": "npx",
"args": ["-y", "seekstone"],
"env": { "SEEKSTONE_VAULT": "/absolute/path/to/your/vault" }
}
}
}オプション 4 — Claude Code
ボールトの自動検出から Claude Code の設定まで、1コマンドで完了します:
npx -y seekstone init --client code --writeまたは、手動でボールトのパスを明示的に指定したい場合は:
claude mcp add seekstone --env SEEKSTONE_VAULT=/absolute/path/to/your/vault -- npx -y seekstoneオプション 5 — Cursor
ワンクリック: — その後、Cursor の MCP 設定で SEEKSTONE_VAULT を自分のボールの絶対パスに設定します(このリンクはプレースホルダーをインストールします)。
または、CLI でボールトを自動検知して、~/.cursor/mcp.json にパッチを当てます(バックアップ付き):
npx -y seekstone init --client cursor --writeまたは、~/.cursor/mcp.json(グローバル)または <project>/.cursor/mcp.json (プロジェクトごと)に手動でブロックを追加:
{
"mcpServers": {
"seekstone": {
"command": "npx",
"args": ["-y", "seekstone"],
"env": { "SEEKSTONE_VAULT": "/absolute/path/to/your/vault" }
}
}
}オプション 6 — VS Code
ワンクリック: — その後、VS Code がサーバー設定を開いたとき SEEKSTONE_VAULT を自分のボールの絶対パスに設定します(リンクはプレースホルダーをインストールします)。
または、CLI でボルトを自動検知し、現在のディレクトリに ワークスペース設定(.vscode/mcp.json)を書き込みます:
npx -y seekstone init --client vscode --writeまたはターミナルから追加:
code --add-mcp '{"name":"seekstone","command":"npx","args":["-y","seekstone"],"env":{"SEEKSTONE_VAULT":"/absolute/path/to/your/vault"}}'または、.vscode/mcp.json(ワークスペース)に手動でブロックを追加するか、コマンドパレットの MCP: Open User Configuration(ユーザー固有)してください。VS Code には癖があるので注意:トップレベルのキーは servers(mcpServers ではない)、また "type": "stdio" が必須:
{
"servers": {
"seekstone": {
"type": "stdio",
"command": "npx",
"args": ["-y", "seekstone"],
"env": { "SEEKSTONE_VAULT": "/absolute/path/to/your/vault" }
}
}
}VS Code 1.102+ が必要です。seekstone は Copilot Chat の Agent mode ツールピッカーに表示されます。
その他の MCP クライアント (Windsurf, Cline, …)
Seekstone は標準的な MCP stdio サーバーです — 任意の MCP クライアントそのまま利用できます。クライアントの MCP 設定に上記と同じ JSON ブロック(command: npx、args: ["-y", "seekstone"]、env SEEKSTONE_VAULT)を追加してください。
インストール後に行う必要があります:クライアントを再起動すると、起動時に Seekstone がボールトをウォークスルーし、インメモリの全文検索インデックス(数千ノートなら数秒)を構築して、編集しながら最新に保ちます。下の19のツールを Claude が利用できます。
CLI オプションには Node.js ≥ 22 が必要です。ワンクリックの .mcpb バンドルには外部依存はありません。
Seekstone がコンテキストを節約してくれるなら、⭐ Star the repo を検討してください — 他の人が見つけるのに役立ちます。
Related MCP server: mcp-obsidian-ek
Claude はあなたのボールトで何ができますか?
Seekstone を接続したら、次のような Claude に質問できるようになります:
「検索 my notes for Everything」 anything about [topic]; — Give me a summary — uses
search、全ファイルではなくランク付けされた抜粋を返します。「#project タグが付いたノートをぜんぶ見つけてタイトルリストを表示して」 —
list_notesをタグフィルターで使用**「[プロジェクト]ノートの
Tool | Description |
| ノートを作成します(任意のfrontmatter + 本文)。親ディレクトリは自動的に作成されます。 |
| ノートをボールトの |
| ノートを移動または名変更します — そのノートを指す他のノート内のwikilinkとマークダウンリンクは、壊れないように書き換えられます( |
| ノート内の見出しを改名します — ボールト全体のすべての |
| frontmatterに触れずに、ノート本文へテキストを追加します。 |
| 既存のキーの順序を変えたり引用符のスタイルを変えたりせずに、frontmatterのキーを設定・更新・削除します。 |
| 見出しまたはブロック参照の位置で、テキストを追加・先頭挿入・置換します( |
| ノートの本体のテキストを検索・置換します — リテラルまたは正規表現、大文字小文字の区別、単語全体一致、オプションの |
| 今日の定期ノートに追記します。まだ存在しない場合は、テンプレートから作成します。 |
すべての書き込みツール(append_note、patch_note、patch_frontmatter、replace_in_note、rename_heading、move_note、delete_note、append_periodic_note、およびoverwrite: true付きのcreate_note)は、オプションのcompare-and-swapをサポートしています。read_noteで取得したcontentHashをprevHashとして渡すと、その際の間にノートが変更されていた場合、呼び出しはきれいに失敗します — 並行編集が黙って破棄されてたり、まだ見ていないコンテンツを移動・削除してしまったりすることがありません。変更を伴うすべての結果は新しいcontentHashを返すため、続けて編集する場合でも再読み取りの必要はありません。
高速 かつ 完全。 Seekstoneは、私たちのベンチマークセットの中で、list_tags、outline_note、get_backlinks、get_linksをファーストクラスのツールとして公開している唯一のObsidian MCPサーバーです。さらに、4つの機能が当社を際立たせています:
完全にプロセス内で動作するローカル・セマンティック検索。
SEEKSTONE_SEMANTIC=1を設定すると、searchにmode: "semantic"と"hybrid"が追加されます — 小型のオンデバイス埋め込みモデルによる意味ベースの検索です(一度限りづつnpx -y seekstone fetch-modelでダウンロード。実行中のサーバーがネットワークに触れることはありません)。私たちがコミットした10kノートのベンチマークボールでは、説明文形式のクエリは、キーワード検索が30%だったのに対し、70%の確率で正しいノートを上位5件に挙げました(コミット済み評価)。私たちがベンチマークした他のサーバーの中に、オフラインでネイティブ依存を持たない埋め込みを搭載したものはありません。そして、私たちは同じゴールのセット上で、競合する製品を競争的に測定しました(コミット済み比較):obsidian-mcp-proのOllamaベースのセマンティック検索は実際により高精度ですが(当方のランニングの72% hit@5に対し、90% — 相手は1億3700万のパラメータモデル、当方は800万のモデル)、その代償としてクエリが12倍遅く(p50で 165 ms 対 14 ms)、インデックス構築が71倍遅く(26.5分 対 22秒のコールド時)、ペイロードが約7倍(クエリあたり 15.4 KB 対 約2 KB)になり、さらにインストール・運用が必要な別のサーバーが付随します。obsidian-mcp-proは、10kノートのボールトをどうしてもインデックス化できませんでした(そのJSONベクトルストアは、約15分間埋め込みの後にJavaScriptの文字列上限に達するため)。どちらを選択するかにお任せします — 数字はすべてコミット済みです。定期ノート、ファイルシステムから直接。
get_periodic_noteとappend_periodic_noteは、あなたのボールト自身の設定(.obsidian/daily-notes.jsonおよび「Periodic Notes」プラグインの設定)を読み取って、日次・週次・月次・四半期の、年次のノートパスを解決します — Obsidianが閉じていても動作します。 RESTベースのどのサーバーも、この処理はアプリが実行している間にしかできません。バイト同一のfrontmatterを保証。
patch_frontmatterはYAMLをその場で編集します。キー順序・引用スタイル・コメントを保存し、書き込み安全性はテストハーネスによってバイト単位で検証されています。私たちが調査した範囲で、この領域振りを提供するサーバーは他にありません。ゼロカップリング。 Obsidianアプリも、Local REST APIプラグインも、プラグインのバージョンズレも不要です。ただあなたのディスク上にあるファイルだけが使われます。
設定
変数 | 必須 | 説明 |
| 必須 | Obsidianボールしかしトへの絶対パス。 |
| 任意 |
|
| 任意 | 絶対パス。設定した場合、JSON行形式のログがここに追記されます(サイズによるローテーションあり)。 |
| 任意 |
|
| 任意 |
|
| 任意 |
|
| 任意 | カンマ区切りのボール相対グロブパターン(例: |
| 任意 |
|
| 任意 | Model2Vec 埋め込みモデルを置くディレクトリ(デフォルト: |
| any任意 | ダウンロードしたモデルとボルトごとの埋め込みキャッシュのキャッシュルート(デフォルト |
仕組み
Seekstoneはfast-globでボールトを走査し、各ノートのfrontmatterを解析します(バイト単位で解析するので、書き込み前後でfrontmatterの領域がバイト単位で同じであることを検証できます)。そして、メモリ内にMiniSearchの全文検索インデックスを構築します。検索は 、ノート全体ではなく、順位付けされた短い抜粋を返します。この「抜粋なのか文書全体ではない」という設計は、コンテキスト利用の削減という利点をもたらします。クロスプラットフォームのファイル監視ライブラリ(chokidar)が、Obsidianで編集する際にインデックスを常に最新に保ちます。
書き込みは、設計上控えめです:append_noteはfrontmatterに一切触れません。patch_frontmatterはYAML文書をそのまま編集し、再シリアライズしないので、キーの順序、引用名称、コメントが維持されます。
また、実行し続けられるように設計しています。Seekstoneは、コミットのたびにCI上でmacOS・Linux・Windowsでテスト済みです。書き込みツールは最悪の(ReDoS)入力に対しても堅牢化され、予期しない。
コードベースを何層にもなって見るには — パッケージ、サーバーの内部、エンドツーエンドのリクエストの流れ、計測ハーネス — docs/ARCHITECTURE.mdをご覧ください。
セキュリティとプライバシー
Seekstoneは、ローカルディスクのSEEKSTONE_VAULT配下のファイルを読み取ります — また書き込みツールを介して変更します。実行中のサーバーはネットワークコールを一切行わず、テレメトリを送信しません(パッケージ内唯一のネットワークパスは、明示的なnpx -y seekstone fetch-modelのサブコマンドだけです — 任意のセマンティック検索モデルを、SHA-256で検証し、サービスの開始前に終了する、一度だけのダウンロードです)。ログはデフォルトでメタデータのみです(ノートの本文が現れるのはdebugレベルのときだけ)。ボールの外に書き込まれるものは、あなたが設定したオプションのログファイルと、SEEKSTONE_SEMANTIC=1を設定している場合の~/.cache/seekstoneのボールごとの埋め込みキャッシュのみです(このオリジンはあなたのノートから導出されたもので、どこにも送られません)。
書き込み安全性の契約
AIにノートへの書き込みアクセスを許可することは、「私たちを信じてください」では足りない価値があります。Seekstoneには、名前付きのテスト済み契約 — docs/WRITE-SAFETY.md — が入っていて、**8つの保証はそれぞれ、それを実装するコードとそれを証明するテストに
私のVaultで使用しても安全ですか?
Seekstoneは、明示的に(上記の表にある9つの)書き込みツールのいずれかを呼び出した場合を除き、ファイルを変更しません:create_note、append_note、patch_note、patch_frontmatter、replace_in_note、move_note、rename_heading、delete_note、append_periodic_note。実行中のサーバーはネットワークリクエストを行いません(セマンティック検索のモデルは、明示的なfetch-modelサブコマンドによって帯域外で一度だけ取得されます)。Vaultパスはサンドボックス化されており、その外部を読み書きできるツールはありません。さらに厳しくすることもできます:SEEKSTONE_READ_ONLY=1はセッションから書き込みツールを完全に除去し、SEEKSTONE_WRITE_PATHSは書き込みを許可したフォルダ(たとえばjournal/**のみ)に制限します。どちらもディスパッチ層で強制されるため、チェックを忘れるツールはありません。
Windowsでも動作しますか? はい。SeekstoneはすべてのコミットでCI上でmacOS、Linux、Windowsの各環境でテストされています。
どのくらいの規模のObsidian Vaultを扱えますか? Seekstoneは数千のノートを含むVaultを対象にプロファイリングされています。コミット済みの10,000ノートのベンチマークVaultでは、コールドインデックスのビルドに数十秒かかり、プロセスRSSは約100 MB未満に収まります。一般的な個人Vaultは数秒でインデックスされます。セマンティックモードは起動後にバックグラウンドで埋め込みを行います(10kノートで約20秒。Vaultごとにキャッシュされるため、再起動時は1秒未満でリロードされます)。
seekstone initはどうやって私のVaultを自動的に見つけるのですか?
Obsidian自身のVaultレジストリ(obsidian.json)を読み取ります。これはObsidianが既知のVaultを追跡するために使用しているファイルと同じです。Vaultが1つの場合は自動的に選択されます。複数の場合は一覧表示され、--vaultで選択するよう促されます。
.mcpbファイルとは何ですか?
MCP Bundle(MCPバンドル)です。サーバーとそのマニフェストを含む自己完結型のzipファイルです。インストールするには、Finderでダブルクリックするか(または右クリック→プログラムから開く→Claude Desktop)、Vaultを選択するだけです。ターミナルやNode.jsは不要です。
コントリビューションと開発
コントリビューションは歓迎します。ガイドラインはCONTRIBUTING.mdを参照してください。あるいは、すぐに始めてください:
npm install # install all workspace deps
npm test # run all tests
npm run lint # biome check
npm run build -w seekstone # tsup → dist/
npm run build:mcpb # build seekstone.mcpb bundle
npx vitest run packages/server/src/tools/search.test.ts # single test file
npx vitest run -t 'parses a typical frontmatter' # single test by name
npx tsc -p packages/server/tsconfig.json --noEmit # typecheckリポジトリ構成
Package | 目的 |
| 公開されている |
| 共有のVaultプリミティブ — walk、frontmatterパーサー、リンク/タグ抽出、アウトライン、パーセンタイル、pmap、Model2Vecエンベーダー。サーバービルドにバンドルされています。 |
| 上記のペイロード数値を生成したプロファイラー+ベンチマーク+書き込み安全性ハーネス(REST対ファイルシステム)。開発専用で、未公開です。 |
サーバーには実際のビルドがあり(tsup → dist/)、npmで公開されています。ハーネスはtsxを介してソースから実行されます。リリースは自動化されています — docs/RELEASING.mdを参照してください。
計測ハーネス
ハーネスは、ファイルシステム直接操作方針の動機となったベンチマーク数値を再現するために存在します。デフォルトの再現パス(コミット済みの合成Vaultに対するfs/seekstoneバックエンド)には追加のものは何も必要ありません。RESTベースのバックエンド(rest、mcp-obsidian、obsidian-mcp-server)のみ、Local REST APIプラグインが動作しているObsidianが必要です。
export SEEKSTONE_VAULT="/absolute/path/to/your/vault"
npx tsx packages/harness/src/cli.ts profile --vault "$SEEKSTONE_VAULT"
npx tsx packages/harness/src/cli.ts bench \
--queries packages/harness/queries/default.json \
--stats reports/vault-stats.json
npx tsx packages/harness/src/cli.ts safety --vault "$SEEKSTONE_VAULT"ハーネス環境変数:SEEKSTONE_REST_API_KEY(Local REST APIプラグインから)とSEEKSTONE_REST_URL(デフォルトはhttps://127.0.0.1:27124)。
サポート
Seekstoneは無料のオープンソースです。コンテキスト(コスト)を節約できたなら、コーヒーをご馳走してください。
ライセンス
MIT © Shaq Mughal
Maintenance
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
- AlicenseAqualityDmaintenanceMCP server to interact with Obsidian via the Local REST API community plugin.134,318MIT
- AlicenseNot gradedqualityCmaintenanceMCP server providing tools to interact with Obsidian via the Local REST API community plugin.5MIT
- AlicenseNot gradedqualityBmaintenanceThe fastest Obsidian MCP server for Claude.1MIT
- AlicenseNot gradedqualityBmaintenanceAn Obsidian plugin that runs an embedded MCP server inside Obsidian, exposing vault operations and optional GitHub integration to any MCP client.2,472GPL 3.0
Related MCP Connectors
An MCP server for deep research or task groups
MCP server for Flux AI image generation
MCP server for Blockscout
Appeared in Searches
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/shaqmughal/seekstone'
If you have feedback or need assistance with the MCP directory API, please join our Discord server