openbb-mcp-server: Refactor for v5 - Spec, Config, Packaging, Test Coverage (#7495)
* stash some changes
* add more robust testing
* mypy
* point PR at V5
* introduce spec file
* codespell
* test fix
* fix workflow environment setup
* fix workflow environment setup
* fix workflow environment setup
* add pyyaml to dependencies
* split lint jobs
* fix workflow environment setup
* fix workflow environment setup
* workflow env setup
* workflow env setup
* clean up code comments
* add auth hook entrypoints
* codespell
* add codegen feature
* codespell
* move _unpack into dispatchers for consistency with codegen packages
* surface nested models in the response
* fix missing coverage in CI
* socrata updates
* test fix
* detect plotly output
* add --include and --exclude flags from generate-extension command
* refactor mcp server for v5
* test action
* fix tests
* tests
* test fixture name
* revert: drop unrelated provider/README changes from mcp-server refactor
Strip the changes to ``README.md`` and ``openbb_platform/providers/{imf,
tradingeconomics,yfinance}`` that snuck into 4ac3602 (refactor mcp server
for v5). Those files are out of scope for the mcp-server work and were
modified inadvertently — restore them to their pre-4ac3602 state.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
* tests and workflows
* fix workflow
* tests and workflows
* tests and workflows
* tests and workflows
* tests and workflows
* beartype shim for 3.15
* muck around with beartype for 3.15
* muck around with beartype for 3.15
* no 3.15 runners for mcp-server
* update skill files
* cap test matrix at python 3.14
* merge branch v5
* no useless comments
* platform controller command description split
* merge URL overloads from path params
* exclude none and unset from model dump
* refactor for fastmcp4
* wrap markdown lines that are too long
---------
Co-authored-by: deeleeramone <>
Co-authored-by: Copilot <copilot@github.com>
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Open Data Platform by OpenBB (ODP) is the open-source toolset that helps data engineers integrate proprietary, licensed, and public data sources into downstream applications like AI copilots and research dashboards.
ODP operates as the "connect once, consume everywhere" infrastructure layer that consolidates and exposes data to multiple surfaces at once: Python environments for quants, OpenBB Workspace and Excel for analysts, MCP servers for AI agents, and REST APIs for other applications.
Get started with: pip install openbb
from openbb import obb
output = obb.equity.price.historical("AAPL")
df = output.to_dataframe()
Data integrations available can be found here: https://docs.openbb.co/python/reference
OpenBB Workspace
While the Open Data Platform provides the open-source data integration foundation, OpenBB Workspace offers the enterprise UI for analysts to visualize datasets and leverage AI agents. The platform's "connect once, consume everywhere" architecture enables seamless integration between the two.
You can find OpenBB Workspace at https://pro.openbb.co.
Data integration:
- You can learn more about adding data to the OpenBB workspace from the docs or this open source repository.
AI Agents integration:
- You can learn more about adding AI agents to the OpenBB workspace from this open source repository.
Integrating Open Data Platform to the OpenBB Workspace
Connect this library to the OpenBB Workspace with a few simple commands, in a Python (3.9.21 - 3.12) environment.
Run an ODP backend
- Install the packages.
pip install "openbb[all]"
- Start the API server over localhost.
openbb-api
This will launch a FastAPI server, via Uvicorn, at 127.0.0.1:6900.
You can check that it works by going to http://127.0.0.1:6900.
Integrate the ODP Backend to OpenBB Workspace
Sign-in to the OpenBB Workspace, and follow the following steps:
- Go to the "Apps" tab
- Click on "Connect backend"
- Fill in the form with: Name: Open Data Platform URL: http://127.0.0.1:6900
- Click on "Test". You should get a "Test successful" with the number of apps found.
- Click on "Add".
That's it.
Table of Contents
1. Installation
The ODP Python Package can be installed from PyPI package by running pip install openbb
or by cloning the repository directly with git clone https://github.com/OpenBB-finance/OpenBB.git.
Please find more about the installation process, in the OpenBB Documentation.
ODP CLI installation
The ODP CLI is a command-line interface that allows you to access the ODP directly from your command line.
It can be installed by running pip install openbb-cli
or by cloning the repository directly with git clone https://github.com/OpenBB-finance/OpenBB.git.
Please find more about the installation process in the OpenBB Documentation.
2. Contributing
There are three main ways of contributing to this project. (Hopefully you have starred the project by now ⭐️)
Become a Contributor
- More information on our Developer Documentation.
Create a GitHub ticket
Before creating a ticket make sure the one you are creating doesn't exist already among the existing issues
Provide feedback
We are most active on our Discord, but feel free to reach out to us in any of our social media for feedback.
3. License
Distributed under the Apache License, Version 2.0. See LICENSE for more information.
4. Disclaimer
Trading in financial instruments involves high risks including the risk of losing some, or all, of your investment amount, and may not be suitable for all investors.
Before deciding to trade in a financial instrument you should be fully informed of the risks and costs associated with trading the financial markets, carefully consider your investment objectives, level of experience, and risk appetite, and seek professional advice where needed.
The data contained in the Open Data Platform is not necessarily accurate.
OpenBB and any provider of the data contained in this website will not accept liability for any loss or damage as a result of your trading, or your reliance on the information displayed.
All names, logos, and brands of third parties that may be referenced in our sites, products or documentation are trademarks of their respective owners. Unless otherwise specified, OpenBB and its products and services are not endorsed by, sponsored by, or affiliated with these third parties.
Our use of these names, logos, and brands is for identification purposes only, and does not imply any such endorsement, sponsorship, or affiliation.
5. Contacts
If you have any questions about the platform or anything OpenBB, feel free to email us at support@openbb.co
If you want to say hi, or are interested in partnering with us, feel free to reach us at hello@openbb.co
Any of our social media platforms: openbb.co/links
6. Star History
This is a proxy of our growth and that we are just getting started.
But for more metrics important to us check openbb.co/open.
7. Contributors
OpenBB wouldn't be OpenBB without you. If we are going to disrupt financial industry, every contribution counts. Thank you for being part of this journey.