Local research assistant that maintains a knowledge graph of papers, concepts
翻譯準備中
AI 摘要 · README
外掛HTML · PythonGitHub @FrancescoCorrenti自行安裝營運者未確認
試用過了嗎? 點一下就好,不需要登入。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
安裝型專案無需部署網域也可驗證。個人儲存庫可透過 GitHub 登入驗證,組織儲存庫可使用上方的儲存庫驗證檔案。
正在載入完整 README。 以下為已儲存的摘錄。
A local research assistant that keeps a knowledge graph of the papers, concepts, and projects you work on. No cloud, no database. Just JSON files and an MCP server.
This repo is both the plugin and a plugin marketplace, so it installs in one command.
Restart Claude after installing.
1. Open Customize > Plugins.
2. Click Add > Add from repository.
3. Paste https://github.com/FrancescoCorrenti/TooManyPapers.
4. Sync, then add the too-many-papers plugin.
Restart Claude after installing.
The MCP server works natively in Cursor. Add it to ~/.cursor/mcp.json:檢視完整 README ↗A local research assistant that keeps a knowledge graph of the papers, concepts, and projects you work on. No cloud, no database. Just JSON files and an MCP server.
This repo is both the plugin and a plugin marketplace, so it installs in one command.
/plugin marketplace add FrancescoCorrenti/too-many-papers
/plugin install too-many-papers@too-many-papers
Restart Claude after installing.
https://github.com/FrancescoCorrenti/TooManyPapers.Restart Claude after installing.
The MCP server works natively in Cursor. Add it to ~/.cursor/mcp.json:
{
"mcpServers": {
"too-many-papers": {
"command": "uv",
"args": ["run", "--directory", "/absolute/path/to/too-many-papers-plugin/server", "_scripts/mcp_server.py"]
}
}
}
Replace the path with where you cloned this repo. Skills and slash commands are Claude Code-only and won't be available in Cursor — just the MCP tools (papers, projects, citations, PDFs).
curl -LsSf https://astral.sh/uv/install.sh | shpowershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"Just talk about papers:
On first use, the AI asks what you're currently working on and drafts a starting set of concepts and projects for you to confirm.
To browse visually, run /too-many-papers:webui or ask to open Too Many Papers. It opens at http://localhost:3737.
The web UI has a tab per type (Papers, Concepts, Projects, Ideas, Notes, Venues) plus a graph view, search and filters everywhere, an inline PDF reader where you can select text to add a note, and a pencil icon to edit anything.
PDFs are fetched automatically from arXiv, Semantic Scholar, and Unpaywall when a paper is added, so there's usually something to read right away.
A typical end-to-end session, from reading to shipping code:
papers_discover pulls candidates from arXiv/Semantic Scholar/OpenAlex; confirm which ones to add.graph_link_project_paper saves the association and its required idea together.graph_project_context retrieves the project's papers and their generated ideas. Each project gets its own analysis of a shared paper.Schema 3.0 removes waypoints and endpoints. On first graph access, the server backs up the old graph to _graph.pre-v3.json, converts legacy work nodes to ideas, and preserves their text and provenance. The MCP controller uses graph_review_queue to analyze candidate papers and incorporate those ideas into grounded project–paper associations. Unresolved items remain visible; the migration never invents relevance.
.bib.~/.too-many-papers. No cloud, no database, no lock-in.Where is my data stored?
Always at ~/.too-many-papers, a fixed path in your home directory.
How do I update?
/plugin marketplace update then /plugin update too-many-papers@too-many-papers.
MIT
python -m unittest discover -s too-many-papers-plugin/server/tests -v
uv run --directory too-many-papers-plugin/server python tests/mcp_smoke.py
Add --browser to the smoke test to launch the web UI through MCP on isolated synthetic data. TOO_MANY_PAPERS_DATA_DIR overrides the default data directory for testing; both servers use the same value. Without an override, user data stays at ~/.too-many-papers.