Data sources are the foundation for retrieval-augmented generation (RAG) in meinGPT. Content from connected sources is indexed and made available to your assistants as knowledge. You can also attach a data source directly to a chat when you only want to look something up once.
All six sources above run in meinGPT Cloud. If source files and the search
index should stay in your own network instead, that's the
Outpost — a separate path, not a checkbox
on this page.
Answers from a data source include numbered citations as clickable badges next to the text. Clicking one opens a preview with the title, location, and an excerpt of the original document - and, depending on the data source's sharing settings, an option to open or download the original file.
Attention
Citation isn't clickable? That is not expected behavior. Contact support@meingpt.com with a link to the affected chat so we can investigate.
How much is available behind a citation is decided by a setting on the data source — not on the assistant. You find it under Settings → Data sources: click the source, open the Admin tab, setting "What employees get from this source".
Level
What leaves the source
Matching passages only
The matching passages and the file name
Text only
Plus the full text of the documents found
Original files
Plus the file itself
Only Original files unlocks opening and downloading the original file from a citation — and lets the assistant load an original file into the chat or the Code Sandbox when needed.
A cloud data source inherits the Cloud Vault's level by default; the selector shows which one that currently is (at present Original files). You only need a level of its own when one source should release less than the rest. For an Outpost data source the level is set exclusively in the Outpost app, where Text only is the preset; the platform only displays the reported value.
Note
A citation opens the copy stored in meinGPT, not a deep link into the source system. Jumping straight to the document in SharePoint or Google Drive is not part of a citation from a data pool.
Customer knowledge bases are often large. Hundreds or thousands of gigabytes of Word, PDF, and other files are not unusual. Sending every search query through every file would be far too slow. That is why a search index is built up front. It works similar to Google, just for your internal documents.
The initial indexing can take hours to days, depending on the data volume. Word, PDF, and similar formats are binary, so the text has to be extracted first. This one-time effort pays off in fast search results afterwards.
You do not have to wait for all of it. The index is built in two stages: keyword search first, semantic search second. A file is therefore searchable as soon as its keyword index is ready — semantic search follows in the background, file by file. You can see how far each stage has got under Indexing progress.
Search characteristics:
Keyword search: Finds exactly the terms you type — case numbers, article numbers, proper names. It is built first and is always available.
Semantic: Documents are converted into mathematical representations (called embeddings) that capture meaning, not just individual words. Can be turned off per data source.
Sorted by relevance: Hits are ranked by content fit, not by frequency of a search term. A document that thematically matches the question can rank higher than one with the exact keyword.
Number of results: By default, the ten most relevant sources are returned. The number is configurable in the settings.
Filename search: Besides content, you can also search specifically by filename, for example "Show me file XY".
Attention
No filtering by custom metadata fields. Data sources search file contents (semantically) and file names. You can additionally filter by built-in file properties: path, extension, MIME type, and created/modified dates. Custom metadata fields from source systems are not carried over as separate, filterable fields — at best they exist as plain text inside the document content, so they can only be found via semantic search, not filtered on reliably.
Each data pool has four settings that decide how it is searched (open the data pool → Overview tab):
Semantic search — additionally finds what matches in meaning but is worded differently. On by default. Turning it off is worth it when you search for exact terms anyway and the corpus is large: indexing then finishes far sooner and costs less.
Passages per answer — how many passages may go into a single answer (default 10, range 1 to 100).
Deep search(experimental) — hands retrieval to a dedicated search agent that runs several queries, broadening or narrowing them as needed, instead of a single direct search call. Cloud data pools only, and additionally requires deep search to be enabled for your organization.
Improve result order — currently has no effect. The switch stores a value that is not evaluated in any search path. Leave it off.
These settings apply per data pool, not per assistant — they take effect the same way whether the pool is used directly in a chat or through an assistant.
Turning semantic search off later deletes nothing. It only stops new files from being embedded — whatever is already embedded stays searchable. Turning it back on builds semantic search up gradually from the next sync run.
At the top of a data source's detail page, Indexing shows one bar per stage:
Keyword search — how many files are already searchable. Once the first files appear here, the data source is usable.
Semantic search — how far the embeddings have caught up. If semantic search is off for this source, that is stated here instead of a bar.
Below that you can see how many files did not make it into the index: failed and skipped ones, each with its reason — such as "no text in the file", "password protected" or "too large for the configured limits". Files whose extension is not on the list of file formats are not counted here: the sync never picks them up in the first place.
If the platform cannot query the progress right now, the section shows the message "Indexing status unavailable" instead — for a cloud data source (CloudVault) because the CloudVault did not answer this status check, for an Outpost data source because the Outpost is offline or unreachable.
Right after creating a source, this is normal
This message can appear before you have uploaded or synced a single file. It only means this one status check failed — not that anything is blocked. Uploading, connecting, and any indexing run already in progress are unaffected and keep working. If it does not clear on its own within a few minutes, contact meinGPT support.
Every cloud data source has its own Knowledge Map tab (open the data source → Knowledge Map). It shows how the documents in this pool are actually used - not manually curated, but computed from real searches over the last 30 days:
Folder activity: The folders the assistant returns to most often.
Knowledge map graph: A network of the documents most frequently retrieved together. Clicking a document shows its retrieval count and connected documents.
Note
The tab needs prior search activity. Until this pool has been searched, the tab shows a message that knowledge is being indexed - this is not an error. The first snapshot usually appears within a few minutes of a search happening against this pool.
Each data source shows a status dot for its current connection state:
Status
Meaning
🟢 Ready
Connected and syncing regularly.
🟠 Not ready
The connection exists, but the last sync failed or was incomplete.
🔴 Unreachable
The source could not be reached during the last check.
⚪ Unknown
Status has not been determined yet (e.g. right after creation).
Common causes of Unreachable for a single data source:
The source's access token (e.g. SharePoint, Google Drive, Confluence) has expired or was revoked
Permissions were revoked in the source system
Network or firewall changes on the source system's side
Attention
If all of your data sources show "Unreachable" at the same time — including sources with completely different underlying systems (e.g. SharePoint, Google Drive, and Confluence simultaneously) — this usually does not point to a problem with the individual sources, but to a temporary platform-side issue. In that case, contact meinGPT support instead of reconnecting individual sources.
Admins automatically get an email when there's a problem with a data pool:
Sync failing – a data pool has failed to sync several times in a row. New or changed documents stop being indexed until this is fixed.
Data source connection lost – an OAuth connection (e.g. SharePoint) repeatedly fails to refresh its access token.
Spike in sync errors – an unusually large share of files errored out during a sync.
Each email links directly to the affected data source in your settings. You can toggle these notifications individually under Settings → Notifications → Data vault alerts.
The Sync Logs tab has two sub-tabs: Runs shows recent sync runs as a numeric summary, Logs shows the error message for each individual file
Each row in the Runs sub-tab has three numeric columns:
Column
Meaning
Found
How many files this run found in the source - the full listing of the configured scope, not just new or changed files
Ingested
How many of those found files were actually processed and added to the index during this run
Errored
How many files failed during this run
Note
These three numbers apply only to that one run, not cumulatively to the whole data pool - they reset to 0 at the start of every new sync run. Two consecutive runs can therefore show very different values without that indicating a problem. For the total number of currently indexed files, see Indexing progress at the top of the detail page instead.
If the Errored count is above 0, switch to the Logs sub-tab, filter by Status = error, and open the affected row - the Message column contains the exact error for that specific file, for example a note about a metadata field that could not be processed. That message is the starting point for troubleshooting; if it doesn't make clear what to do, contact support@meingpt.com with the exact wording.
Open the affected data pool under Settings → Data sources
Click Re-Synchronize to start a new run immediately
Every sync run – whether automatic or manually triggered – also removes entries for files that have been deleted from the linked source. A manual resync is therefore the right way to clear out stale index entries without having to recreate the data source. In rare cases, a single deletion may be missed during the sync and will still be present after a resync – if that happens, reach out to meinGPT support so we can look at the affected data source directly.
This message can appear the very first time you connect an OAuth source, before any sync has run - usually because the Microsoft or Google sign-in window closed without returning a valid authorization code. For SharePoint, the most common cause is missing admin consent for the meinGPT application in your Microsoft tenant; details and other causes: SharePoint/OneDrive troubleshooting.
Spreadsheets: XLSX and XLS (with caveats, see below), and CSV
PDF
Email files: EML and MSG (see "Emails and attachments" below)
TXT, Markdown, RTF, EPUB, HTML
What gets skipped during sync
File extensions not listed here. Only the formats above are made searchable. Files with other extensions (for example .json) are not added to the data pool during sync - they appear neither in the file list, nor as an error in the Sync Logs, nor in the count of skipped files. If an expected file is missing, check its extension against the list above first.
Image files. PNG, JPG and other image formats are not on the list and are skipped by default. Images inside documents are read, however - how that works, how to lay images out for it, and how an image becomes visible in chat is covered in Images in a data pool.
Encrypted or rights-managed PDFs. If a PDF file is password-protected or carries a rights-management (DRM) profile, meinGPT can't read its content or make it searchable. Remove the password protection, or export the document without the DRM restriction, before adding it to the data pool.
Excel tables are a special case. When splitting documents into searchable chunks (a process called chunking), the table context gets lost - a single data row without its column headers often no longer makes sense. For calculations, analyses, and visualizations from Excel files, use the Code Sandbox instead. It processes the original file directly.
OneNote workaround. OneNote files are currently not indexed directly because the format is proprietary. Workaround: export OneNote content regularly via Make or n8n, as PDF or text. The exported files can then be connected like any other source.
Attention
OneNote notebooks don't show up in the sync status - not even as "skipped". Like every unlisted file type, OneNote notebooks and sections appear neither in the file list, nor in the Sync Logs' error messages, nor in the count of skipped files (see Indexing progress). If the connected SharePoint source also contains other supported files, those still index normally - so the sync status can show something like "1 indexed - No errors" even though the OneNote notebook itself never made it into the index. A clean sync status is therefore not proof that OneNote content is searchable. Check the data source's file list directly for the files you expect, or use the export workaround described above.
You can place email files in EML (open standard) and MSG (Outlook) format directly into a data pool. The subject, sender, recipients, and message body are extracted and made searchable. Both formats are supported equally - you do not need to convert MSG to EML beforehand.
Attention
Attachments inside email files are a special case. For smaller emails, the content of attachments (e.g. a PDF) is read and indexed. For larger emails, attachments are reduced to their filename for performance reasons - their content is then not searchable. If you want a PDF attachment indexed as reliably as a PDF that sits directly in the data pool, also add the attachment as its own file to the data pool.
A newly created data pool starts out private to its creator - nobody else has access automatically, not even through a linked assistant. To give others access, share the pool explicitly: with individual users, a team, or workspace-wide for everyone - currently always as view-only access ("Kann ansehen" in the sharing dialog). You can additionally restrict access to specific teams: create teams in the admin interface and assign them to specific data sources. This lets you control which user groups see which data.
Sharing an assistant does not override a data pool's own access restriction. If a data pool is not shared with everyone - for example only with specific users, a team, or admins - that restriction applies regardless of who the associated assistant is shared with. A user who can open the assistant but has no access of their own to the data pool gets no hits when asking about it - the assistant may report something like "no matching documents found," even though the same data pool works normally for its creator or other authorized users. In that case, check the data pool's own sharing settings under Settings → Data sources, not just the assistant's sharing settings.
Note
"Settings → Data sources" is an admin area. Only workspace admins see this menu item (under "Knowledge & integrations" in the settings) - it does not appear in a member's personal profile settings, even if that person created the assistant in question themselves. If you are not an admin, you cannot view or change a data pool's sharing settings yourself - ask an admin to check the sharing settings for the affected data pool instead.
Not every request needs the same processing depth. meinGPT decides per request how deep it has to go. There are three stages:
Stage
What happens
Sufficient for
1. Search
The platform searches all configured sources and returns snippets and filenames
Simple questions like "Is there a document about topic X?"
2. Full-text retrieval
The model loads the complete content of individual files that look relevant after stage 1
Content questions about individual, not overly large documents
3. Code Sandbox
The original file is opened in an isolated environment (the sandbox) and processed with Python
Calculations, analyses, charts from large or structured files (e.g. Excel with many rows)
You do not have to configure anything manually. More about the sandbox: Code Sandbox.
Attention
Full-text retrieval can use a lot of context. Stage 2 loads the complete content of a file or Confluence page into the chat at once – not just the relevant excerpt. When several large sources are connected to the same assistant or chat (for example a data source and a Confluence space), a single question can already consume a significant share of the model's context window. Keep an eye on the context window indicator in the chat input, and prefer narrow, targeted questions for very large or heavily nested pages (e.g. Confluence pages with many embedded macros). More on this: Chat too large for the model.
Note
Note for on-premise setups: Stage 3 (sandbox) temporarily uploads original files into the meinGPT Cloud, because the sandbox environments run there — but only when that Outpost folder is set to Text and original files (ORIGINAL_FILES). With Text only (FULL_TEXT) or the legacy PASSAGES level, the sandbox request is rejected before an original file is uploaded. Permitted files are deleted immediately after processing. For privacy-sensitive setups, communicate this transparently to your stakeholders.
If you want to use SharePoint data in meinGPT, you have two options: the native Microsoft 365 Connector, or a data source with SharePoint as a source. Both have their strengths.
Criterion
Microsoft 365 Connector
Data source with SharePoint source
Search method
Direct access in real time
Pre-built index, sync every 15 minutes
Permissions
Respects SharePoint permissions automatically (at user level via OAuth)
Admin configures manually. SharePoint permissions do not apply automatically
Authentication
Each user authenticates individually
Centrally configured
Scaling
Good for targeted research in single sites or folders
Scales to large data volumes, multiple sources combinable
Combining sources
Only SharePoint and OneDrive
Multiple sources in one data source (SharePoint, local files, Drive, …)
Rule of thumb:
Microsoft 365 Connector for most SharePoint use cases. Especially when each user should only see what they are allowed to see in SharePoint itself.
Data source when you want to index large stocks centrally, mix multiple sources, or build a central knowledge base without individual permissions.
There is no hard data limit. But the more data a data source covers, the more irrelevant hits compete with the relevant ones. Recommendation:
When you connect a SharePoint/OneDrive folder, all subfolders are included automatically - you don't need to add subfolders as their own data source
Connect 500 to 1,000 relevant files per data source in a targeted way, not the entire SharePoint
Prefer multiple specialized data sources over one huge one, for example "HR policies", "Product specifications", "Sales material"
The more focused a data source, the better the results
Attention
The same folder tree in more than one data source means duplicate indexing. There is no platform-wide deduplication across data sources - if two data sources point at the same or an overlapping SharePoint/OneDrive folder, that content is fully crawled, chunked, and embedded twice, with matching storage and compute cost. If an assistant is connected to both data sources, the same file can also appear twice in the search results for a single query. Connect a folder as a data source only once, then share that one data source with every assistant that needs it, instead of creating a separate data source per assistant on the same folder.
The short description of a data source is not just documentation. The model uses it to decide whether a data source is relevant for a given request. A poor description leads to data sources not being searched even when they should be.
Good: "Contains all internal HR policies, process descriptions, and onboarding documents."
In assistant instructions, it pays to reference data sources explicitly. For example: "Start every conversation by retrieving relevant information from the connected data source." This makes data source usage more reliable.
Symptom: the assistant ignores a linked data pool. If an assistant answers from general knowledge instead of the data pool even though the pool is correctly synced and linked, a missing reference in the system prompt is the most common cause — not a misconfiguration of the data pool itself. Check first whether the instructions explicitly mention the data pool before investigating sync status or permissions.
If you want to run your own on-premise knowledge infrastructure, for example for regulated industries or special security requirements, you can run your own Outpost. Source files and the search index remain stored there; there is no permanent central copy. For a request, however, the Outpost transmits exactly what you released per folder on the Outpost: extracted text and metadata, or a copy of the original file as well. There is no second setting for this in the meinGPT web console. Temporary sandbox processing is described above.
Besides the six Cloud sources above and manually uploaded files, there are folders and network drives only an Outpost can read. The full overview with the Cloud-vs-Outpost distinction: Data sources.