Obsidian OneDrive MCP Server
Provides tools for reading and writing Markdown notes in an Obsidian vault, including creating, overwriting, appending, and listing notes within the vault.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Obsidian OneDrive MCP ServerCreate a note in my vault titled 'Meeting with John' with the content 'Discuss Q3 roadmap'."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Obsidian OneDrive MCP Server
OneDrive 上の Obsidian Vault に、MCP クライアントから Markdown ノートを読み書きするリモート対応サーバーです。
PC のローカル同期フォルダを直接操作するのではなく、常時稼働できるサーバーから Microsoft Graph API で OneDrive に書き込みます。そのため、自宅PCがオフラインでもノートを作成でき、PCを起動した時に通常の OneDrive 同期で Obsidian Vault に反映されます。
MCP client
│ HTTPS + Bearer key
▼
Always-on MCP server
│ Microsoft Graph
▼
OneDrive / Obsidian Vault
│ OneDrive sync (when the PC is online)
▼
Obsidian on the PC機能
write_markdown: ノートの新規作成、上書き、追記read_markdown: ノートの読み込みlist_markdown: フォルダ内のノート一覧(再帰検索対応)存在しないノート用フォルダの自動作成
ETag による同時編集の競合検出
Vault 外へのパストラバーサル、
.obsidian、Markdown 以外へのアクセスを拒否MCP 2026-07-28 と、2025系クライアント向け stateless Streamable HTTP に対応
個人用 OneDrive のデバイスコード認証とトークン自動更新
組織用 OneDrive のクライアント資格情報認証
stdio モード(ローカル利用・デバッグ用)
Related MCP server: obsidian-mcp
必要なもの
Node.js 22 以上、または Docker
OneDrive に同期している既存の Obsidian Vault
Microsoft Entra のアプリ登録
リモート利用時は HTTPS を終端できるリバースプロキシまたはホスティングサービス
個人用 OneDrive のセットアップ
個人用 Microsoft アカウントでは、デバイスコードで一度サインインし、更新トークンを永続ディスクに保存する方式を使います。
Microsoft Entra admin center でアプリを登録します。
対応するアカウントの種類に「個人用 Microsoft アカウント」を含めます。
「認証」→「詳細設定」から、パブリック クライアント フローを有効にします。
Microsoft Graph の委任されたアクセス許可
Files.ReadWriteを追加します。設定ファイルを作ります。
cp .env.example .env最低限、次の値を編集してください。
MICROSOFT_TENANT_ID=consumers
MICROSOFT_CLIENT_ID=登録したアプリのクライアントID
MICROSOFT_TOKEN_FILE=./data/tokens.json
ONEDRIVE_VAULT_PATH=Documents/Obsidian/MyVault
MCP_API_KEY=十分に長いランダム値
MCP_ALLOWED_HOSTS=localhost,127.0.0.1,mcp.example.comONEDRIVE_VAULT_PATH はローカルパスではなく、OneDrive ルートから見たパスです。
依存関係を入れ、Microsoft アカウントを認証します。
npm install
npm run auth:device画面に表示されたURLとコードでサインインすると、MICROSOFT_TOKEN_FILE にトークンが保存されます。このファイルはパスワードと同様に扱い、Gitへ追加しないでください。
サーバーを起動します。
npm run dev認証とVaultパスを確認できます。
curl -H "Authorization: Bearer $MCP_API_KEY" http://localhost:3000/readyDocker で実行
cp .env.example .env
docker compose build
docker compose run --rm obsidian-mcp node dist/device-auth.js
docker compose up -d更新トークンは obsidian-mcp-data ボリュームに保存されます。クラウドへ配置する場合も、/app/data に永続ディスクを接続した上で、その環境のシェルからデバイス認証を一度実行してください。コンテナイメージやGitリポジトリにトークンを含めてはいけません。
永続ディスクや対話シェルを提供しないホスティングでは、次の組織アカウント方式を使うか、トークンを安全に永続化できる基盤を選んでください。
組織用 OneDrive の無人認証
Microsoft 365 の組織テナントでは、クライアント資格情報を使用できます。アプリに Microsoft Graph のアプリケーション権限 Files.ReadWrite.All を追加し、管理者の同意を与えます。その上で次を設定します。
MICROSOFT_TENANT_ID=組織のテナントID
MICROSOFT_CLIENT_ID=クライアントID
MICROSOFT_CLIENT_SECRET=クライアントシークレット
ONEDRIVE_USER_ID=user@example.com
ONEDRIVE_VAULT_PATH=Documents/Obsidian/MyVaultONEDRIVE_DRIVE_ID が分かる場合は、ONEDRIVE_USER_ID の代わり、または併用で指定できます。アプリケーション権限は対象範囲が広いため、専用アカウントやMicrosoft Graphの選択的アクセス許可も検討してください。
MCP クライアントから接続
MCP エンドポイントは次のURLです。
https://mcp.example.com/mcpHTTPヘッダーを設定できるMCPクライアントに、次を指定します。
{
"url": "https://mcp.example.com/mcp",
"headers": {
"Authorization": "Bearer YOUR_MCP_API_KEY"
}
}クライアントごとに設定形式は異なります。インターネットへ公開する場合、MCP_API_KEY に加えて必ずHTTPSを使用してください。
ツールの挙動
write_markdown
{
"path": "Inbox/new-idea",
"content": "# New idea\n\nDetails...",
"mode": "create"
}path の .md は省略できます。mode は次の3種類です。
create: 既存ノートがあれば失敗します。既定値です。overwrite: 既存ノートを置き換えます。append: 既存ノートの末尾に追記します。存在しなければ新規作成します。
上書き・追記中にOneDrive上のノートが変更された場合は競合エラーを返します。内容を読み直してから、再度実行してください。
read_markdown
{ "path": "Inbox/new-idea.md" }list_markdown
{
"folder": "Inbox",
"recursive": true,
"limit": 100
}stdio モード
同じマシン上でMCPクライアントから子プロセスとして起動する場合に利用できます。ただし、この方式はそのマシンが起動している時だけ動作します。
npm run build
npm run start:stdio開発
npm install
npm run typecheck
npm test
npm run buildセキュリティ上の注意
.env、クライアントシークレット、tokens.jsonをGitへ追加しないでください。MCP_API_KEYは長いランダム値にし、漏えい時は交換してください。MCP_ALLOWED_HOSTSには実際に使うホスト名だけを指定してください。ブラウザから接続する場合だけ
MCP_ALLOWED_ORIGINSに許可するOriginのホスト名を指定してください。本番環境ではHTTPSを使い、MCPサーバーを直接平文でインターネットへ公開しないでください。
サーバーは設定されたVault配下のMarkdownだけを扱いますが、Microsoft Graph側の権限も可能な限り小さくしてください。
References
License
English summary: this is a remote-capable MCP server that writes Markdown directly to an Obsidian vault in OneDrive through Microsoft Graph. The Obsidian machine does not need to remain powered on; it receives changes later through normal OneDrive sync.
This server cannot be installed
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
- AlicenseBqualityCmaintenanceLocal-first MCP server for Obsidian vaults with 66 tools for reading, writing, searching, and managing notes, tasks, graphs, and more. Works without Obsidian running and requires no plugins.66MIT
- Alicense-qualityCmaintenanceMCP server that provides read and write access to an Obsidian vault by interacting directly with markdown files on disk. Supports searching, listing, reading, creating, editing, and appending notes without requiring any Obsidian plugins.3,697ISC
- Flicense-qualityBmaintenanceMCP server that exposes an Obsidian vault (search, read, create, and update notes) via Streamable HTTP.
- Alicense-qualityCmaintenanceMCP server for interacting with Obsidian via the Local REST API, enabling file operations, search, and content editing in your vault.MIT
Related MCP Connectors
Markdown-first MCP server for Notion API with 8 composite tools and 39 actions.
Person-owned, portable AI memory as a remote MCP server, readable and writable by any MCP client.
MCP-native open-source Notion alternative: read & write pages, databases and kanban boards.
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/sugasaki/obsidian-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server