# ragstack

Connects an AI assistant to an AWS knowledge base for document search, uploads, OCR, transcription, and chat with retrieved context.

- MCP server · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 25
- Author: HatmanStack
- License: Apache-2.0 · policy=link-only · description only; the file stays with the author
- Source: https://github.com/HatmanStack/RAGStack-Lambda
- Updated: 2026-10-21
- HTML: https://affpapa.org/en/nevibecode/mcp/ragstack

## What it does

ragstack exposes an AWS-hosted knowledge base through MCP. An assistant can search stored material, accept new files, and use content processed with OCR or speech transcription. Supported inputs include PDFs, images, Office files, HTML, CSV, JSON, XML, EML, EPUB, video, and audio.

The MCP package runs as `uvx ragstack-mcp` and uses a GraphQL endpoint plus an API key. The underlying stack uses AWS Lambda, S3, DynamoDB, and Bedrock. Claude Code uses `claude mcp add`; Cursor and GitHub Copilot use their MCP configuration format.

The server cannot connect without `RAGSTACK_GRAPHQL_ENDPOINT` and `RAGSTACK_API_KEY`. The API key is available from Dashboard → Settings.

## Requirements
- Needs: Python and uv (commands run via uvx)
- Environment variables: `RAGSTACK_GRAPHQL_ENDPOINT`, `RAGSTACK_API_KEY` — keys and tokens: ask the human for the values, never commit them or put them in shared files.

## Install

### Claude Code (native platform)

**Platform CLI**
```bash
claude mcp add --env RAGSTACK_GRAPHQL_ENDPOINT=<RAGSTACK_GRAPHQL_ENDPOINT> --env RAGSTACK_API_KEY=<RAGSTACK_API_KEY> --transport stdio ragstack -- uvx ragstack-mcp
```
Replace <…> with your own values. uvx runs the command named after the package; if the README names another one, use uvx --from ragstack-mcp <command>

### Codex

**Platform CLI**
```bash
codex mcp add ragstack --env RAGSTACK_GRAPHQL_ENDPOINT=<RAGSTACK_GRAPHQL_ENDPOINT> --env RAGSTACK_API_KEY=<RAGSTACK_API_KEY> -- uvx ragstack-mcp
```
Replace <…> with your own values. uvx runs the command named after the package; if the README names another one, use uvx --from ragstack-mcp <command>

### Cursor

**Config file**
File `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "ragstack": {
            "command": "uvx",
            "args": [
                "ragstack-mcp"
            ],
            "env": {
                "RAGSTACK_GRAPHQL_ENDPOINT": "<RAGSTACK_GRAPHQL_ENDPOINT>",
                "RAGSTACK_API_KEY": "<RAGSTACK_API_KEY>"
            }
        }
    }
}
```
Replace <…> with your own values. uvx runs the command named after the package; if the README names another one, use uvx --from ragstack-mcp <command>

### GitHub Copilot

**Config file**
File `.vscode/mcp.json`:
```json
{
    "servers": {
        "ragstack": {
            "type": "stdio",
            "command": "uvx",
            "args": [
                "ragstack-mcp"
            ],
            "env": {
                "RAGSTACK_GRAPHQL_ENDPOINT": "<RAGSTACK_GRAPHQL_ENDPOINT>",
                "RAGSTACK_API_KEY": "<RAGSTACK_API_KEY>"
            }
        }
    }
}
```
Replace <…> with your own values. uvx runs the command named after the package; if the README names another one, use uvx --from ragstack-mcp <command>

### Gemini CLI

**Platform CLI**
```bash
gemini mcp add -e RAGSTACK_GRAPHQL_ENDPOINT=<RAGSTACK_GRAPHQL_ENDPOINT> -e RAGSTACK_API_KEY=<RAGSTACK_API_KEY> ragstack uvx ragstack-mcp
```
Replace <…> with your own values. uvx runs the command named after the package; if the README names another one, use uvx --from ragstack-mcp <command>

## When to use it
- search a private knowledge base
- add files for later retrieval
- extract text from PDFs and images
- transcribe recorded video and audio
- retrieve answers with source references

## Example prompts
- Search my knowledge base for authentication documentation.
- Find the API setup details in the uploaded PDFs.
- Locate the video and audio sections that discuss authorization.

## Similar
- [REA](https://affpapa.org/en/nevibecode/mcp/rea.md) — MCP server · ★ 386989
- [GitHub](https://affpapa.org/en/nevibecode/mcp/github.md) — MCP server · ★ 33918
- [Netdata](https://affpapa.org/en/nevibecode/mcp/netdata.md) — MCP server · ★ 81115
- [browser-use](https://affpapa.org/en/nevibecode/mcp/browser-use.md) — MCP server · ★ 119160
- [Codebase Memory](https://affpapa.org/en/nevibecode/mcp/codebase-memory.md) — MCP server · ★ 47392
- [mcp-server](https://affpapa.org/en/nevibecode/mcp/mcp-server.md) — MCP server · ★ 43872

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
