note.com MCP Server
The note.com MCP Server provides comprehensive access to note.com's API through Claude Desktop, Cursor, n8n, and similar clients, enabling search, analysis, and content management both with and without authentication.
Search and Discovery (No Authentication Required):
Search articles, users, magazines, and hashtags with customizable parameters including sorting (new/popular/trending) and pagination
Perform unified searches across notes, users, and hashtags
Analyze articles with detailed competitive analysis, content characteristics, and author information
Retrieve specific article, user, magazine, and hashtag details
Browse categories and get articles by category
Access lists of categories, hashtags, contests, and search history
Content Management (Authentication Required):
Create draft articles with titles, body text, and tags (up to 10 tags), with automatic Markdown to HTML conversion
Upload single or multiple images (PNG, JPEG, GIF up to 10MB)
Retrieve and manage your articles, including drafts and published notes with status filtering
Add or remove articles from magazines
Open the note editor for existing articles
Social Interactions (Authentication Required):
Post comments and view comments on articles
Like/unlike articles and retrieve like counts
Analytics and Statistics (Authentication Required):
Access PV (Page View) statistics and dashboard analytics with sorting and filtering options
Track engagement metrics and notification counts
Membership Features (Authentication Required):
View membership summaries, plans, and associated articles
Access circle information and membership content
Integration and Setup:
Configure locally with Claude Desktop, Cursor, or Windsurf via JSON configuration
Run as HTTP server for remote access with n8n, with support for Cloudflare Tunnel
Install via npm with environment variables for authentication (email, password, or session cookies)
Key Limitations:
Posts are created as drafts only; publishing requires manual action on note.com
Search results capped at 20 items
Session cookies valid for 1–2 weeks, requiring periodic reconfiguration
Enables secure remote access to the MCP server using Cloudflare Tunnel, allowing connections from remote services like n8n while keeping authentication credentials local
Provides HTTP/SSE transport integration for workflow automation, enabling remote access to note.com functionality through n8n's MCP Client HTTP Streamable node
Supports integration with ChatGPT and OpenAI Responses API through HTTP/SSE transport, allowing AI agents to access note.com article search, user information, and content management capabilities
Click on "Deploy 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., "@note.com MCP Server search for popular articles about AI programming"
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.
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 build2. 認証設定
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 startHTTPモード(n8n / リモート接続):
npm run start:http
# デフォルトポートは3000。変更する場合:
MCP_HTTP_PORT=3001 node build/note-mcp-server.jsRelated MCP server: Note Post MCP
🔌 トランスポート
stdioモード(デフォルト)
ローカルのMCPクライアントから直接起動される標準的な接続方式です。
node build/note-mcp-server.jsHTTPモード
リモートクライアントや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エンドポイント | メソッド | 説明 |
| POST | MCP JSON-RPCリクエスト |
| GET | SSEストリーム |
| DELETE | セッション終了 |
| 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.json の mcpServers に追加:
{
"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経由)
HTTPサーバーを起動:
npm run start:httpn8nで「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🔐 認証フロー
起動時に以下の順序で認証情報を取得します:
NOTE_EMAIL/NOTE_PASSWORDが設定されている場合、Playwrightでheadlessログインを実行し、最新のセッションCookieを自動取得Playwright失敗時は
.envの既存Cookie情報にフォールバックどちらもない場合はPlaywrightがブラウザを開き、手動ログインを求める
セッションCookieは自動で.envに永続化されるため、次回起動時にも利用可能です。
📝 Markdown変換ルール
投稿時のMarkdownは自動的にnote.com用HTMLに変換されます。
Markdown | note.com | HTML |
| 大見出し |
|
| 小見出し |
|
| 太字 |
|
| 画像 |
|
| 箇条書き |
|
💡 使い方の例
記事検索(認証不要)
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
Available Tools
33 toolsadd-magazine-noteC
マガジンに記事を追加する
Inputs: magazineId (required), noteId (required).
analyze-notesC
記事の詳細分析を行う(競合分析やコンテンツ成果の比較等)
Inputs: query (required), size, start, sort, +5 more.
get-category-notesC
カテゴリーに含まれる記事一覧を取得する
Inputs: category (required), page, sort.
get-circle-infoC
サークル情報を取得する
Inputs: no named parameters.
get-commentsC
記事へのコメント一覧を取得する
Inputs: noteId (required).
get-hashtagC
ハッシュタグの詳細を取得する
Inputs: tag (required).
get-likesC
記事のスキ一覧を取得する
Inputs: noteId (required).
get-magazineC
マガジンの詳細情報を取得する
Inputs: magazineId (required).
get-membership-notesC
メンバーシップの記事一覧を取得する
Inputs: membershipKey (required), page, perPage.
get-membership-plansB
自分のメンバーシッププラン一覧を取得する
Inputs: no named parameters.
get-membership-summariesC
加入済みメンバーシップ一覧を取得する
Inputs: no named parameters.
get-my-notesC
自分の記事一覧(下書きを含む)を取得する
Inputs: page, perPage, status.
get-noteC
記事の詳細情報を取得する
Inputs: noteId (required).
get-notice-countsC
通知件数を取得する
Inputs: no named parameters.
get-search-historyC
検索履歴を取得する
Inputs: no named parameters.
get-statsC
ダッシュボードのPV統計情報を取得する
Inputs: filter, page, sort.
get-test-membership-notesB
テスト用:メンバーシップの記事一覧をダミーデータで取得する
Inputs: membershipKey (required), page, perPage.
get-test-membership-summariesA
テスト用:加入済みメンバーシップ一覧をダミーデータで取得する
Inputs: no named parameters.
get-userC
ユーザーの詳細情報を取得する
Inputs: username (required).
get-user-notesC
ユーザーの記事一覧を取得する
Inputs: username (required), page.
like-noteC
記事にスキをする
Inputs: noteId (required).
list-categoriesB
カテゴリー一覧を取得する
Inputs: no named parameters.
list-contestsB
コンテスト一覧を取得する
Inputs: no named parameters.
list-hashtagsB
ハッシュタグ一覧を取得する
Inputs: no named parameters.
open-note-editorC
記事の編集ページを開く
Inputs: noteId (required).
post-commentC
記事にコメントを投稿する
Inputs: noteId (required), text (required).
post-draft-noteC
下書き状態の記事を投稿する(Markdown形式の本文を自動でHTMLに変換)
Inputs: title (required), body (required), tags, id.
remove-magazine-noteC
マガジンから記事を削除する
Inputs: magazineId (required), noteId (required).
search-allC
note全体検索(ユーザー、ハッシュタグ、記事など)
Inputs: query (required), context, mode, size, +1 more.
search-magazinesC
マガジンを検索する
Inputs: query (required), size, start.
search-notesC
記事を検索する
Inputs: query (required), size, start, sort.
search-usersC
ユーザーを検索する
Inputs: query (required), size, start.
unlike-noteC
記事のスキを削除する
Inputs: noteId (required).
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 33 tools
Most tools have distinct purposes targeting specific resources and actions, such as 'get-note' for article details versus 'get-user-notes' for user articles. However, some overlap exists, like 'search-notes' and 'search-all' which might cause confusion, and 'get-membership-notes' versus 'get-test-membership-notes' are similar but differentiated by test data. Overall, descriptions help clarify boundaries, but minor ambiguities remain.
The tools follow a consistent kebab-case pattern throughout, with clear verb-noun structures like 'get-note', 'post-comment', and 'search-users'. There are minor deviations, such as 'analyze-notes' using a verb that doesn't align with the common 'get' or 'list' patterns, and 'open-note-editor' being more specific. The naming is mostly predictable and readable, supporting easy identification.
With 33 tools, the count is borderline high for a note-taking or content platform server, as it includes many specific retrieval and search functions. While the scope covers articles, users, magazines, and memberships comprehensively, the number feels heavy and could overwhelm agents. It's reasonable but leans toward being over-scoped, especially with test tools that might not be necessary in production.
The tool set provides complete coverage for the note.com domain, including CRUD operations for articles (e.g., 'post-draft-note', 'get-note'), social interactions ('like-note', 'post-comment'), and management features for magazines, memberships, and categories. There are no obvious gaps; agents can perform full workflows from creation to analysis and interaction without dead ends.
Maintenance
Related MCP Connectors
Search and read your own notes: insights, drafts, book and podcast notes. Read-only, OAuth.
Create, search and manage Knowtis collaborative notes from AI assistants.
AI access to your aNotepad online notes: read, search, write, and organize via 22 tools.
Read and write the notes and folders of your Grape account, the AI note-taking app.
Related MCP Servers
- AlicenseBqualityCmaintenanceEnables integration with Kibela API for searching and retrieving notes, allowing LLMs to interact with Kibela content seamlessly.1296 npm7MIT
- AlicenseBqualityDmaintenanceEnables automated publishing and draft saving to note.com platform using Playwright automation. Reads Markdown files with titles, body text, and tags to publish content directly to your note.com account.225 npm58MIT
- AlicenseBqualityDmaintenanceEnables interaction with Qiita, a Japanese developer community platform, through its API v2. Supports comprehensive operations including article management, user interactions, tag following, and commenting with Japanese language support.3011 npm1MIT
- AlicenseNot gradedqualityFmaintenanceEnables interaction with SiYuan Note through its API for comprehensive note management. Supports searching, creating, editing documents, managing notebooks, and daily notes operations through natural language commands.31 npm15Apache 2.0