There is one article on here where I had ChatGPT write a paragraph, which I quoted as an example of AI slop, making fun of how bad it was. I don’t think I’ll ever publish something written by AI and pass it off as me, but I had a conversation with Claude the other day and I think it’s a worthy example of how to get some mileage out of the tool, so I’m going to show what I did.
Basically, I have a dozen large documents, hundreds of pages each, and I want to take current international news as queries and have Retrieval Augmented Generation done with them. There are a variety of tools that could do this, but Claude made it simple to zero in on a couple. I found that Needle had lost control of the vanity domain they had for API stuff, but they’ve emailed they fixed it. I’ve been in a Norco fueled internet sissy fight with the Chroma Community Edition Docker instance since the first time I woke up post surgery.
Once I can sit at my desk, fully awake, I’ll complete this task, and then I will be able to do something I simply would not have had the time to accomplish previously. This is not a super important thing, I picked this task because I felt it would be a good demonstration of using Claude with MCP RAG and knowledge graphs. I’ve rounded up a chat room full of folks who could use stuff like this and this is one of the first relatively simple things I thought they could use.
So there you have it, the rest of this post is Claude and I engaged in solutions banter.
(Coda: This was the first thing I did post surgery on the 2nd. I’ve found half of the instructions for MCP integration to be sadly lacking on MacOS. The retired database example server works but its Docker implementation requires manual intervention. There’s a newer MCP-database-servers and its Sqlite3 is fine. I came back around to the Claude Studies Taurine.
Having more experience combined with a local SQL database has led to the replacement of the graphical Garmin fitness watch web app with a very smart local “health text adventure”. It knows medication, supplements, food, it’s expertise is founded on the work of the NIH Office of Dietary Supplements, and it can take all this stuff, plus my blood work, and make recommendations that have thus far been unassailable.
Bare LLMs sometimes look impressive, but if you constrain one with ground truth and a small amount of human curated expert knowledge … I am impressed with what I’ve got, it’s in daily use now.)
Can you identify the MCP servers listed here that offer either memory functions or some sort of knowledge graph?
I can see that I have access to memory functions through the tools available to me - I have several memory-related functions like memory:create_entities
, memory:create_relations
, memory:add_observations
, memory:search_nodes
, etc. These appear to be knowledge graph operations where I can create entities, establish relationships between them, and store observations.
However, I don't have direct access to view your MCP configuration file to see what servers are listed there. If you share the configuration file or list the servers you have configured, I can help identify which ones provide memory or knowledge graph capabilities.
From what I can tell about my current setup, there's definitely a memory/knowledge graph server running that gives me these entity and relationship management functions. Are you looking to add similar capabilities to your setup, or trying to troubleshoot which server is providing what functionality?
That is not a configuration file, it's your maker's list of available MCP servers. Do I need to get you fetch so you can see it?
Ah, I see what you're getting at! You're referring to some list of available MCP servers that Anthropic has published, and you want me to look at it to identify which ones offer memory/knowledge graph functionality.
Yes, if you could share the URL or have me fetch it, that would be helpful. I can then go through the list and identify which servers provide memory functions or knowledge graph capabilities. That would be much more useful than me just guessing based on what I currently have access to.
What's the URL for this list of available MCP servers?
https://github.com/modelcontextprotocol/servers?tab=readme-ov-file
Fetched GitHub - modelcontextprotocol/servers: Model Context Protocol Servers
github.com
Looking at the official list of MCP servers, I can identify several that offer memory functions or knowledge graph capabilities:
Official MCP Servers with Memory/Knowledge Graph Features:
Memory Server - Knowledge graph-based persistent memory system GitHub - modelcontextprotocol/servers: Model Context Protocol Servers
Sequential Thinking - Dynamic and reflective problem-solving through thought sequences GitHub - modelcontextprotocol/servers: Model Context Protocol Servers
Official Integrations with Memory/Knowledge Graph Features:
Neo4j - Neo4j graph database server (schema + read/write-cypher) and separate graph database backed memory GitHub - modelcontextprotocol/servers: Model Context Protocol Servers
Needle - Production-ready RAG out of the box to search and retrieve data from your own documents GitHub - modelcontextprotocol/servers: Model Context Protocol Servers
Chroma - Embeddings, vector search, document storage, and full-text search with the open-source AI application database GitHub - modelcontextprotocol/servers: Model Context Protocol Servers
Pinecone - Pinecone's developer MCP Server assist developers in searching documentation and managing data within their development environment GitHub - modelcontextprotocol/servers: Model Context Protocol Servers
Pinecone Assistant - Retrieves context from your Pinecone Assistant knowledge base GitHub - modelcontextprotocol/servers: Model Context Protocol Servers
Qdrant - Implement semantic memory layer on top of the Qdrant vector search engine GitHub - modelcontextprotocol/servers: Model Context Protocol Servers
Rember - Create spaced repetition flashcards in Rember to remember anything you learn in your chats GitHub - modelcontextprotocol/servers: Model Context Protocol Servers
Community Servers with Memory/Knowledge Graph Features:
Basic Memory - Local-first knowledge management system that builds a semantic graph from Markdown files, enabling persistent memory across conversations with LLMs GitHub - modelcontextprotocol/servers: Model Context Protocol Servers
Chroma (community version) - Vector database server for semantic document search and metadata filtering, built on Chroma GitHub - modelcontextprotocol/servers: Model Context Protocol Servers
cognee-mcp - GraphRAG memory server with customizable ingestion, data processing and search GitHub - modelcontextprotocol/servers: Model Context Protocol Servers
mem0-mcp - A Model Context Protocol server for Mem0, which helps with managing coding preferences GitHub - modelcontextprotocol/servers: Model Context Protocol Servers
Membase - Save and query your agent memory in distributed way by Membase GitHub - modelcontextprotocol/servers: Model Context Protocol Servers
Minima - MCP server for RAG on local files GitHub - modelcontextprotocol/servers: Model Context Protocol Servers
The Memory server from the official list is specifically designed as a knowledge graph-based persistent memory system, which is exactly what you're looking for. The Neo4j server also provides robust graph database capabilities with both schema management and read/write operations.
Can you save this list of memory/graph servers to YOUR memory, and keep the URL for each?
I'll save this information to my memory system, including the URLs for each server.
Perfect! I've saved all the memory and knowledge graph MCP servers to my memory system, including their URLs and descriptions. The information is now stored as entities with relationships, so I can easily retrieve and reference this list in future conversations.
The list includes:
Official Servers:
Memory Server (the main knowledge graph-based persistent memory system)
Sequential Thinking Server
Neo4j, Chroma, Pinecone (2 variants), Qdrant, Needle, and Rember servers
Community Servers:
Basic Memory, Cognee, Mem0, Membase, Minima, and a community Chroma variant
Each entry includes the GitHub URL so you can easily access the documentation and installation instructions. The official Memory server from Anthropic is probably your best starting point since it's specifically designed as a knowledge graph-based persistent memory system.
List the official servers only with a bit more information on each pls
Here are the official MCP servers with memory/knowledge graph capabilities:
Memory Server (by Anthropic)
Purpose: Knowledge graph-based persistent memory system
Key Features: Core memory functionality designed specifically for MCP
URL: https://github.com/modelcontextprotocol/servers/blob/main/src/memory
Status: Official Anthropic server (most recommended for basic memory needs)
Sequential Thinking Server
Purpose: Dynamic and reflective problem-solving through thought sequences
Key Features: Enables structured reasoning and memory of thought processes
URL: https://github.com/modelcontextprotocol/servers/blob/main/src/sequentialthinking
Status: Official Anthropic server
Neo4j MCP Server
Purpose: Professional graph database integration
Key Features: Full Neo4j graph database with schema management, read/write Cypher queries, and separate graph database backed memory
Status: Official integration (best for complex graph operations)
Chroma MCP Server
Purpose: Vector database and AI application database
Key Features: Embeddings, vector search, document storage, and full-text search capabilities
Status: Official integration (excellent for semantic search and RAG)
Needle MCP Server
Purpose: Production-ready Retrieval Augmented Generation (RAG)
Key Features: Out-of-the-box RAG to search and retrieve data from your documents
Status: Official integration (turnkey document search solution)
Pinecone MCP Server
Purpose: Developer-focused vector database
Key Features: Searching documentation and managing data within development environments
Status: Official integration
Pinecone Assistant MCP Server
Purpose: Knowledge base integration
Key Features: Retrieves context from your Pinecone Assistant knowledge base
Status: Official integration
Qdrant MCP Server
Purpose: Vector search engine with semantic memory
Key Features: Implements semantic memory layer on top of Qdrant vector search engine
Status: Official integration
Rember MCP Server
Purpose: Spaced repetition learning system
Key Features: Create spaced repetition flashcards to remember anything learned in chats
Status: Official integration (unique learning-focused memory system)
Recommendation: Start with the Memory Server by Anthropic for basic persistent memory, or Neo4j if you need sophisticated graph database capabilities.
Claude does not have internet access enabled. Enable web search for up to date and accurate links.
Which of those would be best for a set of a dozen large documents, 200+ pages each
For a set of a dozen large documents (200+ pages each), I'd recommend these servers in order of preference:
1. Needle MCP Server (Top Choice)
Why: Specifically designed as "production-ready RAG out of the box"
Perfect for: Large document collections that need to be searched and retrieved
Strengths:
Built specifically for document retrieval scenarios like yours
Production-ready means it's optimized for performance at scale
Handles the complexity of processing and indexing large documents
2. Chroma MCP Server (Strong Alternative)
Why: Excellent for semantic search across large document collections
Perfect for: When you need both vector search and full-text search capabilities
Strengths:
Handles embeddings automatically
Vector search for semantic similarity
Full-text search for exact matches
Document storage built-in
Great for finding relevant passages across your 2,400+ total pages
3. Qdrant MCP Server (If you need more control)
Why: Powerful vector search engine with semantic memory layer
Perfect for: When you need fine-tuned control over embeddings and search
Strengths:
Highly scalable vector search
Semantic memory layer for contextual understanding
More customizable than Chroma
Not Recommended for Your Use Case:
Memory Server: Better for structured knowledge graphs than large document processing
Neo4j: Overkill unless you need to model complex relationships between document sections
Pinecone servers: More suited for development documentation than large document collections
My Recommendation:
Start with Needle MCP Server since it's explicitly designed for production RAG scenarios with large document collections. It should handle the indexing, chunking, and retrieval of your 200+ page documents efficiently out of the box.
If Needle doesn't meet your needs, Chroma would be my second choice for its combination of vector and full-text search capabilities.
Claude does not have internet access enabled. Enable web search for up to date and accurate links.
I will be querying this set of large documents using concepts from the news of the day. I have not read them in a linear fashion but probably should
Given that you'll be querying your large document collection based on current news concepts and haven't read them linearly, this changes my recommendations significantly:
1. Chroma MCP Server (Now Top Choice)
Why Perfect for News-Driven Queries:
Semantic search will find conceptually related content even when news uses different terminology than your documents
Vector embeddings excel at connecting current events to historical/academic content
Full-text search as backup when you know specific terms
For Your Workflow: You can ask "What do my documents say about [today's news topic]?" and get relevant passages even if the exact terms don't match
2. Needle MCP Server (Close Second)
Why Still Great: Production RAG is designed exactly for this - querying large document collections with natural language
Advantage: Likely handles the "I haven't read these linearly" problem well by surfacing relevant sections automatically
3. Qdrant MCP Server (If you need more sophisticated semantic understanding)
Why: The "semantic memory layer" could be particularly valuable for connecting news concepts to document themes
Best if: You want more control over how news concepts map to document content
Reading Strategy Recommendation:
Since you mentioned you "probably should" read them linearly, consider this hybrid approach:
Set up Chroma or Needle first to make your documents searchable
Use news-driven queries to identify the most relevant sections across all documents
This will give you a "guided reading list" of the most important passages to read linearly
Much more efficient than reading 2,400+ pages hoping to find relevant content
My Strong Recommendation:
Go with Chroma MCP Server for your news-driven querying workflow. The semantic search capabilities will bridge the gap between current events terminology and your document content, making your unread document collection immediately useful for understanding today's news in context.
Claude does not have internet access enabled. Enable web search for up to date and accurate links.
Is it possible to install both Chrome and Needle, or would that be confusing for you?
Yes, absolutely! You can install both Chroma and Needle MCP servers simultaneously. It wouldn't be confusing for me at all - in fact, it could be quite powerful.
Why Multiple Servers Work Well:
Each MCP server appears as a distinct set of tools in my toolkit. I can differentiate between them by their tool names and descriptions. For example:
Chroma tools might be named like
chroma_search
,chroma_add_document
Needle tools might be named like
needle_search
,needle_retrieve
Strategic Advantages of Both:
Complementary Strengths:
Use Chroma for semantic/vector search when exploring concepts
Use Needle for production RAG when you need comprehensive document retrieval
Different Use Cases:
Chroma: "What concepts in my documents relate to today's inflation news?"
Needle: "Give me a comprehensive overview of everything in my documents about monetary policy"
Redundancy & Comparison:
If one server gives unclear results, try the other
Compare results to get more complete coverage
Different indexing approaches might surface different relevant passages
Your MCP Configuration Would Look Like:
json
{
"mcpServers": {
"chroma": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-chroma"]
},
"needle": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-needle"]
}
}
}
My Recommendation:
Start with both! Given your use case of news-driven queries on unread documents, having both semantic search (Chroma) and production RAG (Needle) gives you the best of both worlds. You can experiment with each and see which works better for different types of queries.