ClaudeのModel Context Protocol (MCP) を使いたいのでローカルMCPサーバーを構築する手順-SQLite連携
o_wani
owani.net#stay.hungry
Notion公式のMCPサーバーがあるので、前回利用していた設定を今回の内容でアップデートします。
参考サイト:Notion公式MCPサーバを使ってどんなことができるか試してみた
https://dev.classmethod.jp/articles/notion-mcp-server-guide-with-claude-desktop/
Notion側のインテグレーションにアクセスします。
新しいインテグレーションを追加する。
登録により、MCP連携するための内部インテグレーションシークレットを取得します。例)「Notion-MCP-Server」というタイトルで追加します。
右上の「…」からメニューを開き、[接続]からさきほどインテグレーションの追加を行った「Notion-MCP-Server」を選択します。
「はい」を選択してNotionのページに接続させます。
/Users/
***
/Library/Application Support/Claude/claude_desktop_config.json
にnotionの設定を追加します。
ntn_********
:自身のnotionの[内部インテグレーションシークレット]
{
"mcpServers": {
"notionApi": {
"command": "npx",
"args": ["-y", "@notionhq/notion-mcp-server"],
"env": {
"OPENAPI_MCP_HEADERS": "{\"Authorization\": \"Bearer ntn_********\", \"Notion-Version\": \"2022-06-28\" }"
}
}
}
}
上記で設定は完了し、この時点でClaude Desktopを再起動し、エラーが出ていなければOKです。
上記で私の環境はエラーが発生していた。nodebrewを使用していると発生するようです。
env: node: No such file or directory
問題の原因 Node.jsはインストールされているが、Claude Desktopがnodeコマンドを見つけられない状態ということです。環境変数PATHの問題です。
そのため下記のように修正して問題を解決したので書いておきます。
{
"mcpServers": {
"notionApi": {
"command": "/bin/bash",
"args": ["-c", "export PATH=/Users/***/.nodebrew/current/bin:$PATH && npx -y @notionhq/notion-mcp-server"],
"env": {
"OPENAPI_MCP_HEADERS": "{\"Authorization\": \"Bearer ntn_********\", \"Notion-Version\": \"2022-06-28\" }"
}
}
}
}