Security policy
August 13, 2026 ยท View on GitHub
Reporting a vulnerability
Do not publish credentials, workbook samples, private paths, or exploit details in a public issue. Use GitHub private vulnerability reporting when it is available, or contact the repository owner through a private GitHub channel. Include the affected version, impact, minimal reproduction, and suggested mitigation without attaching real business data.
If a credential may have been committed, rotate or revoke it first. Removing it from the latest commit is not sufficient because Git history and forks may retain it.
Deployment boundary
TableRAG is designed for local, read-only access to spreadsheet catalogs.
- Keep Streamable HTTP and SSE transports bound to
127.0.0.1unless authentication, TLS, and an explicit network policy are provided externally. - Treat project YAML paths, generated DuckDB catalogs, source spreadsheets, logs, and query output as potentially sensitive.
- Do not place secrets in project YAML. Use an external secret store for any future authenticated integration.
- Review confirmed source scope before building; only included files and Sheets should enter the semantic catalog.
- MCP tools are read-only, but their responses can reveal values already present in the configured catalog. Apply the same access controls as the source spreadsheets.
Repository checks
The repository safety check scans tracked files for high-confidence credential formats, machine-specific paths, local project files, private-key files, workbooks, and generated catalogs:
uv run python scripts\check_repository_secrets.py --include-untracked
This check reduces accidental disclosure risk but does not replace a review of Git history before making a private repository public.