> ## Documentation Index
> Fetch the complete documentation index at: https://docs.mindset.ai/llms.txt
> Use this file to discover all available pages before exploring further.

> Four ways to provide knowledge/context to agents

# Knowledge Provisioning Options

## The Four Methods

<CardGroup cols={2}>
  <Card title="Method 1: Tenant Uploads Files" icon="upload" color="#A855F7">
    **How it works:**

    * Tenant uses Context Builder or Context Configuration component
    * Tenant creates contexts manually
    * Tenant uploads files into those contexts
    * You provision these tenant-level contexts in agent sessions

    **When to use:** Tenants have unique, proprietary knowledge they need to provide
  </Card>

  <Card title="Method 2: You Provide App-Level Contexts" icon="database" color="#3B82F6">
    **How it works:**

    * You create app-level contexts via Contexts API
    * You upload and manage files centrally
    * You provision these to tenants through agent sessions
    * Tenants don't need to upload anything

    **When to use:** You have standardized knowledge all tenants should access
  </Card>

  <Card title="Method 3: You Create Tenant-Level Contexts" icon="cloud" color="#10B981">
    **How it works:**

    * Use Contexts API with `externalTenantId` parameter
    * Create contexts programmatically for specific tenants
    * Optional: Set up synced ingestion (e.g., from Google Drive)
    * Files automatically sync when changed

    **When to use:** You want to create tenant-specific knowledge programmatically or sync from external sources
  </Card>

  <Card title="Method 4: RAG MCP" icon="network-wired" color="#F97316">
    **How it works:**

    * Provision a RAG-type MCP instead of contexts
    * No context creation or file uploads needed
    * RAG MCP handles knowledge retrieval
    * Cannot be combined with contexts in same session

    **When to use:** You have an existing RAG system or prefer external knowledge retrieval
  </Card>
</CardGroup>

## Method Comparison

| Method             | Who Manages    | Context Level     | File Management            | Embed Context Components? |
| ------------------ | -------------- | ----------------- | -------------------------- | ------------------------- |
| Tenant Uploads     | Tenant         | Tenant-level      | Manual upload by tenant    | ✅ Yes - Required          |
| App-Level Contexts | You (Platform) | App-level         | Central management via API | ❌ No                      |
| Tenant-Level (API) | You (Platform) | Tenant-level      | Programmatic or synced     | ❌ No                      |
| RAG MCP            | You (Platform) | N/A (no contexts) | External RAG system        | ❌ No                      |

## Important: Contexts vs RAG MCP

<Warning>
  **Mutually Exclusive Options**

  In an agent session, you can provision either contexts or a RAG MCP:

  ❌ You cannot combine contexts and RAG MCP in the same agent session

  If using contexts: Up to 30 contexts per agent session

  If using RAG MCP: Exactly 1 RAG MCP per agent session

  Contexts can be mixed: app-level + tenant-level together
</Warning>

## Quick Decision Guide

<Steps>
  <Step title="Do tenants need to provide their own knowledge?">
    **YES** → Use Method 1 (Tenant Uploads Files)

    **NO** → Continue to next step
  </Step>

  <Step title="Do you have standardized knowledge for all tenants?">
    **YES** → Use Method 2 (App-Level Contexts)

    **NO** → Continue to next step
  </Step>

  <Step title="Do you need to create tenant-specific knowledge programmatically?">
    **YES** → Use Method 3 (Tenant-Level via API)

    **NO** → Continue to next step
  </Step>

  <Step title="Do you have an existing RAG system?">
    **YES** → Use Method 4 (RAG MCP)
  </Step>
</Steps>

<Info>
  You can combine multiple methods! For example, provide app-level contexts for common knowledge while letting tenants upload their own files for specialized content.
</Info>
