LlamaCloud RAG MCP Server
Enables querying LlamaCloud document indices using retrieval-augmented generation, providing intelligent answers with sources directly in Cursor IDE.
README
๐ฆ LlamaCloud RAG MCP Server
Professional Model Context Protocol (MCP) server for Retrieval-Augmented Generation using LlamaCloud API. Built with TypeScript following industry best practices from the Cursor MCP Integration Guide 2025.
Transform your Cursor IDE into an AI powerhouse! Connect any LlamaCloud document index and get intelligent answers with sources directly in your development workflow.
โจ Features
- ๐ Professional TypeScript Implementation: Type-safe, compiled, production-ready
- ๐ฆ LlamaCloud Integration: Direct API connection to cloud-hosted document indices
- ๐ ๏ธ Three Powerful Tools: Query, search, and inspect your knowledge base
- ๐ MCP Protocol Compliant: Full compatibility with Cursor IDE
- โก Performance Optimized: Efficient API calls and response handling
- ๐ Secure: Environment-based API key management
- ๐ฆ Easy Installation: Automated setup script included
๐ฏ Quick Start
Option 1: Automated Installation (Recommended)
# Clone the repository
git clone https://github.com/uiqkos/llamacloud-rag-mcp.git
cd llamacloud-rag-mcp
# Run the interactive installer
chmod +x install.sh
./install.sh
The installer will:
- โ Check Node.js version
- ๐ฆ Install dependencies
- ๐ง Build the project
- ๐ Setup your API key + Organization ID + Pipeline ID
- ๐ Configure Cursor MCP
- ๐งช Test the connection
Option 2: Manual Installation
# 1. Clone and setup
git clone https://github.com/uiqkos/llamacloud-rag-mcp.git
cd llamacloud-rag-mcp
npm install
npm run build
# 2. Get your LlamaCloud API key
# Visit: https://cloud.llamaindex.ai/
# 3. Configure Cursor
# Add to ~/.cursor/mcp.json or .cursor/mcp.json:
{
"mcpServers": {
"llamacloud-rag": {
"command": "node",
"args": ["/absolute/path/to/llamacloud-rag-mcp/dist/index.js"],
"env": {
"LLAMA_CLOUD_API_KEY": "your-api-key-here",
"LLAMA_CLOUD_ORGANIZATION_ID": "your-organization-id",
"LLAMA_CLOUD_PIPELINE_ID": "your-pipeline-id"
}
}
}
}
# 4. Restart Cursor IDE
๐ง Prerequisites
- Node.js 18.0+ and npm
- LlamaCloud API Key (get it here)
- LlamaCloud Organization ID
- LlamaCloud Pipeline ID (or a full Pipeline URL)
- Cursor IDE with MCP support
๐ Available Tools
๐ query_rag
Ask questions about your documents and get comprehensive answers with sources.
Input:
question(string, 1-1000 chars): Your question about the documents
Output:
- ๐ Detailed answer based on retrieved content
- ๐ List of source documents with relevance scores
- ๐ Preview text from each source
Example:
Question: "What is database normalization?"
Answer: Based on the found documents, database normalization is...
Sources:
1. Database Design Principles (relevance: 0.95)
2. SQL Fundamentals (relevance: 0.87)
๐ search_documents
Search for relevant documents without generating an answer.
Input:
query(string, 1-500 chars): Search querytop_k(number, 1-10, default 5): Number of results
Output:
- ๐ List of matching documents
- ๐ Content previews and metadata
- ๐ Relevance scores
โน๏ธ get_index_info
Get detailed information about your LlamaCloud index.
Input: None
Output:
- ๐ Index name, project, organization details
- โ Current status and configuration
- ๐ Pipeline URL and last update time
๐งช Testing Your Setup
# Test with npm scripts
npm run test
# Manual testing
npm run test:init # Test initialization
npm run test:tools # Test tool listing
# Test with your API key
LLAMA_CLOUD_API_KEY="your-key" LLAMA_CLOUD_ORGANIZATION_ID="your-org-id" LLAMA_CLOUD_PIPELINE_ID="your-pipeline-id" npm run test
๐ Project Structure
llamacloud-rag-mcp/
โโโ ๐ src/
โ โโโ ๐ index.ts # Main MCP server implementation
โโโ ๐ dist/ # Compiled JavaScript (auto-generated)
โโโ ๐ package.json # Node.js configuration
โโโ ๐ tsconfig.json # TypeScript configuration
โโโ ๐ install.sh # Automated installer
โโโ ๐ cursor-mcp-config.example.json # Configuration example
โโโ ๐ config.example # LlamaCloud config template
โโโ ๐ LICENSE # MIT license
โโโ ๐ README.md # This file
๐ Security & Best Practices
- โ API Key Protection: Never commit keys to version control
- โ Environment Variables: Secure configuration management
- โ Type Safety: Full TypeScript implementation
- โ Error Handling: Comprehensive error catching and reporting
- โ Input Validation: Secure parameter validation
- โ No Data Logging: Your queries stay private
๐จ Customization
Using Your Own LlamaCloud Index
- Create your index in LlamaCloud
- Set the required environment variables in your Cursor MCP config:
LLAMA_CLOUD_API_KEY=...
LLAMA_CLOUD_ORGANIZATION_ID=...
LLAMA_CLOUD_PIPELINE_ID=...
# or set LLAMA_CLOUD_PIPELINE_URL=... instead of PIPELINE_ID
- Rebuild:
npm run build
Custom Tools
Extend the server by adding new tools in src/index.ts. Follow the existing patterns for type safety and error handling.
๐ Troubleshooting
Tools not showing in Cursor?
- โ
Check env vars: Ensure
LLAMA_CLOUD_API_KEY,LLAMA_CLOUD_ORGANIZATION_ID, andLLAMA_CLOUD_PIPELINE_ID(orLLAMA_CLOUD_PIPELINE_URL) are set correctly - ๐ Restart Cursor: Fully quit and restart Cursor IDE
- ๐ Check paths: Ensure absolute paths in MCP configuration
- ๐ Check logs: Look at Cursor developer console for errors
- ๐งช Test manually: Run
npm run testto verify server works
Common Issues
"Module not found": Run npm run build first
"Missing required environment variables": Set LLAMA_CLOUD_API_KEY, LLAMA_CLOUD_ORGANIZATION_ID, and LLAMA_CLOUD_PIPELINE_ID (or LLAMA_CLOUD_PIPELINE_URL)
"Connection failed": Check your LlamaCloud API key and internet connection
"Tools not listed": Verify Cursor MCP configuration syntax
Getting Help
- ๐ Check the MCP Documentation
- ๐ฌ Open an issue
- ๐ Review Cursor logs in developer console
๐ค Contributing
Contributions are welcome! Please read our contributing guidelines and open an issue or pull request.
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature - Commit your changes:
git commit -m 'Add amazing feature' - Push to the branch:
git push origin feature/amazing-feature - Open a pull request
๐ License
This project is licensed under the MIT License - see the LICENSE file for details.
๐ Acknowledgments
- Model Context Protocol team
- LlamaIndex for the amazing RAG platform
- Cursor IDE for MCP integration
- Cursor MCP Integration Guide 2025 for best practices
Made with โค๏ธ for the developer community
Star โญ this repository if it helped you!
Recommended Servers
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.
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.
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.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
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.
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.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
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.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.