Code of Paper について
Code of Paperは、arXiv論文とそのGitHub実装を探すコマンドラインツールで、任意でMCPサーバーも利用できます。研究者やAIエージェント向けに、論文探索、一括処理、機械可読な出力を提供します。現在はメンテナンスモードです。
主な機能
- 01arXiv論文の検索と閲覧
- 02順位付きGitHub実装の検索
- 03類似論文やトレンド論文の探索
- 04クエリの一括処理と結果のエクスポート
- 05JSON、JSONL、CSV、BibTeX出力
活用シーン
- 01特定テーマでコード付き論文を探す
- 02arXiv論文の実装リポジトリを特定する
- 03学会論文やトレンド論文の一覧を出力する
- 04AIエージェントに論文・コード検索を提供する
MCP 対応
任意のMCPサーバーが、論文検索、論文の実装検索、論文情報取得を読み取り専用ツールとして公開します。stdioで通信し、JSONを返します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
3掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| paper_id_or_url | string | はい |
詳細
Code of Paper CLI
メンテナンスモード。 この CLI と MCP サーバーは積極的に開発されていません。api.codeofpaper.com が稼働している限り、引き続き利用できますが、問題への回答はない場合があります。
ターミナルから、研究論文の GitHub 実装を見つけましょう。
arXiv の 18 万件以上の論文を検索し、GitHub 上のコードを見つけられます。人間にも AI エージェントにもお使いいただけます。
インストール
pip install codeofpaper
または、分離された環境にインストールするにはpipxを使用します。
pipx install codeofpaper
Python 3.10 以降が必要です。API キーは不要で、匿名で毎分 60 リクエストまで利用できます。
クイックスタート
# Search for papers
codeofpaper search "vision transformers"
# Get paper details (arXiv IDs or full URLs both work)
codeofpaper paper 2010.11929
codeofpaper paper https://arxiv.org/abs/2010.11929
# Find code implementations
codeofpaper code 1706.03762
# Browse trending papers with code
codeofpaper trending --has-code
# JSON output for scripts and agents
codeofpaper -o json trending | jq '.trending[] | {title, stars: .max_stars}'
# One-shot reproducibility context for an agent: paper + confident repos
# (with tier + framework + license) + fork-graph in a single JSON payload.
codeofpaper -o json paper 2010.11929 | jq '{title, repos: [.repos[] | {full_name, tier}], forks: [.fork_graph[] | .full_name]}'
# Literature review in one command
codeofpaper research "reinforcement learning" --depth deep
出力形式
サブコマンドの前に -o / --output を指定します。
codeofpaper -o json paper 2010.11929
codeofpaper -o quiet search "attention" | head -5
codeofpaper -o csv trending --has-code > papers.csv
| 形式 | フラグ | 用途 |
|---|---|---|
| テーブル | -o table | 人が読む場合(デフォルト) |
| JSON | -o json | スクリプト、jq パイプライン、レスポンスデータ全体 |
| Quiet | -o quiet | ID のみを 1 行に 1 つ出力。ほかのコマンドにパイプで渡せます |
| JSONL | -o jsonl | ストリーミング、ファイルへの追記、バッチ処理 |
| BibTeX | -o bibtex | 文献管理ツール、LaTeX の参考文献リスト |
| CSV | -o csv | スプレッドシート、pandas、データ分析 |
短縮形の -q は -o quiet と同じです。
codeofpaper -q search "transformers" | head -3
設定でデフォルトの形式を指定すれば、毎回 -o を指定する必要はありません。
codeofpaper auth setup # then edit ~/.config/codeofpaper/config.json
コマンド
論文の検索
| コマンド | 説明 | 例 |
|---|---|---|
search | 論文の全文検索 | codeofpaper search "vision transformers" --has-code |
paper | arXiv ID または URL による論文の詳細 | codeofpaper paper 2010.11929 |
code | 論文を実装した GitHub リポジトリ | codeofpaper code 1706.03762 |
similar | 意味的に類似した論文 | codeofpaper similar 2010.11929 |
suggest | オートコンプリート/クイック検索 | codeofpaper suggest "attention" |
random | ランダムに選ばれた注目論文 | codeofpaper random --quality high |
閲覧
| コマンド | 説明 | 例 |
|---|---|---|
trending | カテゴリ別のトレンド論文 | codeofpaper trending --category cs.CV --sort hot |
categories | カテゴリの一覧または詳細の取得 | codeofpaper categories cs.AI |
conferences | すべてのカンファレンスシリーズの一覧 | codeofpaper conferences |
conference | 特定のカンファレンスの論文 | codeofpaper conference neurips_2024 --has-code |
code-drops | 新しいコードが公開された最近のカンファレンス論文 | codeofpaper code-drops --days 7 |
repo | 逆引き:リポジトリ → 論文 | codeofpaper repo google-research/vision_transformer |
open | ブラウザーで論文またはリポジトリを開く | codeofpaper open 2010.11929 --code |
一括操作
| コマンド | 説明 | 例 |
|---|---|---|
research | 構造化されたリサーチ概要 | codeofpaper research "RL" --depth deep |
batch | stdin/ファイルから複数の ID を処理 | cat ids.txt | codeofpaper batch paper |
export | ページ分割による一括エクスポート | codeofpaper export trending -o csv > out.csv |
設定
| コマンド | 説明 | 例 |
|---|---|---|
auth | API キーを管理(setup/status/clear) | codeofpaper auth status |
status | API の稼働状況と統計を確認 | codeofpaper status |
コマンドの詳細
search
codeofpaper search "reinforcement learning" --sort has_code --has-code
codeofpaper search "GAN" --limit 20 --offset 10
オプション:--limit、--offset、--sort(関連度順、最近順、コードあり)、--has-code、--category。
research
研究トピックの概要を、複数のステップをオーケストレーションして作成します。
codeofpaper research "vision transformers" --depth deep
| 深度 | ステップ | API 呼び出し |
|---|---|---|
shallow | 検索のみ+研究分野の統計 | 1 |
medium | 検索+上位論文のリポジトリ(デフォルト) | ~6 |
deep | 検索+リポジトリ+1 位の論文に類似した論文 | ~8 |
batch
ファイルまたは stdin から複数のクエリや ID を処理します。-o に関係なく、常に JSONL を出力します。
# From a file
codeofpaper batch paper ids.txt
# From stdin
echo -e "2010.11929\n1706.03762" | codeofpaper batch paper
# Pipe from another command
codeofpaper -q similar 2010.11929 | codeofpaper batch code
対応コマンド:paper、search、code、similar、suggest。
各行につき、JSON オブジェクトを 1 つ出力します。
{"input": "2010.11929", "status": "ok", "data": {...}}
{"input": "9999.99999", "status": "error", "error": "Not found"}
オプション:--delay(呼び出し間の秒数。デフォルトは 0.5)。
export
トレンド、カンファレンス、または検索結果をページ分けして一括エクスポートします。
codeofpaper export trending --category cs.CV --has-code -o csv > cv.csv
codeofpaper export conference neurips_2024 --has-code -o bibtex > neurips.bib
codeofpaper export search "transformers" --max 500 -o jsonl > data.jsonl
結果を自動的にページ送りで取得します(1 ページあたり 100 件、遅延は 0.5 秒)。オプション:--max(デフォルトは 200)、--has-code、--category、--days。
エージェントとの連携
この CLI は AI エージェントが利用しやすいように設計されています。主な機能は次のとおりです。
安定した終了コード
エージェントはエラーメッセージを解析せずに、終了コードに基づいて処理を分岐できます。
| 終了コード | 意味 | エージェントのアクション |
|---|---|---|
| 0 | 成功 | stdout を解析 |
| 1 | 一般エラー | ログに記録して報告 |
| 2 | 接続エラー | 待機時間を増やしながら再試行 |
| 3 | 見つかりません(404) | スキップするか、別の ID を試行 |
| 4 | レート制限(429) | 待機して再試行 |
| 5 | 認証が必要(401/403) | codeofpaper auth setup を実行 |
機械可読な出力
# JSON for structured parsing
codeofpaper -o json paper 2010.11929 | jq '.title'
# Quiet mode for ID lists
codeofpaper -q search "attention" | head -5
# JSONL for streaming
codeofpaper -o jsonl trending --has-code | while read -r line; do
echo "$line" | jq -r '.arxiv_id'
done
HTTP キャッシュ
応答はディスク上に 30 分間キャッシュされるため(~/.cache/codeofpaper/http/)、繰り返しの呼び出しを即座に、追加コストなしで実行できます。
MCP サーバー(オプション)
Code of Paper には、論文やコードの検索機能を MCP 対応エージェント(Claude Desktop、Cursor、Continue、Cline、Zed など)向けのツールとして公開する、オプションの Model Context Protocol サーバーが付属しています。
mcp エクストラを指定してインストールします。
pip install 'codeofpaper[mcp]'
# or, with uv:
uv tool install 'codeofpaper[mcp]'
これにより、stdio 経由で MCP を使用する codeofpaper-mcp エントリーポイントが追加されます。
Claude Desktop への接続
~/Library/Application Support/Claude/claude_desktop_config.json(macOS)、%APPDATA%\Claude\claude_desktop_config.json(Windows)、または ~/.config/Claude/claude_desktop_config.json(Linux)に追加します。
{
"mcpServers": {
"codeofpaper": {
"command": "uvx",
"args": ["--from", "codeofpaper[mcp]", "codeofpaper-mcp"]
}
}
}
これにより、必要に応じてサーバーを取得して実行できます。グローバルインストールは不要です。すでにパッケージを pip install している場合は、コマンドを "codeofpaper-mcp" のみに置き換えて、args を削除できます。
Cursor/Continue/Cline への接続
ほとんどの MCP クライアントで同じ形式を使用できます。
{
"mcpServers": {
"codeofpaper": {
"command": "codeofpaper-mcp",
"env": {
"CODEOFPAPER_API_URL": "https://api.codeofpaper.com"
}
}
}
}
公開されるツール
| ツール | 用途 |
|---|---|
paper_lookup(paper_id_or_url) | 論文のメタデータと確信度が高いリポジトリ |
code_for_paper(paper_id_or_url, limit, include_possible) | 論文を実装する GitHub リポジトリを順位付けして表示 |
search_papers(query, limit, year, venue, has_code) | フィルター付きのフリーテキスト論文検索 |
すべてのツールは読み取り専用で、プレーンな JSON を返します。また、API エラーは例外をスローするのではなく {"error": "...", "status": N} として返すため、エージェントはどの場合も構造化された出力を受け取れます。
よくあるワークフロー
基本的な検索
# Find papers with code about a topic
codeofpaper search "reinforcement learning" --sort has_code --has-code
# Get the best repo for a specific paper
codeofpaper code 1706.03762
# Accepts arXiv URLs — no need to extract the ID
codeofpaper paper https://arxiv.org/abs/2010.11929
# Reverse lookup: what paper does this repo implement?
codeofpaper repo google-research/vision_transformer
# Open a paper in the browser, or jump straight to its code
codeofpaper open 2010.11929
codeofpaper open 2010.11929 --code
閲覧とモニタリング
# What's trending in computer vision?
codeofpaper trending --category cs.CV --sort hot
# Conference papers that just got new code
codeofpaper code-drops --days 7
# NeurIPS 2024 oral papers with code
codeofpaper conference neurips_2024 --track oral --has-code
# Daily monitoring: what's new in my field?
codeofpaper trending --category cs.CV --days 1 -o json >> ~/research/daily_cv.jsonl
組み合わせ可能なパイプライン
# Find implementations of a paper's related work
codeofpaper similar 2010.11929 -o quiet | codeofpaper batch code
# Batch process a reading list
cat reading_list.txt | codeofpaper batch paper > enriched.jsonl
# Cross-reference with GitHub CLI
codeofpaper code 1706.03762 -o quiet | head -1 | xargs gh repo view
# Export conference papers as BibTeX
codeofpaper export conference neurips_2024 --has-code -o bibtex > neurips2024_code.bib
# Bulk export a category for meta-analysis
codeofpaper export trending --category cs.CV --has-code --days 365 -o csv > cv_with_code.csv
複数ステップのスクリプト
# Find a paper → get top repo → clone it
REPO=$(codeofpaper search "attention is all you need" -o quiet | head -1 | \
xargs codeofpaper code -o json | jq -r '.top_repos[0].full_name')
gh repo clone "$REPO"
# Discover a random paper and explore its neighborhood
ID=$(codeofpaper random --quality high -o quiet)
codeofpaper paper "$ID"
codeofpaper similar "$ID"
codeofpaper code "$ID"
# Quick paper lookup in a script
ARXIV_ID="2010.11929"
TITLE=$(codeofpaper -o json paper "$ARXIV_ID" | jq -r '.title')
echo "Paper: $TITLE"
設定
設定は platformdirs を使用して JSON 形式で保存されます。
| OS | パス |
|---|---|
| Linux | ~/.config/codeofpaper/config.json |
| macOS | ~/Library/Application Support/codeofpaper/config.json |
| Windows | %APPDATA%\codeofpaper\config.json |
フィールド:
{
"api_url": "https://api.codeofpaper.com",
"api_key": null,
"default_format": "table",
"ca_bundle": null
}
設定ファイルは不要です。適切なデフォルト設定により、インストール後すぐにすべての機能を利用できます。
優先順位
オプションは次の順に解決されます(先にあるものが優先されます)。
- CLI フラグ(
--api-url、--api-key、--ca-bundle、-o) - 環境変数(
CODEOFPAPER_API_URL、CODEOFPAPER_API_KEY、CODEOFPAPER_CA_BUNDLE、CODEOFPAPER_OUTPUT、CODEOFPAPER_TIMEOUT) - 設定ファイル
- 組み込みのデフォルト値
企業プロキシ/カスタム TLS 証明書
TLS インスペクション(中間者攻撃)を行う企業プロキシを経由している場合、次のような SSL エラーが表示されます。
Cannot reach API: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: self-signed certificate in certificate chain
これを解決するには、企業の CA 証明書バンドル(PEM ファイル)を CLI に指定します。優先順位が高い順に、同等の方法が 3 つあります。
# 1. CLI flag (per-invocation)
codeofpaper --ca-bundle /path/to/corporate-ca.pem search "transformers"
# 2. Environment variable (per-session or in .bashrc/.zshrc)
export CODEOFPAPER_CA_BUNDLE=/path/to/corporate-ca.pem
# 3. Config file (permanent — set once, forget)
# Add to ~/.config/codeofpaper/config.json:
# {"ca_bundle": "/path/to/corporate-ca.pem"}
CA 証明書ファイルをお持ちでない場合は、IT 部門に問い合わせてください。
ヒント: 他のツール(pip、curl など)のために
SSL_CERT_FILEをすでに設定している場合、httpx はこの変数を自動的に参照するため、追加の設定は不要です。
エイリアス:cop
codeofpaper と cop はどちらもエントリーポイントとしてインストールされます。
cop search "transformers"
cop -o json trending | jq '.'
Note: システム上の別のツールと
copが競合する場合は、代わりにcodeofpaperを使用してください。
シェル補完
お使いのシェルにタブ補完をインストールします。
codeofpaper --install-completion
bash、zsh、fish、PowerShell に対応しています。インストール後、シェルを再起動するか、補完ファイルを source してください。
ヘルプ
codeofpaper --help # List all commands
codeofpaper search --help # Help for a specific command
codeofpaper -v # Print version
リンク
- ウェブサイト: https://codeofpaper.com
- API ドキュメント: https://api.codeofpaper.com/docs
- エージェントの検出: https://codeofpaper.com/llms.txt
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。