Goal: get OpenBB 4.7.2 running locally as an open source investment research stack – Python SDK, REST on port 6900, optional MCP – without a feature tour. Deploy, configure, verify, fix what breaks.
OpenBB (Open Data Platform) is the pip-installable layer that standardizes public and licensed market data for analysts and quants. The PyPI line hit 4.7.2 on 26 May 2026; one env can feed notebooks, FastAPI, Workspace backends, and Excel-style workflows from the same packages.
System requirements before you touch pip
Official install docs assume a machine that already runs modern Python. Still respect the RAM floor – extension-heavy installs and the first static build chew memory hard.
| Item | Minimum | Recommended |
|---|---|---|
| Python | 3.10 | 3.11-3.13 (3.14 supported since 4.7.0) |
| RAM | – | 8 GB+ |
| CPU / OS | Windows 11 or macOS Big Sur+ | CPU ≤5 years old; patched Linux/macOS/Windows |
| Disk | A few GB free | More for openbb[all] or Desktop/Miniforge |
| Network | HTTPS to PyPI and providers | Stable link (Desktop timeouts are often network/permission) |
Never install into system Python or Conda base. Dedicated venv or conda env only.
Download sources for open source investment research
Primary path: pypi.org/project/openbb – pip install openbb.
- GitHub monorepo:OpenBB-finance/OpenBB (source, Dockerfiles, Desktop assets)
- ODP Desktop: releases tag ODP – latest stable called out as v1.0.2 on the rolling “Latest Stable” release
- Docs hub:docs.openbb.co/python/installation
Published package license is AGPL-3.0-only. Prefer the PyPI metapackage unless you need editable source or a custom image.
Install OpenBB 4.7.2 step by step
Default path: venv + pip. Copy-paste for the current PyPI pin.
- Create and activate an environment (Python 3.10+):
# Linux/macOS
python3 -m venv ~/.venvs/openbb
source ~/.venvs/openbb/bin/activate
python -m pip install -U pip setuptools wheel
# Windows (PowerShell)
python -m venv %USERPROFILE%.venvsopenbb
%USERPROFILE%.venvsopenbbScriptsActivate.ps1
python -m pip install -U pip setuptools wheel
- Install the platform (core + default providers):
pip install openbb==4.7.2
Charting, MCP, and the wider extension set in one shot:
pip install "openbb[all]==4.7.2"
- Rebuild static Python assets on every fresh or container install:
openbb-build
First import sometimes auto-builds. Interrupted builds leave ImportError: cannot import name 'OBBject_...' – the Errors FAQ and community threads treat an explicit openbb-build (env active) as the reliable fix for CLI and Docker.
- Optional surfaces:
pip install openbb-platform-api # openbb-api launcher
pip install openbb-cli # terminal UI wrapper
Docker alternative (API-focused)
docker build -f build/docker/platformAPI.Dockerfile -t openbb-platform:latest .
docker run -it --rm -p 6900:6900
-v ~/.openbb_platform:/root/.openbb_platform
openbb-platform:latest
Mount ~/.openbb_platform so credentials survive the container.
ODP Desktop alternative
Grab the OS installer from the ODP tag, pick install dir + Python for the initial openbb env, start the API from the tray (defaults: openbb-api --host 127.0.0.1 --port 6900). Env creation fails? Don’t “continue anyway” – you inherit a half-broken environment.
There’s a quiet trade here: a local OpenBB stack costs setup friction up front, then you stop renting a terminal just to pull the same public series into a notebook. Whether that trade is worth it depends on how often you actually leave the browser.
First-time configuration (minimum viable)
Settings live under ~/.openbb_platform/ (Windows: %USERPROFILE%.openbb_platform). First run creates user_settings.json if it’s missing.
{
"credentials": {
"fmp_api_key": "REPLACE_ME",
"fred_api_key": "REPLACE_ME",
"benzinga_api_key": "REPLACE_ME",
"tiingo_token": "REPLACE_ME"
},
"preferences": {
"data_directory": "~/OpenBBUserData",
"export_directory": "~/OpenBBUserData/exports"
}
}
Empty keys are fine for many free paths (yfinance, SEC, parts of FRED/FMP tiers). Paid connectors fail loud until keys exist. Session-only: obb.user.credentials.*. Or drop FMP_API_KEY=...-style lines in ~/.openbb_platform/.env.
Watch out: After adding or removing a provider package, rebuild before chasing “unknown provider.” The Python interface is compiled from installed extensions; API/MCP surfaces don’t always show the same symptom.
Verify the install works
Three checks – SDK, import path, API health.
# 1) SDK smoke test (yfinance-backed history often needs no key)
python -c "from openbb import obb; r = obb.equity.price.historical('IBM', provider='yfinance'); print(r.to_dataframe().tail(3))"
# 2) Confirm import path is the active env
python -c "import openbb; print(openbb.__file__)"
# 3) Launch API (default 127.0.0.1:6900)
openbb-api
Open http://127.0.0.1:6900, /docs, or /openapi.json. Console printed another port? Use it – the launcher hops to the next free port when 6900 is taken, so Workspace still pointed at :6900 looks “down” while the process is fine.
Think of openbb-build like compiling a plugin registry: pip drops parts on disk, but the namespace you import is a generated map of routers and return types. Skip the compile and that map is empty or half-written.
Common install errors and fixes
What actually breaks in GitHub issues, discussions, and the FAQ – not “check your wifi.”
ImportError: cannot import name 'OBBject_...' from openbb_core.app.provider_interface– Static assets missing or corrupted. Activate the env, runopenbb-build. Same class of failure afterpip install openbb[all] openbb-cliif the build never finished.- Provider validation (“input should be ‘fmp’ or ‘yfinance'” for a name you know you installed) – Extension absent, or present with stale assets.
pip install openbb-<provider>then rebuild. Optional:OPENBB_AUTO_BUILD=truein~/.openbb_platform/.env(it does not always fire). - Failed building wheel / CPython build errors – No binary wheel for your OS/arch/Python. Stay on supported CPython, install platform build tools (MSVC Build Tools on Windows), or use Desktop’s managed env. Don’t force 3.8-era stacks; the floor moved years ago. Partial Desktop envs after “continue anyway” belong here too.
- API “running” but Workspace can’t hit :6900 – Read the startup banner for the real bind. Kill the conflict or
openbb-api --port 6901. LAN:--host 0.0.0.0plus an intentional firewall hole.
Upgrade and uninstall
Upgrade in the same env:
pip install -U "openbb==4.7.2"
# or latest line:
pip install -U openbb
openbb-build
Extras users should reinstall openbb[all] so optional deps stay aligned. After major bumps, skim notes – 4.7.0 dropped the Polygon provider module from the repo and widened Python/Pandas support.
Uninstall (pip/venv):
pip uninstall -y openbb openbb-core openbb-platform-api openbb-cli
deactivate
rm -rf ~/.venvs/openbb # or your env path
Clean slate data: ~/.openbb_platform/ and ~/OpenBBUserData/. Desktop: tray Uninstall so Miniforge/envs leave with the app – Control Panel / uninstall.exe alone often leaves environments behind.
FAQ
Do I need API keys on day one?
No. Free providers already return usable equity and filings data. Add FMP, FRED, Intrinio, and friends only when you hit a paid or quota wall.
pip succeeded but from openbb import obb still explodes – what now?
Static-asset gap. Env active → openbb-build → retry import. Docker/CI: bake the build into the image after pip install; import-time auto-build is a poor bet headless. Debian + Python 3.12/3.13 threads often show OBBject_PetroleumStatusReport-style failures until rebuild.
Should I use Desktop, pip, or Docker?
Pip/venv if you already live in notebooks. Docker when you only want REST/MCP and isolation. ODP Desktop when you want tray-managed Conda, Jupyter, and one-click API start on macOS/Windows without fighting shell toolchains. Mixing Desktop’s env with a random system pip is how you end up with two OpenBB installs and weeks of “wrong package” noise – pick one surface and stick to it for the first week.
Next: activate the env, run pip install openbb==4.7.2 && openbb-build && openbb-api, open http://127.0.0.1:6900/docs, confirm OpenAPI loads, then wire Workspace or agents.