OpenBB Documentation

website·Indexed 35 days ago

https://docs.openbb.co/

Documentation for OpenBB Workspace and the ODP Python Package. Includes guides for building custom AI agents with the OpenBB AI SDK, creating dashboards and apps, implementing various widget types (Plotly, TradingView, Vega-Lite), and deploying Workspace Lite or Enterprise versions for financial data analysis.

Tokens
270K
Snippets
1.1K
Records
2K
Agent score
68%

What's inside OpenBB

  1. Overview of Agent Rita reference agent

    Agent Rita is an open-source reference financial agent for OpenBB Workspace. It serves as a working example of how to implement a custom agent contract to connect to Workspace. Key capabilities include reading dashboard context, fetching widget data, executing SQL over loaded data, and streaming responses to the chat interface. Unlike Workspace MCP (which allows external agents to control a browser session), Agent Rita is the agent that Workspace sends chat requests to.
  2. Overview of Agent Rita reference agent

    Agent Rita is an open-source reference implementation of a financial agent for OpenBB Workspace. It demonstrates how to build an agent capable of reading dashboard context, fetching widget data, executing SQL over loaded data, and streaming responses via the Workspace chat interface. It is intended for developers to run, inspect, and fork rather than starting from the low-level agent contract.
    # Source code available at: https://github.com/OpenBB-finance/agent-rita
  3. Overview of openbb-core foundational features

    The openbb-core package is the foundational component of the OpenBB open-source ecosystem. It provides essential services and infrastructure that allow developers to build extensions once and deploy them across different environments. Key capabilities include:

    • API Routing: The Router class simplifies the definition of Python and Web endpoints.
    • Data Modeling: The Data class provides a flexible Pydantic model for various data structures.
    • Query Parameter Handling: The QueryParams class uses Pydantic to standardize queries across different providers.
    • Data Integrity: Built-in robust validation via Pydantic and support for dynamic/undefined fields.
  4. Overview of Open Data Platform (ODP) by OpenBB

    Open Data Platform (ODP) is an open-source infrastructure layer designed for data engineers to integrate proprietary, licensed, and public data sources. It follows a 'connect once, consume everywhere' model, allowing data to be exposed across multiple interfaces including Python environments for quants, OpenBB Workspace and Excel for analysts, MCP servers for AI agents, and REST APIs for general applications.
  5. Overview of OpenBB Desktop Environment Management

    OpenBB Desktop uses isolated Conda environments to prevent contamination between projects and the system. Each environment contains its own Python interpreter and resides within the OpenBB installation folder. Environments can be created, customized, and managed via the UI without requiring the command line.
  6. Overview of OpenBB Workspace MCP

    The OpenBB Workspace MCP enables external AI agents (e.g., Claude Code, Codex, Cursor) to interact with a live OpenBB Workspace session. It exposes the Workspace as a Model Context Protocol (MCP) server, allowing agents to read dashboard data, build new dashboards/widgets, and manage the Workspace state without relying on brittle browser automation. This differs from 'MCP tools in Copilot', where the Workspace acts as the client to call third-party MCP servers; in Workspace MCP, the Workspace is the server and the agent is the client.
  7. Overview of OBBject Plugin Extensions

    OBBject plugins are extensions that intercept application output immediately before it is returned to the user. Unlike standard OBBject extensions (which are post-return methods for the Python Interface), plugins are compatible with both the REST API and Python interfaces. They allow developers to conditionally alter the output of any command, including those they do not control. Because they allow arbitrary code execution, they are considered potentially dangerous and require explicit enablement in the environment.
  8. Overview of OpenBB Workspace Dashboards

    Dashboards in OpenBB Workspace are interactive environments used to organize multiple data widgets into cohesive analytical views. They support custom layouts via drag-and-drop, automatic data refreshing, and collaboration through sharing capabilities. Users can create visual hierarchies to monitor real-time market data, conduct analysis workflows, and generate reports.
  9. Retrieve fundamental metrics for a company using obb.equity.fundamental.metrics

    Use the obb.equity.fundamental.metrics function to get fundamental key metrics for a specific company. The function supports multiple providers including finviz, fmp, intrinio, and yfinance. You can request data for a single symbol or a list of symbols (supported by most providers).
    from openbb import obb
    
    # Get metrics for a single symbol
    obb.equity.fundamental.metrics(symbol='AAPL')
    
    # Get metrics with specific period and limit
    obb.equity.fundamental.metrics(symbol='AAPL', period='annual', limit=100)
  10. Implement OpenBB Workspace Enterprise security

    The recommended implementation process for securing the platform consists of:

    1. Security Assessment: Evaluate the current environment for deployment and integration needs.
    2. Architecture Design: Align the platform with existing network configurations and security controls.
    3. Security Configuration: Set up authentication integration, access controls, and audit logging.
    4. Testing & Validation: Verify all security controls before production deployment.
    5. Ongoing Management: Perform regular security reviews, access audits, and maintain security documentation.
  11. Get revenue breakdown by business segment using obb.equity.fundamental.revenue_per_segment

    Use the obb.equity.fundamental.revenue_per_segment function to retrieve the revenue breakdown by business segment for a given company over time. This function supports the fmp provider.
    from openbb import obb
    
    # Get annual revenue per segment for Apple
    obb.equity.fundamental.revenue_per_segment(symbol='AAPL')
    
    # Get quarterly revenue per segment for Apple
    obb.equity.fundamental.revenue_per_segment(symbol='AAPL', period='quarter')
  12. Get company balance sheet growth using obb.equity.fundamental.balance_growth

    Retrieve the growth of a company's balance sheet items over time using the obb.equity.fundamental.balance_growth function. This function supports multiple providers including fmp and sec.
    from openbb import obb
    
    # Get balance sheet growth for Apple
    obb.equity.fundamental.balance_growth(symbol='AAPL')
    
    # Get balance sheet growth for Apple limited to 10 entries
    obb.equity.fundamental.balance_growth(symbol='AAPL', limit=10)