🎁 Get the FREE AI Skills Starter Guide β€” Subscribe β†’
BytesAgainBytesAgain
πŸ¦€ ClawHub

OpenViking

by @zaynjarvis

RAG and semantic search via OpenViking Context Database MCP server. Query documents, search knowledge base, add files/URLs to vector memory. Use for document Q&A, knowledge management, AI agent memory, file search, semantic retrieval. Triggers on "openviking", "search documents", "semantic search", "knowledge base", "vector database", "RAG", "query pdf", "document query", "add resource".

Versionv1.0.3
Downloads5,595
Installs44
Stars⭐ 10
TERMINAL
clawhub install openviking

πŸ“– About This Skill


name: openviking description: RAG and semantic search via OpenViking Context Database MCP server. Query documents, search knowledge base, add files/URLs to vector memory. Use for document Q&A, knowledge management, AI agent memory, file search, semantic retrieval. Triggers on "openviking", "search documents", "semantic search", "knowledge base", "vector database", "RAG", "query pdf", "document query", "add resource".

OpenViking - Context Database for AI Agents

OpenViking is ByteDance's open-source Context Database designed for AI Agents β€” a next-generation RAG system that replaces flat vector storage with a filesystem paradigm for managing memories, resources, and skills.

Key Features:

  • Filesystem paradigm: Organize context like files with URIs (viking://resources/...)
  • Tiered context (L0/L1/L2): Abstract β†’ Overview β†’ Full content, loaded on demand
  • Directory recursive retrieval: Better accuracy than flat vector search
  • MCP server included: Full RAG pipeline via Model Context Protocol

  • Quick Check: Is It Set Up?

    test -f ~/code/openviking/examples/mcp-query/ov.conf && echo "Ready" || echo "Needs setup"
    curl -s http://localhost:2033/mcp && echo "Running" || echo "Not running"
    

    If Not Set Up β†’ Initialize

    Run the init script (one-time):

    bash ~/.openclaw/skills/openviking-mcp/scripts/init.sh
    

    This will: 1. Clone OpenViking from https://github.com/volcengine/OpenViking 2. Install dependencies with uv sync 3. Create ov.conf template 4. Pause for you to add API keys (embedding.dense.api_key, vlm.api_key)

    Required: Volcengine/Ark API Keys

    | Config Key | Purpose | |------------|---------| | embedding.dense.api_key | Semantic search embeddings | | vlm.api_key | LLM for answer generation |

    Get keys from: https://console.volcengine.com/ark

    Start the Server

    cd ~/code/openviking/examples/mcp-query
    uv run server.py
    

    Options:

  • --port 2033 - Listen port
  • --host 127.0.0.1 - Bind address
  • --data ./data - Data directory
  • Server will be at: http://127.0.0.1:2033/mcp

    Connect to Claude

    claude mcp add --transport http openviking http://localhost:2033/mcp
    

    Or add to ~/.mcp.json:

    {
      "mcpServers": {
        "openviking": {
          "type": "http",
          "url": "http://localhost:2033/mcp"
        }
      }
    }
    

    Tools Available

    | Tool | Description | |------|-------------| | query | Full RAG pipeline β€” search + LLM answer | | search | Semantic search only, returns docs | | add_resource | Add files, directories, or URLs |

    Example Usage

    Once connected via MCP:

    "Query: What is OpenViking?"
    "Search: machine learning papers"
    "Add https://example.com/article to knowledge base"
    "Add ~/documents/report.pdf"
    

    Troubleshooting

    | Issue | Fix | |-------|-----| | Port in use | uv run server.py --port 2034 | | Auth errors | Check API keys in ov.conf | | Server not found | Ensure it's running: curl localhost:2033/mcp |

    Files

  • ov.conf - Configuration (API keys, models)
  • data/ - Vector database storage
  • server.py - MCP server implementation
  • πŸ“‹ Tips & Best Practices

    | Issue | Fix | |-------|-----| | Port in use | uv run server.py --port 2034 | | Auth errors | Check API keys in ov.conf | | Server not found | Ensure it's running: curl localhost:2033/mcp |