MyAIGist MCP

MyAIGist MCP

A local document intelligence and knowledge management server for Claude Desktop that provides RAG-powered Q\&A, media transcription, and URL crawling. It features 11 tools for processing various file types and managing a persistent local vector store with zero infrastructure costs.

Category
Visit Server

README

MyAIGist MCP Server

MCP server providing document intelligence and knowledge management for Claude Desktop and other MCP-compatible clients. Process documents, answer questions with RAG, and maintain a persistent knowledge base - all running locally.

Overview

MyAIGist MCP provides 10 powerful tools for document intelligence and knowledge management:

  • Document Processing: PDF, DOCX, TXT, URLs, file attachments, and batch processing
  • Q&A System: RAG-powered question answering across multiple documents
  • Knowledge Management: Persistent vector storage with document tracking

Features

MCP-compatible - Works with Claude Desktop, Cursor, and other MCP clients ✅ Claude-powered - Uses Claude Sonnet 4.5 for summarization and Q&A ✅ Local execution - Runs on your machine with no external infrastructure ✅ Persistent storage - Single vector store survives across sessions ✅ Multi-document RAG - Unlimited documents in knowledge base ✅ Simple setup - Install dependencies, configure API keys, and go

Installation

Prerequisites

  • Python 3.8+
  • Anthropic API key (for Claude text generation)
  • OpenAI API key (for embeddings)
  • MCP-compatible client (Claude Desktop, Cursor, etc.)

Setup

  1. Install dependencies:

    cd /path/to/myaigist_mcp
    pip install -r requirements.txt
    
  2. Configure environment:

    cp .env.example .env
    # Edit .env and add both API keys:
    # - ANTHROPIC_API_KEY (for Claude)
    # - OPENAI_API_KEY (for embeddings)
    
  3. Configure your MCP client:

    Claude Desktop - Edit ~/Library/Application Support/Claude/claude_desktop_config.json:

    {
      "mcpServers": {
        "myaigist": {
          "command": "python3",
          "args": ["/path/to/myaigist_mcp/server.py"]
        }
      }
    }
    

    Cursor - Add to your Cursor MCP settings:

    {
      "mcpServers": {
        "myaigist": {
          "command": "python3",
          "args": ["/path/to/myaigist_mcp/server.py"]
        }
      }
    }
    

    Other MCP clients - Refer to your client's documentation for MCP server configuration.

  4. Restart your MCP client

    The MCP server will start automatically when you open your client.

Architecture

myaigist_mcp/               # MCP server (this project)
├── server.py               # Main MCP server with 10 tools
├── mcp_agents/             # All agent code (local, self-contained)
│   ├── document_processor.py  # PDF/DOCX/TXT extraction
│   ├── summarizer.py          # 3-level summarization (Claude)
│   ├── embeddings.py          # OpenAI embeddings
│   ├── url_crawler.py         # Web content extraction
│   ├── claude_client.py       # Anthropic client factory
│   ├── openai_client.py       # OpenAI client factory
│   ├── qa_agent.py            # Q&A with RAG (Claude)
│   └── vector_store.py        # Vector storage
└── data/                   # Persistent vector storage
    └── vector_store.pkl    # Created at runtime

Architecture Notes:

  • All agents are self-contained in mcp_agents/
  • No external dependencies on other projects
  • Single-user design (no session/user isolation)
  • Persistent vector storage with unlimited documents
  • Claude Sonnet 4.5 for text generation (summarization, Q&A)
  • OpenAI for embeddings (RAG)

Available Tools (10 Total)

Content Processing (5 tools)

1. process_document

Process a document from LOCAL FILE PATH (PDF, DOCX, TXT) and add to knowledge base.

Parameters:

  • file_path (string, required): LOCAL filesystem path (e.g., /Users/mike/file.pdf)
  • title (string, optional): Document title (defaults to filename)
  • summary_level (string, optional): quick, standard, or detailed

Example:

"Process /Users/mike/contract.pdf as a detailed summary"

Compatibility: Works with all MCP clients.

2. process_uploaded_document

Process a document attached to Claude Desktop (optimized for Claude Desktop file uploads).

Parameters:

  • content (string, required): Text content extracted by Claude
  • filename (string, required): Original filename
  • summary_level (string, optional): quick, standard, or detailed

Example:

[Attach PDF file in Claude Desktop]
"Process this document with MyAIGist"

Compatibility: Designed for Claude Desktop. Other clients should use process_document with file paths.

3. process_text

Process raw text and add to knowledge base.

Example:

"Process this text: [paste long article]"

Compatibility: Works with all MCP clients.

4. process_url

Crawl web URL, extract content, and add to knowledge base.

Example:

"Process https://example.com/article"

Compatibility: Works with all MCP clients.

5. process_batch

Process multiple files and generate unified summary.

Example:

"Process all files in /Users/mike/research/ and give me a unified summary"

Compatibility: Works with all MCP clients.

Q&A System (1 tool)

6. ask_question

Ask questions about stored documents using RAG.

Example:

"What are the main findings in the research papers?"

Compatibility: Works with all MCP clients.

Document Management (3 tools)

7. list_documents

List all documents in knowledge base with metadata.

Example:

"Show me all my documents"

Compatibility: Works with all MCP clients.

8. delete_document

Delete specific document by ID.

Example:

"Delete document abc123xyz"

Compatibility: Works with all MCP clients.

9. clear_all_documents

Clear entire knowledge base.

Example:

"Clear all my documents"

Compatibility: Works with all MCP clients.

Utility Tools (1 tool)

10. get_status

Get system status and knowledge base statistics.

Example:

"What's my system status?"

Compatibility: Works with all MCP clients.

Common Workflows

File Upload (Claude Desktop)

User: [Attaches PDF to Claude Desktop]
User: "Process this document with MyAIGist"
Claude: ✅ Processed with summary

User: "What are the key points?"
Claude: "The key points are..."

Single Document Q&A (Any MCP Client)

User: "Process /Users/mike/contract.pdf"
AI: ✅ Processed with summary

User: "What are the payment terms?"
AI: "The payment terms are net 30..."

Multi-Document Research (Any MCP Client)

User: "Process these 3 research papers: paper1.pdf, paper2.pdf, paper3.pdf"
AI: ✅ Processed all 3 with unified summary

User: "What are the common findings across all papers?"
AI: "The common findings are..."

Configuration

Environment Variables (.env)

# Anthropic API Key (required - for Claude text generation)
ANTHROPIC_API_KEY=sk-ant-your-key-here
ANTHROPIC_MODEL=claude-sonnet-4-5-20250929

# OpenAI API Key (required - for embeddings)
OPENAI_API_KEY=sk-your-key-here
OPENAI_EMBED_MODEL=text-embedding-3-large

Model Selection

Current Configuration:

  • Claude Sonnet 4.5 (claude-sonnet-4-5-20250929) - Summarization and Q&A
  • text-embedding-3-large - Higher accuracy for RAG vector search

Why Two API Keys?

  • Anthropic Claude: Text generation (summarization, Q&A) - excellent quality
  • OpenAI: Embeddings (Claude doesn't provide embeddings)

Storage

Vector Store:

  • Path: data/vector_store.pkl
  • Format: Pickle with numpy arrays
  • Persistence: Survives server restarts
  • Capacity: Unlimited documents

API Costs

Usage-based pricing:

  • Claude Sonnet 4.5: $3/$15 per 1M tokens (input/output)
  • OpenAI Embeddings: $0.13 per 1M tokens

Typical monthly usage:

  • 100 documents processed: ~$5-10
  • 500 questions answered: ~$2-5
  • Total: ~$10-15/month

Troubleshooting

Server won't start

# Check if Python can find dependencies
python3 -c "import mcp; print('✅ MCP installed')"

# Check syntax
python3 -m py_compile server.py

# Check logs (Claude Desktop example)
tail -f ~/Library/Logs/Claude/mcp-server-myaigist.log

Import errors

# Test agent imports
cd /path/to/myaigist_mcp
python3 -c "from mcp_agents.summarizer import Summarizer; print('✅ Imports work')"
python3 -c "from mcp_agents.qa_agent import QAAgent; print('✅ QAAgent works')"

API Key errors

# Check environment variables are set
python3 -c "import os; print('Anthropic:', bool(os.getenv('ANTHROPIC_API_KEY'))); print('OpenAI:', bool(os.getenv('OPENAI_API_KEY')))"

Empty knowledge base after restart

  • Check data/vector_store.pkl exists
  • Verify file permissions (readable/writable)
  • Check for errors in server logs

File upload not working

  • Claude Desktop: Use process_uploaded_document for file attachments
  • Other clients: Use process_document with local filesystem paths
  • See tool descriptions for compatibility details

Development

Running Tests

# Test agent imports
python3 -c "from mcp_agents.qa_agent import QAAgent; qa = QAAgent(); print('✅ QAAgent works')"

# Test document processing
cd /path/to/myaigist_mcp
python3 -c "from mcp_agents.document_processor import DocumentProcessor; dp = DocumentProcessor(); print('✅ DocumentProcessor works')"

Debugging

# Run server manually to see output
python3 /path/to/myaigist_mcp/server.py

Project Structure

myaigist_mcp/
├── server.py              # Main MCP server (10 tools)
├── requirements.txt       # Python dependencies
├── .env                   # Environment variables (not in git)
├── .env.example          # Template
├── README.md             # This file
├── mcp_agents/           # MCP-adapted agents
│   ├── __init__.py
│   ├── claude_client.py   # Anthropic client factory
│   ├── summarizer.py      # Modified: uses Claude
│   ├── qa_agent.py        # Modified: uses Claude, single-user
│   ├── vector_store.py    # Modified: no user filtering
│   ├── document_processor.py
│   ├── embeddings.py
│   ├── url_crawler.py
│   └── openai_client.py
└── data/                 # Persistent storage
    └── vector_store.pkl  # Vector embeddings and metadata

MCP Client Compatibility

Tested Clients

  • Claude Desktop - Full support including file attachments
  • ⚠️ Cursor - Core functionality works (use file paths instead of attachments)
  • Other MCP clients - Should work with file path-based tools

Compatibility Notes

  • All tools work with standard file paths
  • process_uploaded_document is optimized for Claude Desktop's file attachment behavior
  • Other clients should use process_document with local file paths
  • Standard MCP protocol (stdio transport, JSON-RPC)

License

MIT License

Support

For issues or questions:

  1. Check troubleshooting section above
  2. Review MCP server logs (location varies by client)
  3. Verify environment variables in .env
  4. Test agent imports individually

Last Updated: 2026-01-19 Project Status: ✅ Production ready - 10 core tools implemented and tested Models: Claude Sonnet 4.5 (text) + OpenAI (embeddings) Focus: Document intelligence (text-based content only) Compatibility: Claude Desktop, Cursor, and other MCP-compatible clients

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
E2B

E2B

Using MCP to run code via e2b.

Official
Featured