Ragstack

io.github.HatmanStack由 GitHub 账号 HatmanStack 发布v0.1.4更新于 Oct 24, 2026

Search, chat, upload, and scrape a serverless RAGStack knowledge base on AWS.

概览

AI 生成的概览

让 AI 助手连接自建的 AWS 无服务器 RAGStack 知识库,进行搜索、对话、上传和网页抓取。

可以做什么
  • 在 RAGStack 知识库中检索并给出带来源引用的检索增强回答
  • 与知识库对话,返回可追溯的来源,媒体来源附带时间戳链接
  • 上传并索引文档、图片、视频和音频,进行 OCR、转写与向量化
  • 将网站抓取并加入知识库
  • 按自动发现的文档元数据过滤检索结果
适用场景
适合已在 AWS 上部署 RAGStack、并希望让 Claude Desktop、Cursor 或 VS Code 等助手直接检索和对话自有文档、图片与音视频资料库的用户,无需把内容粘贴进对话。
运行要求
以本地 Python 包 ragstack-mcp 通过 uvx 启动,需要 Python 与 uv。需已有 AWS 上的 RAGStack 部署,并设置两个环境变量:RAGSTACK_GRAPHQL_ENDPOINT 与 RAGSTACK_API_KEY,均可在 RAGStack 控制台设置中获取。仅支持桌面版 MCP 客户端。
安装前请注意
RAGSTACK_API_KEY 可对知识库进行服务端访问,请勿放入共享配置。上传与抓取会向你的 AWS 账户写入数据,并产生 Bedrock、Textract、Transcribe 与存储费用;README 称 1000 份文档约每月 7-10 美元。项目自述处于活跃开发阶段,会频繁变动。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Ragstack,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

[RAGStack-Lambda-app icon]

[Apache 2.0 License] [Python 3.13] [React 19]

[AWS Lambda] [AWS Bedrock] [AWS Transcribe] [AWS S3] [AWS DynamoDB] [AWS Cognito]

Serverless document and media processing with AI chat. Scale-to-zero architecture — no vector database fees, no idle costs. Upload documents, images, video, and audio — extract text with OCR or transcription — query using Amazon Bedrock or your AI assistant via MCP.

QUESTIONS? [Deep WIKI]

Features

  • ☁️ Fully serverless architecture (Lambda, Step Functions, S3, DynamoDB)
  • 🧠 NEW Amazon Nova multimodal embeddings for text and image vectorization
  • 📄 Document processing & vectorization (PDF, images, Office docs, HTML, CSV, JSON, XML, EML, EPUB) → stored in managed knowledge base
  • 🎬 NEW Video/audio processing - transcribe speech with AWS Transcribe, searchable by timestamp
  • 💬 AI chat with retrieval-augmented context and source attribution
  • 📎 Collapsible source citations with optional document downloads
  • ⏱️ NEW Media sources with timestamp links - click to play at exact position
  • 🔍 Metadata filtering - auto-discover document metadata and filter search results
  • 🎯 Relevancy boost for filtered results - prioritize matches from metadata filters
  • 🔄 Knowledge Base reindex - regenerate metadata for existing documents with updated settings
  • 🗑️ Document management - reprocess, reindex, or delete documents from the dashboard
  • 🌐 Web component for any framework (React, Vue, Angular, Svelte)
  • 🚀 One-click deploy
  • 💰 $7-10/month (1000 docs, Textract + Haiku)

Live Demo

EnvironmentURLCredentials
Base Pipelinedhrmkxyt1t9pb.cloudfront.net[email protected] / Guest@123
Project Showcaseshowcase-htt.hatstack.funLogin as guest

Base Pipeline: The core document processing tool - upload, OCR, and query documents.

Project Showcase: See RAGStack powering a real application.

Quick Start

Option 1: One-Click Deploy (AWS Marketplace)

REPO IS IN ACTIVE DEVELOPMENT AND WILL CHANGE OFTEN

Deploy directly from the AWS Console - no local setup required:

  1. Subscribe to RAGStack on AWS Marketplace (free, not required - If subscribed Lambda roles auto-accept Bedrock model agreements on first invocation)
  2. Click here to deploy
  3. Enter a stack name (lowercase only, e.g., "my-docs") and your admin email
  4. Click Create Stack (deployment takes ~10 minutes)

After deployment:

  • Check your email for the temporary password (from Cognito)
  • Go to CloudFormation → your stack → Outputs tab to find the Dashboard URL (UIUrl)

Option 2: Deploy from Source

For customization or development:

Prerequisites:

  • AWS Account with admin access
  • Python 3.13+, Node.js 24+
  • uv (Python package manager)
  • AWS CLI, SAM CLI (configured)
  • Docker (for Lambda layer builds)
bash
git clone https://github.com/HatmanStack/RAGStack-Lambda.gitcd RAGStack-Lambda
# Install dependenciesuv sync
# Deploy (defaults to us-east-1 for Nova Multimodal Embeddings)python publish.py \  --stack-name my-docs \  --admin-email [email protected]

Option 3: Nested Stack Deployment

Deploy RAGStack as part of a larger CloudFormation stack. See Nested Stack Deployment Guide for details.

Quick example:

yaml
Resources:  RAGStack:    Type: AWS::CloudFormation::Stack    Properties:      TemplateURL: https://ragstack-quicklaunch-public.s3.us-east-1.amazonaws.com/ragstack-template.yaml      Parameters:        StackPrefix: 'my-app-ragstack'  # Required: lowercase prefix        AdminEmail: [email protected]

Web Component Integration

See RAGSTACK_CHAT.md for web component integration guide.

API Access

Server-side integrations use API key authentication. Get your key from Dashboard → Settings.

bash
curl -X POST 'YOUR_GRAPHQL_ENDPOINT' \  -H 'x-api-key: YOUR_API_KEY' \  -H 'Content-Type: application/json' \  -d '{"query": "query { searchKnowledgeBase(query: \"...\") { results { content } } }"}'

Web component uses IAM auth (no API key needed - handled automatically).

Each UI tab shows server-side API examples in an expandable section.

MCP Server (AI Assistant Integration)

Use your knowledge base directly in Claude Desktop, Cursor, VS Code, Amazon Q CLI, and other MCP-compatible tools.

bash
# Install (or use uvx for zero-install)pip install ragstack-mcp

Add to your AI assistant's MCP config:

json
{  "ragstack-kb": {    "command": "uvx",    "args": ["ragstack-mcp"],    "env": {      "RAGSTACK_GRAPHQL_ENDPOINT": "YOUR_ENDPOINT",      "RAGSTACK_API_KEY": "YOUR_API_KEY"    }  }}

Then ask naturally: "Search my knowledge base for authentication docs"

See MCP Server docs for full setup instructions.

Architecture

Upload → OCR → Embeddings → Bedrock KB                                ↓ Web UI (Dashboard + Chat) ←→ GraphQL API                                ↓ Web Component ←→ AI Chat with Sources

Usage

Documents

Upload documents in various formats. Auto-detection routes to optimal processor:

TypeFormatsProcessing
TextHTML, TXT, CSV, JSON, XML, EML, EPUB, DOCX, XLSXDirect extraction with smart analysis
OCRPDF, JPG, PNG, TIFF, GIF, BMP, WebP, AVIFTextract or Bedrock vision OCR (WebP/AVIF require Bedrock)
MediaMP4, WebM, MP3, WAV, M4A, OGG, FLACAWS Transcribe → 30s segments → searchable with timestamps
PassthroughMarkdown (.md)Direct copy

Processing time: UPLOADED → PROCESSING → INDEXED (typically 1-5 min for text, 2-15 min for OCR, 5-20 min for media)

Images

Upload JPG, PNG, GIF, WebP with captions. Both visual content and caption text are searchable.

Web Scraping

Scrape websites into the knowledge base. See Web Scraping.

Video & Audio

Upload MP4, WebM, MP3, WAV, M4A, OGG, or FLAC files. Speech is transcribed using AWS Transcribe and segmented into 30-second chunks for search. Sources include timestamps (e.g., "1:30-2:00") with clickable links that play at the exact position.

Features:

  • Speaker diarization (identify who said what)
  • Configurable language (30+ languages supported)
  • Timestamp-linked sources in chat responses

See Configuration for language and speaker settings.

Chat

Ask questions about your content. Sources show where answers came from.

Documentation

Development

bash
npm run check  # Lint + test all (backend + frontend)

Deployment Options

Direct Deployment

bash
# Full deployment (defaults to us-east-1)python publish.py --stack-name myapp --admin-email [email protected]
# Skip dashboard build (still builds web component)python publish.py --stack-name myapp --admin-email [email protected] --skip-ui
# Skip ALL UI builds (dashboard and web component)python publish.py --stack-name myapp --admin-email [email protected] --skip-ui-all
# Enable demo mode (rate limits: 5 uploads/day, 30 chats/day; disables reindex/reprocess/delete)python publish.py --stack-name myapp --admin-email [email protected] --demo-mode

Publish to AWS Marketplace (Maintainers)

To update the one-click deploy template:

bash
python publish.py --publish-marketplace

This packages the application and uploads to S3 for one-click deployment.

Note: Currently requires us-east-1 (Nova Multimodal Embeddings). When available in other regions, use --region <region>.

Acknowledgments

This project was inspired by:

来源:README.md,提交 518598d

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v0.1.4最新Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分