Self-hosted · in development · version 0.4.0
One AI chat for the whole family – on your own server
MultiGPT is a web app for your home network that everyone in the household uses to chat with different AI models – from OpenAI, Anthropic and Google to a local LM Studio. Chats, accounts and API keys stay on your own server.
The idea behind it
These are the goals for version 1. The status labels further down show what has been built so far.
Your own data
The interface, chat histories and API keys live only on your own server in your home network, in PostgreSQL. Keys are stored encrypted. The only traffic leaving the network is the requests to the AI providers you choose.
One chat for many providers
One interface for all connected models, with the model chosen per message. Local models from LM Studio join in for free whenever that PC is on.
Family accounts with roles and budgets
Every family member gets their own account. Roles define who may use which models and features. Monthly budgets keep costs in check.
What MultiGPT does and is meant to do
Login with protection
Log in, log out and change password. Five failed attempts lock the login for 15 minutes. No self-registration.
Debian package and systemd
A
.debwith its own venv, nginx with TLS, systemd units and themgpt-ctladmin command, currently 0.4.0. Since 0.3.4 from a signed apt repository for Debian 13, with updates viaapt upgrade. Docker as a fallback. A test install on a fresh Debian 13 is still pending.One chat, many providers
OpenAI, Anthropic, Google Gemini, OpenRouter and other OpenAI-compatible services via your own API keys. Answers are streamed, and the model can be switched per message. Unreachable providers are greyed out, and expired keys are reported clearly.
Local models with LM Studio
LM Studio on a PC in your home network as a provider. A status indicator shows whether it is running; its models are offered automatically, along with their capabilities. If you like, MultiGPT loads and unloads them itself, never beyond a memory budget for the graphics card. Local models cost nothing. In real use in a home network.
Capability matrix
Per model a main type (chat, image, embedding …) plus ticks for tools, image understanding, image editing and MCP. MultiGPT detects them automatically;
mgpt-ctl guess_capabilitiescatches up on older models.Attachments and image input
Paste, drag in or attach images and documents with the paper clip. Images go to models that understand them; EXIF data such as the location is removed first.
Projects
Group chats into projects with shared instructions, a default model and preselected collections – as in ChatGPT or Claude.
Share chats
Share a chat with accounts or groups, with RWUD permissions: read, write, update, delete. Revoking takes effect at once, and whoever sends pays. If a recipient deletes or archives something, the owner gets a notice.
Formulas and SVG preview
Mathematical formulas with KaTeX, self-hosted. SVG code in answers is shown as a preview – as an image only, with no scripts and nothing loaded from outside.
Family accounts with roles
Administrators, adults, teenagers, guests – each role with its own models and permissions. Chats stay private.
Billing accounts and budgets
Each provider bills through an account: in euros or dollars, in tokens only (local) or as a flat rate. Prices with a validity date, cache and reasoning; the ECB rate for dollars is fetched automatically. Budgets per account, role and person with a warning from 80 % and a block from 100 %.
Comparison mode
Ask two or three models the same question at once and see the answers side by side. They are kept as versions in the chat.
Context menu in the chat
Right-click or use the bar to quote selected text with its origin in the input field, several quotes in a row if you like. Plus follow-up questions, explain, simplify, translate, counter-arguments and finding evidence. Nothing is sent on its own.
Tools via MCP
Models call tools from MCP servers. Servers can be imported from “mcpServers” JSON and show their online status. The administrator decides per model which ones may use MCP; sensitive calls need a confirmation. With many tools the model looks up the ones it needs, so the context of local models is enough.
MultiGPT as an MCP server
Other programs such as n8n, Claude or your own agents control MultiGPT with an account’s API key: ask models, upload and search documents, follow and pause indexing, fetch files, read your own chats. A key can never do more than its account.
Calculations in a sandbox
Models calculate exactly with Python, numpy, scipy, sympy and mpmath and draw charts with matplotlib. The code runs isolated in bubblewrap: no network, no server files, no secrets.
Worksheets as PDF
Print-ready sheets – handwriting rulings 0 to 4, squared paper, arithmetic sheets with answers, clock faces, number lines, science worksheets, plus letters and tables. The server computes tasks and answers, not the model.
Ask your own documents
Collections of PDFs, Word, text and image files, scanned pages included via OCR. Search with PostgreSQL and pgvector. Embeddings and OCR can run fully locally via LM Studio, and folders from the NAS are read in periodically. Several documents at once, and runs can be paused.
Citations with locators
Sources with section, page and paragraph, in your own citation style: DIN ISO 690, APA 7, Harvard, Chicago, MLA 9 or BibTeX. Bibliographic data can be edited, including standards with number and edition.
Figures and document tools
A vision model describes images and charts in documents so that search can find them. Models with tools list documents, read the table of contents and whole sections – only in collections you may read yourself.
Web search with sources
Current information from the web via a self-hosted SearXNG, with links below the answer – for local models too.
Fetch pages, flag invented links
Models read web pages and small sites (with SSRF protection and robots.txt), including URLs from your question. Links in an answer without a source get a ⚠ and a “check sources” button.
Create and edit images
Generate images with OpenAI gpt-image or Gemini: as a tool of the chat model or in “image” mode. Editing areas, variations and classic editing follow.
Speak and listen
Speak your question, correct the text before sending, have answers read aloud.
Scratchpad
Collect material from chats, documents and the web with its origin, and turn it into a fully referenced document with verified quotes and a bibliography.
Runner
New in 0.4.0: a container on your own computer (rootless Podman) in which a model works like a coding tool – locked in and without network by default. Terminal, HTML preview and web server, work stored as a git bundle on the server, a time quota per role. The web ports are by default reachable on the home network without any login. Docker is not supported.
Placeholder: a screenshot of the chat view will go here.
Who is it for?
For technically minded people who want to give their family or household access to AI models without a separate subscription for each person and without collecting all chats at one provider. MultiGPT is meant for a server that is running anyway – a NAS or a small home server with Debian – and that is reachable only from the home network.
What exists today
You can chat with your own API keys: with OpenAI, Anthropic, Google Gemini, OpenRouter and LM Studio in your home network, with streamed answers, a model choice per message, Markdown, formulas and code highlighting. On top of that there are family accounts with roles, billing accounts with budgets, a comparison mode for two or three models, MCP tools with confirmation, questions to your own documents with citable sources (fully local via LM Studio if you like, which MultiGPT can manage itself), web search via a self-hosted SearXNG, encrypted API keys, an admin area for administrators and a Debian package that sets up the database, schema and nginx itself. Other programs such as n8n or Claude can use MultiGPT as an MCP server.
MultiGPT is installed on Debian 13 from a dedicated apt repository, so updates arrive with
the usual apt upgrade. How to set it up is described under
installation.
New in 0.3.0 and 0.3.1
- Attachments and image input: drag or paste images and documents into the chat; location data is stripped from photos.
- Projects and shared chats with RWUD permissions.
- Citations with section, page and paragraph in DIN ISO 690, APA, Harvard, Chicago, MLA or BibTeX; figures in documents become searchable.
- Image generation with OpenAI or Gemini.
- Calculations with numpy, sympy and matplotlib in an isolated sandbox.
- Page fetching for models and flagging of invented links.
- MCP with JSON import, online status and access per model, plus the capability matrix and billing accounts for costs.
- 0.3.1: print-ready worksheets as PDF – handwriting rulings, arithmetic sheets with answers, science worksheets.
Updating from 0.2? The required steps are under installation.
New in 0.3.2 to 0.3.6
- MultiGPT as an MCP server (0.3.2): n8n, Claude Desktop or your own agents ask models, upload and search documents and follow indexing – with an account’s API key, which can never do more than the account. Since 0.3.3 results come back directly as text, image or PDF; since 0.3.6 keys can also read the account’s own and shared chats.
- Model management for LM Studio (0.3.2): MultiGPT loads and unloads local models itself, never beyond a memory budget for the graphics card.
- Context menu in the chat (0.3.2): quote selected text with its origin, ask a follow-up, explain, translate. Plus tools on demand, so that many MCP tools fit into the context of local models.
- apt repository (0.3.4), prompt caching with Anthropic, an input history with arrow up/down and deleting an answer with what follows.
- Indexing of several documents at once (0.3.5); runs can be paused and resumed (0.3.6).
- Personal menu with profile picture (0.3.5), notices for shared chats and the version display (0.3.6).
- Costs: the ECB rate for dollars is fetched automatically, and accounts can be switched to USD; scipy in the sandbox for calculations (0.3.6).
New in 0.4.0
- Runner: a container on your own computer (rootless Podman) in which a model works like
a coding tool – locked in, with a terminal, preview and web server; the work is stored on
the server as a git bundle. It reaches devices on the home network via
sshortelnetonly if the administrator approves them, and only with a confirmation. The web server in the container is by default reachable by the whole home network without any login (can be restricted, see features). You download themultigpt-runnerprogram from MultiGPT; the guide is in the wiki under “Runner”. - “LM Studio” interface as a provider type of its own, tokens per second and time to the first token in the header of every answer, a swap prompt when graphics memory is full, and the reasoning effort per model.
- Scratchpad on the server for files from tool calls and reconnecting MCP servers in the chat.
More under features.
Status
It already runs for real with OpenAI and LM Studio; the other cloud providers have mostly been tested with simulations so far. A fresh Debian installation is still pending, and the Docker build is untested. There is no Docker support for the runner, only Podman. Image editing, voice, music, backup and the actual scratchpad follow – details in the roadmap.
The tech in one sentence
Python and Django 5.2 behind gunicorn, PostgreSQL with pgvector as the only database, an interface built from Django templates and a little vanilla JavaScript, no Node build step, no CDNs. More under architecture.
Note: the application’s user interface itself is in German.