インストール不要。2分以内に動きます。
cloud.anythingmcp.com で無料トライアルを開始し、OneNote (Microsoft 365) をワンクリックで追加して、AI クライアント(Claude、ChatGPT、Copilot、Cursor)を生成された MCP エンドポイントに向けるだけ。Docker も git clone も、開発経験も不要です。
概要
AI に OneNote で作業させます。ノートブック、セクション、ページの閲覧、ページの読み取り、ノートブック、セクション、ページの作成、既存のページへのメモの追記ができます。職場または学校向けの OneNote と個人用 OneNote に Microsoft Graph 経由で対応し、Microsoft アカウントでサインインします。
こう聞いてみよう
OneNote (Microsoft 365) のサンプルプロンプト
プロンプトをクリックでコピー。Claude / ChatGPT / Cursor / Gemini / Copilot / OpenClaw に貼り付けて、このコネクターで実行できます。
Claude は AI のため誤ることがあります。回答をご確認ください。
💡 インストール不要? cloud.anythingmcp.com を直接利用してください。 サインインし、Connectors → OneNote (Microsoft 365) をクリック、認証情報を貼り付け、MCP API キーを発行すれば完了です。Docker も
git cloneもローカルサーバーも不要。
Microsoft OneNote
AI に OneNote で作業させます。ノートブック、セクション、ページの閲覧、ページの読み取り、ノートブック、セクション、ページの作成、既存のページへのメモの追記ができます。職場または学校向けの OneNote と個人用 OneNote に Microsoft Graph 経由で対応し、Microsoft アカウントでサインインします。
セットアップ
-
Microsoft Entra 管理センター(entra.microsoft.com)または Azure portal を開き、Applications → App registrations → New registration に進みます。
-
アプリに名前を付け(例: 「AnythingMCP Microsoft 365」)、Supported account types を選びます。この選択によって
MICROSOFT_TENANT_IDに入れる値が決まります。- Accounts in this organizational directory only(シングルテナント): 自組織のユーザーだけがサインインできます。アプリの Overview ページにある Directory (tenant) ID(GUID)か、
contoso.onmicrosoft.comのようなドメインを入れます。 - Accounts in any organizational directory(マルチテナント):
organizationsを入れます。 - Accounts in any organizational directory and personal Microsoft accounts:
common(職場・学校アカウントと個人用アカウント)またはconsumers(個人用アカウントのみ)を入れます。
値がアカウントの種類と一致しないと、Microsoft はサインインを拒否します(AADSTS50194 または AADSTS50020)。
- Accounts in this organizational directory only(シングルテナント): 自組織のユーザーだけがサインインできます。アプリの Overview ページにある Directory (tenant) ID(GUID)か、
-
Redirect URI でプラットフォーム Web を選び、
https://cloud.anythingmcp.com/api/mcp-oauth/callbackを入力します。AnythingMCP をセルフホストしている場合は、代わりにhttps://your-anythingmcp-host/api/mcp-oauth/callbackを入力します。URI は 1 文字単位で一致している必要があり、一致しないと Microsoft は AADSTS50011 を返します。 -
API permissions → Add a permission → Microsoft Graph → Delegated permissions を開き、
offline_access、User.Read、Notes.ReadWriteを追加します。offline_accessがあることで Microsoft はリフレッシュトークンを発行します。これがないと、コネクターは承認から 1 時間後に動かなくなります。 -
Certificates & secrets → New client secret を開きます。Secret ID ではなく、シークレットの Value をコピーします。表示されるのは一度だけです。有効期限を控えておいてください。期限が切れると、新しいシークレットを作成して入力し直すまでコネクターは動作しません。
-
Overview ページの Application (client) ID を
MICROSOFT_CLIENT_IDに、シークレットの値をMICROSOFT_CLIENT_SECRETに、手順 2 のテナントの値をMICROSOFT_TENANT_IDに入力し、コネクターをインストールします。 -
コネクターのページで Authorize with Provider をクリックし、AI に扱わせたいノートブックがあるアカウントでサインインします。リフレッシュトークンは暗号化して保存され、アクセストークン(有効期間は約 1 時間)は自動で更新されます。
-
まず
microsoft_onenote_list_notebooksを実行します。コネクターが開けるノートブックと、それぞれでのあなたの役割(所有者、共同作成者、閲覧者)を確認できます。
すべての Microsoft コネクターに 1 つの Entra アプリ: Outlook、OneDrive、SharePoint、Excel のコネクター用に作成したアプリの登録は、ここでもそのまま使えます。登録を開いて API permissions で手順 4 のアクセス許可を追加し、リダイレクト URI はそのままで、同じクライアント ID、シークレット、テナントを使い回してください。各コネクターは、承認時に自分に必要なアクセス許可だけを求めます。
- Outlook:
Mail.ReadWrite、Mail.Send、Calendars.ReadWrite - OneDrive:
Files.ReadWrite - Excel:
Files.ReadWrite(SharePoint 内のブックや共有されたブックにはFiles.ReadWrite.Allも必要) - SharePoint:
Sites.ReadWrite.AllとFiles.ReadWrite.All - OneNote:
Notes.ReadWrite - Microsoft To Do:
Tasks.ReadWrite - Planner:
Tasks.ReadWrite
どのコネクターにも offline_access と User.Read が必要です。
管理者の同意: これらの委任されたアクセス許可には通常は管理者は不要ですが、多くの組織ではユーザーによる同意が無効になっています。サインイン時に「Need admin approval」(AADSTS65001 または AADSTS90094)と表示された場合は、テナント管理者がアプリの登録を一度開き、API permissions → Grant admin consent で組織全体に同意を付与します。その後は各ユーザーが承認できます。それでも各コネクターが扱えるのは、サインインしたアカウントが見られる範囲だけです。
共有されたノートブック: Notes.ReadWrite で扱えるのは自分のノートブックです。同僚から共有されたノートブック(職場または学校アカウント)で作業するには、アプリの登録に Notes.ReadWrite.All を追加し、コネクターの OAuth 設定で Notes.ReadWrite をそれに置き換えて、もう一度承認します。
読み取り専用の設定: コネクターの OAuth 設定でスコープを offline_access User.Read Notes.Read に置き換えて再度承認し、microsoft_onenote_create_notebook、microsoft_onenote_create_section、microsoft_onenote_create_page、microsoft_onenote_append_to_page、microsoft_onenote_update_page を無効にします。
変更はあなたの承認を待ちます: ノートブック、セクション、ページを作成する前やページを変更する前に、AI は何をどこに書き込むかを伝え、あなたの「はい」を待ちます。
インストール時はオフ: microsoft_onenote_delete_page。コネクターは削除を元に戻せないため、AI に本当にページを削除させる場合だけオンにしてください。
ページの検索と読み取り: ノートブックにはセクションがあり(セクショングループでまとめることもできます)、各セクションにページがあります。AI はページのタイトルを検索し、最終更新日で絞り込めますが、Microsoft Graph はページ本文の検索には対応していないため、AI は該当しそうなページを開いて読みます。ページ内の画像はあなたのサインインでしか開けず、手書きのインクは含まれません。非常に長いページは約 200 KB で切り詰められます。OneNote のアイテムが非常に多い場合、すべてのノートブックにまたがるページ一覧がエラー 10008 で失敗することがあります。その場合、AI はセクションごとに確認します。
ページの書き込み: 新しいページでは、見出し、箇条書き、表、リンク、To Do のチェックボックス、公開 Web アドレスの画像といったシンプルな書式が使えます。ページの末尾にメモを追加するには microsoft_onenote_append_to_page が最も簡単です。新しいページは、OneNote が変更を受け付けるまでに数秒かかります。作成直後の追記に 404 が返った場合、AI は少し待ってから再試行します。
よくあるエラー: 401 InvalidAuthenticationToken は、承認が取り消されたかクライアントシークレットの期限が切れたことを示します。必要に応じて新しいシークレットを入力し、もう一度 Authorize with Provider をクリックします。403(コード 40004 または 40002)は、Notes.ReadWrite が不足しているか同意されていないこと、またはノートブックが閲覧のみで共有されていることを示します。404(またはコード 20102、20112)は、ID が間違っているかアイテムが削除されたことを示します。20117 は、同じ名前のノートブックやセクションがすでにあることを示します。20115、20153、20155 は、名前に使えない文字が含まれているか長すぎること(ノートブックは 128 文字、セクションは 50 文字まで)を示します。30105 または 30108 は、OneDrive for Business がまだセットアップされていないことを示します。OneDrive を一度開くか、管理者にライセンスを確認してもらってください。429 は、Microsoft Graph がアカウントのリクエストを制限していることを示します。少し待ってから再試行してください。
このコネクターは、ページへの画像やファイルのアップロード、インクの扱い、ページやセクションのコピー、Microsoft 365 グループや SharePoint サイトのノートブックを開くことはできません。
前提条件: MICROSOFT_CLIENT_ID, MICROSOFT_CLIENT_SECRET, MICROSOFT_TENANT_ID
ローカルでコネクタをインストール
curl -fsSL https://raw.githubusercontent.com/HelpCode-ai/anythingmcp/main/docker-compose.quickstart.yml -o docker-compose.yml
printf 'JWT_SECRET=%s\nENCRYPTION_KEY=%s\n' "$(openssl rand -hex 32)" "$(openssl rand -hex 32)" > .env
docker compose up -d
http://localhost:3000/connectors/store を開き、 OneNote (Microsoft 365) を選択し、前提条件に記載された環境変数を入力します。
利用可能なツール
| Tool | What it does |
|---|---|
microsoft_onenote_list_notebooks | List the OneNote notebooks the user can open: id, displayName, isDefault, isShared, userRole (Owner, Contributor, Reader), dates and links… |
microsoft_onenote_list_sections | List all sections in all of the user's notebooks, including sections inside section groups |
microsoft_onenote_list_notebook_sections | List the sections directly inside one notebook (not those inside its section groups; see microsoft_onenote_list_notebook_section_groups) |
microsoft_onenote_list_section_groups | List all section groups (folders of sections) in the user's notebooks, including nested ones |
microsoft_onenote_list_notebook_section_groups | List the section groups directly inside one notebook: id, displayName, dates and links |
microsoft_onenote_list_section_group_sections | List the sections directly inside one section group: id, displayName, isDefault, dates and links |
microsoft_onenote_list_pages | List pages across all of the user's notebooks, most recently changed first: id, title, createdDateTime, lastModifiedDateTime, links… |
microsoft_onenote_list_section_pages | List the pages of one section: id, title, dates, links |
microsoft_onenote_get_page | Get one page's metadata: title, dates, links, contentUrl, and the parentSection and parentNotebook it belongs to |
microsoft_onenote_get_page_content | Read a page: OneNote returns the page as HTML (title in <title>, text in <p>, <li>, <table> elements inside absolutely positioned <div>s… |
microsoft_onenote_create_notebook | Create a new notebook in the user's OneDrive |
microsoft_onenote_create_section | Create a section in a notebook |
microsoft_onenote_create_page | Create a page in a section from a title and HTML content |
microsoft_onenote_append_to_page | Add HTML at the end of a page (inside its first div), e.g. "<p>Follow-up: call Anna on Friday</p>" |
microsoft_onenote_update_page | Change a page with a list of commands, each {target, action, position?, content}. target: "title" (only action replace, content = new title… |
microsoft_onenote_delete_page | Delete a page |
プロンプトの例
- 「OneNote のノートブックの一覧と、『仕事』ノートブックにあるセクションを教えて。」
- 「先月更新したページのうち、タイトルに『予算』が入っているものを探して、内容を要約して。」
- 「『会議』セクションに『Acme キックオフ』というページを作って、このメモを入れて、対応事項ごとに To Do のチェックボックスを付けて。」
- 「『仕入先との電話』ページに『金曜日に納期の件でアンナさんに再確認』と追記して。」
次のステップ
このガイドは役に立ちましたか?