Paper Memory MCP Lite
by StaryMoon
README.md
# Paper Memory MCP Lite
> Local-first MCP-style research memory for papers, notes, figures, experiment logs, and GitHub README files.
[](LICENSE)
[](pyproject.toml)
[](#features)
<p align="center">
<img src="assets/screenshots/semantic-scholar.png" alt="Semantic Scholar public homepage screenshot" width="880">
</p>
<sub>Image source: public Semantic Scholar homepage screenshot, [https://www.semanticscholar.org/](https://www.semanticscholar.org/). Used as a visual reference for paper search and research-memory workflows; not an endorsement by Semantic Scholar.</sub>
Paper reading gets messy fast: one PDF has the key idea, one Markdown note has your interpretation, one experiment log has the actual failure, and one README has the code status. This project gives agents a tiny local memory layer that indexes those files and exposes search through a simple MCP-compatible stdio server.
It is intentionally small: no cloud database, no embeddings service, no account, no background daemon. Everything lives in a local SQLite file.
If this helps your research workflow, a star helps other people find it.
## Features
- Index Markdown, text, JSON, YAML, and lightweight PDF text when optional PDF tooling is installed.
- Store paper notes, figure captions, experiment logs, repo READMEs, and daily briefings in one SQLite FTS database.
- Search snippets with source path, title, kind, and timestamp.
- Expose MCP-style tools:
- `index_research_folder`
- `search_research_memory`
- `get_daily_context`
- `link_paper_to_experiment`
- `summarize_evidence_pack`
- Run as a CLI for smoke tests or as a stdio JSON-RPC server for agents.
## Quick Start
```bash
git clone https://github.com/StaryMoon/paper-memory-mcp-lite.git
cd paper-memory-mcp-lite
python3 -m venv .venv
source .venv/bin/activate
pip install -e .
paper-memory index examples/sample_research
paper-memory search "continual deraining"
paper-memory daily
```
## MCP Server
Add this to an MCP client configuration and adjust the path:
```json
{
"mcpServers": {
"paper-memory-lite": {
"command": "python3",
"args": ["-m", "paper_memory_mcp_lite.server", "serve"],
"env": {
"PAPER_MEMORY_DB": "/absolute/path/to/paper-memory.sqlite"
}
}
}
}
```
See [`docs/mcp-config.json`](docs/mcp-config.json) for a copyable example.
## Tool Behavior
| Tool | Purpose |
|---|---|
| `index_research_folder` | Index a folder of Markdown, text, JSON, YAML, and optional PDF text. |
| `search_research_memory` | Search local research notes and return snippets with file paths. |
| `get_daily_context` | Retrieve the most recent notes, logs, and briefings for daily planning. |
| `link_paper_to_experiment` | Store a lightweight relationship between a paper note and an experiment log. |
| `summarize_evidence_pack` | Build an evidence pack from search results without pretending it is a full literature review. |
## CLI Examples
```bash
paper-memory index ~/Downloads/文稿/papers
paper-memory search "reasoning RL benchmark" --limit 8
paper-memory link papers/deepseek-r1.md experiments/grpo-ablation.md --note "baseline for reasoning radar"
paper-memory evidence "image restoration continual prompt"
```
## Privacy Model
- Local SQLite database only.
- No telemetry.
- No API keys.
- No automatic background crawl.
- The indexer only reads folders you explicitly pass to it.
## Related Projects
- [ai-researcher-skills](https://github.com/StaryMoon/ai-researcher-skills)
- [codegraph-memory-mcp-lite](https://github.com/StaryMoon/codegraph-memory-mcp-lite)
- [obsidian-research-brief-kit](https://github.com/StaryMoon/obsidian-research-brief-kit)
- [awesome-ai-paper-reproduction-radar](https://github.com/StaryMoon/awesome-ai-paper-reproduction-radar)
## License
MIT.
This server cannot be deployed
Maintenance
ActivityStale
ResponsivenessNo issues