Hatena Blog

An MCP server for interacting with the Hatena Blog service.

Hatena Blog MCP Server

Claude Desktop/Web版からはてなブログを検索できるMCP (Model Context Protocol) サーバーです。

機能

  • search_blog: キーワードで記事検索
  • get_recent_posts: 最新記事取得
  • get_post_by_url: URL指定で記事詳細取得

デプロイ

Vercelへのデプロイ

  1. Vercelアカウントでログイン
  2. このリポジトリをインポート
  3. 環境変数を設定:
    • BLOG_ID: はてなブログID(例: exampleexample.hatenablog.com
    • CACHE_DURATION: キャッシュ時間(秒、デフォルト: 300)

ローカル開発

npm install
npm run dev

使用方法

Claude Desktop設定

claude_desktop_config.jsonに以下を追加:

{
  "mcpServers": {
    "hatena-blog": {
      "command": "npx",
      "args": ["--yes", "@modelcontextprotocol/server-fetch"],
      "env": {
        "FETCH_BASE_URL": "https://your-project.vercel.app/api/mcp"
      }
    }
  }
}

API エンドポイント

POST https://your-project.vercel.app/api/mcp

リクエスト例

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "search_blog",
    "arguments": {
      "keyword": "技術",
      "limit": 5
    }
  }
}

ツール仕様

search_blog

キーワードでブログ記事を検索します。

パラメータ:

  • keyword (必須): 検索キーワード
  • limit (オプション): 取得件数(デフォルト: 10)

get_recent_posts

最新のブログ記事を取得します。

パラメータ:

  • limit (オプション): 取得件数(デフォルト: 10)

get_post_by_url

指定したURLの記事詳細を取得します。

パラメータ:

  • url (必須): 記事のURL

技術仕様

  • Node.js 18.x
  • xml2js: RSS/Atom フィード解析
  • Vercel Serverless Functions
  • メモリベースキャッシュ(5分間)
  • CORS対応

ライセンス

MIT

Serveurs connexes

NotebookLM Web Importer

Importez des pages web et des vidéos YouTube dans NotebookLM en un clic. Utilisé par plus de 200 000 utilisateurs.

Installer l'extension Chrome