Skip to main content
Glama
Amruth22

Literature Manager MCP

by Amruth22

πŸ“š Literature Manager MCP

A beginner-friendly system for managing research papers, books, and other sources using AI assistants through the Model Context Protocol (MCP).

🎯 What is this?

This tool helps you:

  • Organize research papers, books, websites, and videos

  • Take notes on your sources with structured titles

  • Track reading progress (unread, reading, completed, archived)

  • Connect sources to concepts in your knowledge base

  • Work with AI assistants like Claude to manage your literature

πŸš€ Quick Start

1. Prerequisites

  • Python 3.8 or higher

πŸš€ Quick Start

1. Prerequisites

  • Python 3.8 or higher

  • Basic familiarity with command line

2. Installation

# Clone this repository
git clone https://github.com/Amruth22/literature-manager-mcp.git
cd literature-manager-mcp

# Install dependencies
pip install -r requirements.txt

# Create your database
python setup_database.py

3. Choose Your Usage Method

# Set your database path
## πŸ“š How to Use

### Command Line Interface

```bash
# Add a research paper
python cli.py add-source "Attention Is All You Need" paper arxiv 1706.03762

# Add a book
python cli.py add-source "Deep Learning" book isbn 978-0262035613

# Add a note
python cli.py add-note "Attention Is All You Need" paper arxiv 1706.03762 \
  "Key Insight" "Transformers eliminate recurrence"

# Update status
python cli.py update-status "Attention Is All You Need" paper arxiv 1706.03762 completed

# Link to entity
python cli.py link-entity "Attention Is All You Need" paper arxiv 1706.03762 \
  "transformer architecture" introduces

# List sources
python cli.py list --type paper --status unread

# Search sources
python cli.py search "transformer"

# Show statistics
python cli.py stats

# Get help
python cli.py help

Direct Python Usage

from src.database import LiteratureDatabase

# Initialize database
db = LiteratureDatabase("literature.db")

# Add a source
source_id = db.add_source(
    title="Attention Is All You Need",
    source_type="paper",
    identifier_type="arxiv",
    identifier_value="1706.03762"
# Add a note
db.add_note(source_id, "Key Insight", "Transformers eliminate recurrence...")

# Update status
db.update_status(source_id, "completed")

# Link to entity
db.link_to_entity(source_id, "transformer architecture", "introduces")

# Get source details
source = db.get_source_by_id(source_id)
print(source)

Running Examples

# Run basic examples
python examples/basic_usage.py

# Run advanced examples  
python examples/advanced_usage.py

# Run direct usage examples
python direct_usage.py
  • completed: Finished reading

  • archived: Saved for later reference

πŸ”— Relationship Types

When linking sources to concepts:

  • discusses: Source talks about the concept

  • introduces: Source first presents the concept

  • extends: Source builds upon the concept

  • evaluates: Source analyzes/critiques the concept

  • applies: Source uses the concept practically

  • critiques: Source criticizes the concept

πŸ› οΈ Available Commands

Basic Operations

  • add_source() - Add a new source

  • add_note() - Add notes to sources

  • update_status() - Change reading status

  • search_sources() - Find sources

Advanced Operations

  • link_to_entity() - Connect sources to concepts

  • get_entity_sources() - Find sources by concept

  • add_identifier() - Add more IDs to existing sources

Database Operations

  • list_sources() - Show all sources

  • get_source_details() - Get complete source info

  • database_stats() - Show database statistics

πŸ“ Project Structure

literature-manager-mcp/
β”œβ”€β”€ README.md              # This file
β”œβ”€β”€ requirements.txt       # Python dependencies
β”œβ”€β”€ setup_database.py      # Database setup script
β”œβ”€β”€ server.py             # Main MCP server
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ __init__.py
β”‚   β”œβ”€β”€ database.py       # Database operations
β”‚   β”œβ”€β”€ models.py         # Data models
β”‚   β”œβ”€β”€ tools.py          # MCP tools
β”‚   └── utils.py          # Helper functions
β”œβ”€β”€ examples/
β”‚   β”œβ”€β”€ basic_usage.py    # Simple examples
β”‚   └── advanced_usage.py # Complex workflows
β”œβ”€β”€ tests/
β”‚   └── test_basic.py     # Unit tests
└── docs/
    β”œβ”€β”€ installation.md   # Detailed setup
    β”œβ”€β”€ examples.md       # More examples
    └── troubleshooting.md # Common issues

🀝 Contributing

  1. Fork the repository

  2. Create a feature branch (git checkout -b feature/amazing-feature)

  3. Commit your changes (git commit -m 'Add amazing feature')

  4. Push to the branch (git push origin feature/amazing-feature)

  5. Open a Pull Request

πŸ“ License

This project is licensed under the MIT License - see the LICENSE file for details.

πŸ†˜ Need Help?

πŸ™ Acknowledgments

-
security - not tested
A
license - permissive license
-
quality - not tested

Resources

Looking for Admin?

Admins can modify the Dockerfile, update the server description, and track usage metrics. If you are the server author, to access the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Amruth22/literature-manager-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server