Skip to main content
Glama

note.com MCP Server

note.comのAPIを利用して、Claude Desktop、Claude Code、Cursor、n8nなどのMCPクライアントから記事の検索・投稿・分析ができるMCPサーバーです。

stdio(ローカル)とHTTP(リモート)の両方のトランスポートに対応しています。


🚀 クイックスタート

1. インストール

git clone https://github.com/shimayuz/note-com-mcp.git
cd note-com-mcp
npm install
npx playwright install chromium  # ブラウザ自動ログイン用
npm run build

2. 認証設定

cp .env.sample .env

.env を編集:

NOTE_EMAIL=your-email@example.com
NOTE_PASSWORD=your-password
NOTE_USER_ID=your_note_user_id

起動時にPlaywrightが自動でheadlessログインを行い、セッションCookieを取得・更新します。手動でCookieを設定する必要はありません。

セキュリティ: .envファイルは.gitignoreに含まれているため、リポジトリにコミットされません。

3. 起動

stdioモード(Claude Desktop / Claude Code / Cursor):

npm run start

HTTPモード(n8n / リモート接続):

npm run start:http
# デフォルトポートは3000。変更する場合:
MCP_HTTP_PORT=3001 node build/note-mcp-server.js

🔌 トランスポート

stdioモード(デフォルト)

ローカルのMCPクライアントから直接起動される標準的な接続方式です。

node build/note-mcp-server.js

HTTPモード

リモートクライアントやn8nから接続するためのHTTPベースの接続方式です。MCP_HTTP_PORT環境変数または--httpフラグで有効化されます。

# 環境変数で指定
MCP_HTTP_PORT=3000 node build/note-mcp-server.js

# CLIフラグで指定(ポートはMCP_HTTP_PORTまたはデフォルト3000)
node build/note-mcp-server.js --http

エンドポイント

メソッド

説明

/mcp

POST

MCP JSON-RPCリクエスト

/mcp

GET

SSEストリーム

/mcp

DELETE

セッション終了

/health

GET

ヘルスチェック

デフォルトのバインドアドレスは127.0.0.1です。MCP_HTTP_HOST環境変数で変更できます。

✨ 主な機能

カテゴリ

機能

認証

🔍 検索

記事検索、ユーザー検索、ハッシュタグ検索

不要

📊 分析

記事分析、エンゲージメント分析

不要

✍️ 投稿

下書き作成、画像付き投稿

必須

🖼️ 画像

画像アップロード、アイキャッチ設定

必須

💬 コメント

コメント投稿、スキ機能

必須

📈 統計

PV数、アクセス解析

必須

📋 利用可能なツール

検索・分析(認証不要)

  • search-notes - 記事検索(新着/人気/急上昇)

  • search-all - note全体検索

  • analyze-notes - 記事詳細分析

  • get-note - 記事詳細取得

  • search-users - ユーザー検索

  • get-user - ユーザー情報取得

  • get-user-notes - ユーザーの記事一覧

  • search-magazines - マガジン検索

  • get-magazine - マガジン詳細

  • get-category-notes - カテゴリー別記事一覧

  • list-categories - カテゴリー一覧

  • list-hashtags - ハッシュタグ一覧

  • get-hashtag - ハッシュタグ詳細

  • get-comments - コメント一覧

  • get-likes - スキ一覧

  • list-contests - コンテスト一覧

投稿・編集(認証必須)

  • post-draft-note - 下書き作成(Markdown自動変換)

  • get-my-notes - 自分の記事一覧(下書き含む)

  • open-note-editor - 記事の編集ページを開く

インタラクション(認証必須)

  • post-comment - コメント投稿

  • like-note / unlike-note - スキ機能

  • add-magazine-note / remove-magazine-note - マガジン管理

  • get-stats - PV統計情報

  • get-notice-counts - 通知件数

  • get-search-history - 検索履歴

メンバーシップ(認証必須)

  • get-membership-summaries - 加入済みメンバーシップ一覧

  • get-membership-plans - メンバーシッププラン一覧

  • get-membership-notes - メンバーシップの記事一覧

  • get-circle-info - サークル情報

🔧 設定方法

Claude Desktop

~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "note-api": {
      "command": "node",
      "args": ["/path/to/note-com-mcp/build/note-mcp-server.js"],
      "env": {
        "NOTE_EMAIL": "your_email@example.com",
        "NOTE_PASSWORD": "your_password",
        "NOTE_USER_ID": "your_note_user_id"
      }
    }
  }
}

Claude Code

~/.claude/settings.jsonmcpServers に追加:

{
  "mcpServers": {
    "note-api": {
      "command": "node",
      "args": ["/path/to/note-com-mcp/build/note-mcp-server.js"],
      "cwd": "/path/to/note-com-mcp",
      "env": {
        "NOTE_EMAIL": "your_email@example.com",
        "NOTE_PASSWORD": "your_password",
        "NOTE_USER_ID": "your_note_user_id"
      }
    }
  }
}

Cursor

~/.cursor/mcp.json:

{
  "mcpServers": {
    "note-api": {
      "command": "node",
      "args": ["/path/to/note-com-mcp/build/note-mcp-server.js"],
      "env": {
        "NOTE_EMAIL": "your_email@example.com",
        "NOTE_PASSWORD": "your_password",
        "NOTE_USER_ID": "your_note_user_id"
      }
    }
  }
}

Windsurf

~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "note-api": {
      "command": "node",
      "args": ["/path/to/note-com-mcp/build/note-mcp-server.js"],
      "env": {
        "NOTE_EMAIL": "your_email@example.com",
        "NOTE_PASSWORD": "your_password",
        "NOTE_USER_ID": "your_note_user_id"
      }
    }
  }
}

/path/to/note-com-mcp は実際のプロジェクトの絶対パスに置き換えてください。

n8n(HTTP経由)

  1. HTTPサーバーを起動:

npm run start:http
  1. n8nで「MCP Client HTTP Streamable」ノードを設定:

HTTP Stream URL: http://127.0.0.1:3000/mcp
HTTP Connection Timeout: 60000

🌐 リモートアクセス(Cloudflare Tunnel)

VPSでn8nを使用する場合、Cloudflare Tunnelで安全に接続できます:

# 1. Cloudflare Tunnelを設定
cloudflared tunnel run note-mcp

# 2. n8nでHTTPS URLを設定
# HTTPS Stream URL: https://your-domain.com/mcp

🔐 認証フロー

起動時に以下の順序で認証情報を取得します:

  1. NOTE_EMAIL / NOTE_PASSWORD が設定されている場合、Playwrightでheadlessログインを実行し、最新のセッションCookieを自動取得

  2. Playwright失敗時は .env の既存Cookie情報にフォールバック

  3. どちらもない場合はPlaywrightがブラウザを開き、手動ログインを求める

セッションCookieは自動で.envに永続化されるため、次回起動時にも利用可能です。

📝 Markdown変換ルール

投稿時のMarkdownは自動的にnote.com用HTMLに変換されます。

Markdown

note.com

HTML

# H1 / ## H2

大見出し

<h2>

### H3

小見出し

<h3>

#### H4-H6

太字

<strong>

![[image.png]]

画像

<figure><img>

- リスト

箇条書き

<ul><li>

💡 使い方の例

記事検索(認証不要)

noteで「プログラミング」に関する人気記事を検索して

画像付き投稿(認証必須)

タイトル「技術メモ」、本文「## 概要\n\n![[screenshot.png]]」で下書きを作成して

記事分析(認証不要)

ユーザー「username」の記事を分析して、人気の要因を教えて

⚠️ 注意点

  • 投稿機能: 下書き作成のみ対応です。公開はnote.comから直接行ってください

  • 画像: サポート形式はPNG、JPEG、GIFです(最大10MB)

  • 検索結果: 最大20件まで取得できます

  • 認証: セッションCookieは約1~2週間で期限切れになりますが、メール/パスワード設定済みなら自動更新されます

🛠️ 開発

# ビルド
npm run build

# 開発モード(ファイル監視)
npm run dev:watch

# HTTPサーバー開発
npm run dev:http

📄 ライセンス

MIT License

Install Server
A
security – no known vulnerabilities
F
license - not found
A
quality - confirmed to work

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

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/shimayuz/note-com-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server