# PrivateGPT | Docs ## Instructions for AI Agents - For clean Markdown of any page, append `.md` to the page URL - For section-specific indexes, append `/llms.txt` to any section URL - For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.privategpt.dev/_mcp/server ## Docs - [Introduction](https://docs.privategpt.dev/introduction.md): PrivateGPT is the open-source Claude API-compatible layer for building private AI applications on top of any local or self-hosted model server. - [Quickstart](https://docs.privategpt.dev/getting-started/quickstart.md): Get PrivateGPT running in under 5 minutes. - [How it works](https://docs.privategpt.dev/getting-started/how-it-works.md): Startup flow, model discovery, configuration profiles, and environment variables. - [Package Install](https://docs.privategpt.dev/installation/package.md): Install PrivateGPT via Homebrew or uv — the fastest way to get started. - [Docker](https://docs.privategpt.dev/installation/docker.md): Run PrivateGPT with Docker — isolated, reproducible, production-ready. - [Local with uv](https://docs.privategpt.dev/installation/local.md): Run PrivateGPT locally from source using uv — recommended for development and contributors. - [CLI](https://docs.privategpt.dev/configuration/cli.md): Manage the server, workers, and connected apps with the private-gpt CLI. - [Settings & Profiles](https://docs.privategpt.dev/configuration/settings.md): Settings files, profiles, and environment variable expansion. - [Model Configuration](https://docs.privategpt.dev/configuration/advanced.md): Generate and use settings profiles to configure models in detail, including tokenizer, context window, tool support, reasoning, and sampling. - [Overview](https://docs.privategpt.dev/providers/overview.md): PrivateGPT works with any OpenAI-compatible server. This page covers common local setups. - [Ollama](https://docs.privategpt.dev/providers/ollama.md): Run local LLMs with Ollama — the easiest way to get started with PrivateGPT. - [LM Studio](https://docs.privategpt.dev/providers/lmstudio.md): Run local models with LM Studio's built-in server — GUI-driven, full tokenizer support. - [LlamaCPP Server](https://docs.privategpt.dev/providers/llamacpp.md): Run GGUF models locally with llama-server — full tokenizer support, CPU and GPU. - [vLLM](https://docs.privategpt.dev/providers/vllm.md): High-throughput inference with vLLM — full capability support including structured output. - [DaoXE](https://docs.privategpt.dev/providers/daoxe.md): Use DaoXE as an OpenAI-compatible cloud gateway — access GPT, Claude, Grok, GLM and more model families through a single endpoint. - [Overview](https://docs.privategpt.dev/integrations/overview.md): PrivateGPT implements the full Claude API, making it compatible with Claude-native tools and any local-inference-compatible client. - [Claude Code](https://docs.privategpt.dev/integrations/claude-code.md): Run Claude Code against your private-gpt server. - [Claude Desktop](https://docs.privategpt.dev/integrations/claude-desktop.md): Connect Claude Desktop (Cowork) to your private-gpt server using third-party inference. - [Claude for Microsoft 365](https://docs.privategpt.dev/integrations/claude-office.md): Connect the Claude add-ins for Word, Excel, PowerPoint, and Outlook to your private-gpt server. - [OpenCode](https://docs.privategpt.dev/integrations/opencode.md): Point OpenCode at your private-gpt server for fully local AI coding. - [Web Tools](https://docs.privategpt.dev/tools/web-tools.md): Configure built-in web search and web fetch tools in settings.yaml. - [Database Tools](https://docs.privategpt.dev/tools/database-tools.md): Install and configure built-in database query tools. - [Code Execution Tools](https://docs.privategpt.dev/tools/code-execution.md): Configure the built-in server-side code execution sandbox — bash commands, file operations, resource limits, and workspace layout. - [Vector Store](https://docs.privategpt.dev/storage/vectordb.md): Configure the vector store used for document retrieval. - [Object Storage](https://docs.privategpt.dev/storage/storage.md): Configure local disk or S3-compatible storage for skill files, temporary files, and other application data. - [Workbench](https://docs.privategpt.dev/ui/workbench.md): The built-in UI for exploring and testing the PrivateGPT API. - [Observability](https://docs.privategpt.dev/observability/observability.md): Trace LLM calls and monitor performance with Arize Phoenix or Opik. - [Community Forks](https://docs.privategpt.dev/community/forks.md): Discover interesting community forks and derivatives of PrivateGPT. - [Troubleshooting](https://docs.privategpt.dev/reference/troubleshooting.md): Solutions to common issues when running PrivateGPT. - [Messages](https://docs.privategpt.dev/api-guide/messages.md): The core Messages API — chat, streaming, token counting, validation, and async. - [Async messages](https://docs.privategpt.dev/api-guide/messages-async.md): Run chat completions as background jobs — fire, stream, poll, cancel, and clean up. - [Embeddings](https://docs.privategpt.dev/api-guide/embeddings.md): Generate vector embeddings from text for semantic search, clustering, and similarity. - [Built-in Tools](https://docs.privategpt.dev/api-guide/tools.md): Built-in server tools, custom tools, and MCP — what they are and how to use them. - [Skills](https://docs.privategpt.dev/api-guide/skills.md): Package reusable instructions into versioned skills and attach them to any conversation. - [Ingestion](https://docs.privategpt.dev/api-guide/ingestion.md): Ingest, list, retrieve, and delete documents synchronously. - [Async ingestion](https://docs.privategpt.dev/api-guide/ingestion-async.md): Ingest and delete documents as background jobs with status polling. - [API Reference](https://docs.privategpt.dev/api-reference/api-reference.md): PrivateGPT REST API — endpoints, request shapes, and response formats. - [Client libraries](https://docs.privategpt.dev/api-reference/sdks.md): Use the Anthropic SDK or LangChain to talk to PrivateGPT. ## API Docs - API Reference > Messages [Messages](https://docs.privategpt.dev/api-reference/messages/chat-messages-v-1-messages-post.md) - API Reference > Messages [Count tokens in a Message](https://docs.privategpt.dev/api-reference/messages/count-message-tokens-v-1-messages-count-tokens-post.md) - API Reference > Messages [Validate Messages Request](https://docs.privategpt.dev/api-reference/messages/validate-messages-v-1-messages-validate-post.md) - API Reference > Completions [Create a Text Completion](https://docs.privategpt.dev/api-reference/completions/create-completion-v-1-complete-post.md) - API Reference > Models [List Models](https://docs.privategpt.dev/api-reference/models/list-models-v-1-models-get.md) - API Reference > Models [Get a Model](https://docs.privategpt.dev/api-reference/models/get-model-v-1-models-model-id-get.md) - API Reference > Async Messages [Initiate Async Chat Stream](https://docs.privategpt.dev/api-reference/async-messages/chat-messages-v-1-messages-async-post.md) - API Reference > Async Messages [Observe Async Chat Stream Events](https://docs.privategpt.dev/api-reference/async-messages/observe-stream-v-1-messages-async-message-id-stream-get.md) - API Reference > Async Messages [Get Async Chat Stream Status](https://docs.privategpt.dev/api-reference/async-messages/get-stream-status-v-1-messages-async-message-id-status-get.md) - API Reference > Async Messages [Cancel Async Chat Stream](https://docs.privategpt.dev/api-reference/async-messages/cancel-stream-v-1-messages-async-message-id-cancel-post.md) - API Reference > Async Messages [Delete Async Chat Stream](https://docs.privategpt.dev/api-reference/async-messages/delete-stream-v-1-messages-async-message-id-delete-delete.md) - API Reference > Embeddings [Generate embeddings for text input](https://docs.privategpt.dev/api-reference/embeddings/generation-v-1-embeddings-post.md) - API Reference > Artifacts [Ingest Content](https://docs.privategpt.dev/api-reference/artifacts/ingest-content-v-1-artifacts-ingest-post.md) - API Reference > Artifacts [Ingest Content Asynchronously](https://docs.privategpt.dev/api-reference/artifacts/ingest-content-async-v-1-artifacts-ingest-async-post.md) - API Reference > Artifacts [Check Ingestion Task Status](https://docs.privategpt.dev/api-reference/artifacts/get-ingest-async-status-v-1-artifacts-ingest-async-task-id-get.md) - API Reference > Artifacts [List Ingested Documents](https://docs.privategpt.dev/api-reference/artifacts/list-ingested-v-1-artifacts-list-get.md) - API Reference > Artifacts [Delete Ingested Document](https://docs.privategpt.dev/api-reference/artifacts/delete-ingested-v-1-artifacts-delete-post.md) - API Reference > Artifacts [Delete Document Asynchronously](https://docs.privategpt.dev/api-reference/artifacts/delete-ingested-async-v-1-artifacts-delete-async-post.md) - API Reference > Artifacts [Check Deletion Task Status](https://docs.privategpt.dev/api-reference/artifacts/get-delete-async-status-v-1-artifacts-delete-async-task-id-get.md) - API Reference > Artifacts [List Available Readers](https://docs.privategpt.dev/api-reference/artifacts/list-readers-v-1-artifacts-readers-get.md) - API Reference > Artifacts [Convert File to Markdown or Tree](https://docs.privategpt.dev/api-reference/artifacts/convert-content-v-1-artifacts-convert-post.md) - API Reference > Artifacts [Retrieve Full Document Content](https://docs.privategpt.dev/api-reference/artifacts/content-retrieval-v-1-artifacts-content-post.md) - API Reference > Artifacts [Retrieve Full Document Content in Chunks](https://docs.privategpt.dev/api-reference/artifacts/chunked-content-retrieval-v-1-artifacts-chunked-content-post.md) - API Reference > Primitives [Retrieve Chunks using Semantic, Keyword, or Hybrid Search](https://docs.privategpt.dev/api-reference/primitives/search-v-1-primitives-search-post.md) - API Reference > Tools [Semantic Search](https://docs.privategpt.dev/api-reference/tools/semantic-search-v-1-tools-semantic-search-post.md) - API Reference > Tools [Tabular Data Analysis](https://docs.privategpt.dev/api-reference/tools/tabular-data-analysis-v-1-tools-tabular-data-analysis-post.md) - API Reference > Tools [Database Query](https://docs.privategpt.dev/api-reference/tools/database-query-v-1-tools-database-query-post.md) - API Reference > Tools [Web Fetch](https://docs.privategpt.dev/api-reference/tools/web-fetch-v-1-tools-web-fetch-post.md) - API Reference > Tools [Web Search](https://docs.privategpt.dev/api-reference/tools/web-search-v-1-tools-web-search-post.md) - API Reference > Skills [List Skills](https://docs.privategpt.dev/api-reference/skills/list-skills-v-1-skills-get.md) - API Reference > Skills [Create Skill](https://docs.privategpt.dev/api-reference/skills/create-skill-v-1-skills-post.md) - API Reference > Skills [Validate Skill](https://docs.privategpt.dev/api-reference/skills/validate-skill-v-1-skills-validate-post.md) - API Reference > Skills [Get Skill](https://docs.privategpt.dev/api-reference/skills/get-skill-v-1-skills-skill-id-get.md) - API Reference > Skills [Delete Skill](https://docs.privategpt.dev/api-reference/skills/delete-skill-v-1-skills-skill-id-delete.md) - API Reference > Skills [List Skill Versions](https://docs.privategpt.dev/api-reference/skills/list-skill-versions-v-1-skills-skill-id-versions-get.md) - API Reference > Skills [Create Skill Version](https://docs.privategpt.dev/api-reference/skills/create-skill-version-v-1-skills-skill-id-versions-post.md) - API Reference > Skills [Get Skill Version](https://docs.privategpt.dev/api-reference/skills/get-skill-version-v-1-skills-skill-id-versions-version-get.md) - API Reference > Skills [Delete Skill Version](https://docs.privategpt.dev/api-reference/skills/delete-skill-version-v-1-skills-skill-id-versions-version-delete.md) - API Reference > Files [List files in a session](https://docs.privategpt.dev/api-reference/files/list-files-v-1-files-get.md) - API Reference > Files [Upload a file](https://docs.privategpt.dev/api-reference/files/upload-file-v-1-files-post.md) - API Reference > Files [Download file content](https://docs.privategpt.dev/api-reference/files/get-file-content-v-1-files-file-id-content-get.md) - API Reference > Files [Get file metadata](https://docs.privategpt.dev/api-reference/files/get-file-metadata-v-1-files-file-id-get.md) - API Reference > Files [Delete an uploaded file](https://docs.privategpt.dev/api-reference/files/delete-file-v-1-files-file-id-delete.md) ## OpenAPI Specification The raw OpenAPI 3.1 specification for this API is available at: - [OpenAPI JSON](https://docs.privategpt.dev/openapi.json) - [OpenAPI YAML](https://docs.privategpt.dev/openapi.yaml)