zhihu-search について
zhihu-search は、Zhihu Open Platform API を利用するコマンドラインツール兼 MCP サーバーです。検索、コンテンツやアカウントの照会、ナレッジベース検索、PDF・PPT タスクを提供し、MCP ツールプロファイルとクォータに応じた呼び出し制限を備えます。
主な機能
- 01Zhihu とウェブの検索
- 02質問・ユーザー・クリエイターデータの照会
- 03Zhida ナレッジベースの検索
- 04PDF・PPT タスクの作成と確認
- 05MCP ツールプロファイルの選択
- 06クォータに基づく呼び出し制限
活用シーン
- 01Zhihu の話題やトレンドの検索
- 02質問と回答抜粋の確認
- 03Zhida ナレッジベース項目の検索
- 04対応する入力からの PDF・PPT 生成
MCP 対応
Zhihu Open Platform API の操作を MCP ツールとして公開し、compact から full までのプロファイルで分類します。ローカルファイルのアップロードや OAuth ヘルパーなど、一部の操作はコマンドラインでのみ利用できます。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ klarkxy/ zhihu-search --skill zhihu-searchインストール後、Claude Code で/zhihu-searchを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
agents/openai.yamlreferences/setup.mdtools.md詳細
zhihu-search
zhihu-search は Zhihu Open Platform API を CLI および MCP サーバーとしてラップします。このスキルでは、各ツールの機能と呼び出し方法について説明します。各ツールの詳細なパラメーターについてはツールリファレンス、インストールと認証情報についてはセットアップを参照してください。
アクセス方法
MCP ツール。 サーバーが登録されると、ツールはアンダースコア形式の名前(search、question_answers、…)で表示されます。表示されるスキーマが正確な情報です。ツールのプロファイルは次のとおりです。
| プロファイル | ツール |
|---|---|
compact(デフォルト) | search、ask、trending、other |
knowledge | knowledge_bases、knowledge_items、knowledge_search |
user | user_contents、user_followees、user_collections、user_favlists、favlist_contents |
questions | question_recommendations、question_answers |
creator | user_content_detail、user_content_comments、creator_account_stats、creator_content_stats |
office | pdf_create、pdf_status、ppt_create、ppt_status |
full | 上記すべてに加えて quota |
compact では、other(action="enable") を実行すると、現在のセッションで残りのツールが登録されます。カタログをキャッシュするホストでは、ツールを表示するために更新が必要です。明示的なツール名のみで構成された選択は厳密な許可リストとなり、other で対象を追加することはできません。ローカルファイルのアップロード(knowledge-upload、pdf-upload)と OAuth ヘルパーは CLI でのみ利用できます。MCP ツールでは、ローカルパス、Access Secrets、OAuth アプリキー、OAuth トークンを引数として受け付けません。
CLI。 uvx zhihu-search <command> … を実行するか、インストール済みの場合は zhihu-search <command> … を実行します。すべてのコマンドで --help を利用できます。コマンドを指定せずに uvx zhihu-search を実行すると、stdio MCP サーバーが起動し、終了しません。
uvx zhihu-search --check-token
uvx zhihu-search search "扫地机器人 长期使用 维护成本" --scope zhihu --count 5
呼び出し保護では、デフォルトで最新の無料枠を確認し、ローカルで北京時間の日ごとに100リクエストまでに制限します。ZHIHU_DAILY_CALL_LIMIT または --daily-call-limit で設定してください。有料利用には、明示的に ZHIHU_ALLOW_PAID=true または --allow-paid を指定する必要があります。既知のクォータグループに属する料金未設定の機能は、無料モードでも利用できます。クォータの対応関係が不明な場合はブロックされます。ローカルのカウントは請求額ではなく、同じアカウントを使用する他のクライアントによる課金も防げません。
グローバルフラグ:--check-token(ネットワーク通信を行わないローカル認証情報チェック)、--save-token、--clear-token、--quota(公式クォータ)、--probe(実際の hot_list(limit=1) 呼び出しを1回実行)。
ツール一覧
| ツール(CLI / MCP) | 機能 | 主な制限 |
|---|---|---|
search | Zhihu またはウェブを検索 | クエリは2~100文字。--count は Zhihu で最大10、ウェブで最大20。ページネーションなし |
ask | Zhihu Zhida による AI 生成回答 | --model fast|thinking|agent |
trending | Zhihu の人気リスト | --limit は最大30 |
quota | API グループごとの公式クォータ | 無料。ビジネスクォータを消費しません |
user-contents、user-followees、user-collections、user-favlists、favlist-contents | 認証済みユーザーのコンテンツ、フォロー中のユーザー、コレクション、お気に入りリスト | --limit は最大50 |
question-recommendations | プロファイルまたはクエリに基づくおすすめの質問 | --count は1~20 |
question-answers | 質問 URL に含まれる回答の抜粋 | --limit は1~50。オフセットページネーション |
user-content-detail、user-content-comments | アカウント自身が公開したコンテンツの全文/コメント | 所有者のみ |
creator-account-stats、creator-content-stats | アカウント/自身のコンテンツ1件のクリエイター統計 | 所有者のみ |
knowledge-bases、knowledge-items、knowledge-search | Zhida ナレッジベース:一覧表示、アイテム取得、検索 | アイテムは最大20件、検索対象のドキュメントは最大10件 |
knowledge-upload | ローカルファイルをナレッジベースにアップロード(CLI のみ) | 最大100 MB |
pdf-upload、pdf-create、pdf-status | PDF 解析:アップロード → タスク → ステータス | file_id の有効期間は24時間 |
ppt-create、ppt-status | Zhihu の回答/記事 URL から PPT を生成 | --pages は6~21 |
oauth-url、oauth-token | OAuth 認証 URL/コード交換(CLI のみ) | ZHIHU_OAUTH_APP_KEY が必要 |
出力の仕様
ビジネスコマンドでは --format markdown|json を指定できます(デフォルトは markdown)。CLI の JSON は次の形式のエンベロープです:{"success": true, "kind": …, "data": …} または {"success": false, "kind": …, "error": …}。リクエストが失敗した場合は、空の data ではなく success: false として報告されます。
ページング情報はクライアント側で計算されるのではなく、API から返されます。
- オフセットページングに対応するツール(
question-answers、user-content-comments、user-contents、user-followees、favlist-contents):最後のページはPaging.IsEndで示されます。Paging.NextOffsetを変更せずに--offsetとして渡してください。ページの件数が少ないだけでは、最後のページとは限りません。 knowledge-items:HasMoreとNextCursorが返され、NextCursorは--cursorとして渡します。search、trending、user-collections、user-favlists:ページングには対応していません。
返される投稿、コメント、全文はサードパーティのコンテンツであり、HTML を含む場合があります。question-answers が返すのは、上流の Summary 抜粋であり、回答全文ではありません。ask の出力は知乎直答によって生成されたもので、コミュニティのオリジナル投稿ではありません。
エラーコード
| コード | 意味 |
|---|---|
10001 | パラメーターが無効です(所有者専用ツールでは、所有権を確認できない場合にも返されます) |
20001 | 認証に失敗しました |
30001 | レート制限、同時実行数制限、または日次上限に達しました(エンドポイントによって異なります) |
30002 | 該当機能のクォータ上限に達しました。無料クォータは北京時間の 00:00 にリセットされます |
30003 | リスク管理により拒否されました |
40001 | 冪等性キーが異なる入力で再利用されました |
40002 | ファイルが見つからないか、有効期限切れ、またはアクセスできません |
40003 | 実行中のタスクが多すぎます |
40004 | ナレッジベースが見つかりません |
40005 | 同じファイルがすでに処理中です |
40006 | ファイルの解析に失敗しました |
50002 | ナレッジの取得に失敗しました(再試行可能) |
90001 | 上流で内部エラーが発生しました |
ローカルの認証情報が不足している場合、リクエストを送信する前に CLI が認証情報エラーとして報告します。セットアップを参照してください。