About
OpenBB Widgets JSON MCP provides structured, programmatic access to the OpenBB widgets.json specification for building financial data applications. Rather than manually parsing lengthy documentation, developers can query specific widget types, configuration options, and parameter schemas through dedicated MCP tools. Key capabilities include: - Widget configuration tools for categories, grid sizes, refetch intervals, error handling, and render functions - Widget parameter documentation covering text inputs, date pickers, boolean toggles, dropdowns (including advanced and dependent variants), number inputs, and input forms - Widget type specifications for Plotly charts, JSON data, tables, and other visualization components - JSON schema generation for widgets, applications, and AI agents - Programmatic access to OpenBB developer documentation built with FastMCP
README
OpenBB Widgets JSON MCP Server
An MCP server that exposes the OpenBB widgets.json specification as structured, callable tools. Instead of parsing long-form documentation, developers (and AI coding assistants like Claude Code) can directly query widget types, inputs, and configuration examples through this server.
What This Does
Each widget type is mapped to its own tool—making it easy to generate, mix, and match valid JSON specs when building new OpenBB apps. The server is built with FastMCP, programmatically generated from the OpenBB developer docs, and hosted on Smithery.ai for discoverability.
The server provides:
Prerequisites
Quick Start
1. Clone the repository:
git clone https://github.com/OpenBB-finance/openbb-widgets-json-mcp.git
cd openbb-widgets-json-mcp
2. Install dependencies:
uv sync
3. Run the server:
uv run python main.py
4. Test it's working:
The server will start on http://localhost:8081
5. Launch Smithery Playground (optional):
npm install -g @smithery/cli
smithery playground --port 8081
This opens an interface to test the MCP tools interactively.Available MCP Tools
Via iterating through OpenBB docs
#### Widget Configuration Tools
widget_configuration_category_subcategory - Category and subcategory configurationwidget_configuration_error_handling - Error handling in widgetswidget_configuration_grid_size - Grid size configurationwidget_configuration_refetch_interval - Refetch interval settingswidget_configuration_render_functions - Render functionswidget_configuration_run_button - Run button configurationwidget_configuration_stale_time - Stale time settings#### Widget Parameter Tools
widget_parameters_text_input - Text input parameterswidget_parameters_date_picker - Date picker parameterswidget_parameters_boolean_toggle - Boolean toggle parameterswidget_parameters_dropdown - Dropdown parameterswidget_parameters_advanced_dropdown - Advanced dropdown parameterswidget_parameters_dependent_dropdown - Dependent dropdown parameterswidget_parameters_number_input - Number input parameterswidget_parameters_input_form - Input form parameterswidget_parameters_parameter_grouping - Parameter groupingwidget_parameters_parameter_positioning - Parameter positioningwidget_parameters_cell_click_grouping - Cell click grouping#### Widget Type Tools
widget_types_plotly_charts - Plotly chartswidget_types_highcharts - Highchartswidget_types_tradingview_charts - TradingView chartswidget_types_aggrid_table_charts - AgGrid table chartswidget_types_markdown - Markdown widgetswidget_types_html - HTML widgetswidget_types_metric - Metric widgetswidget_types_newsfeed - Newsfeed widgetswidget_types_file_viewer - File viewer widgetswidget_types_live_grid - Live grid widgetswidget_types_omni - Omni widgetswidget_types_ssrm_mode - SSRM mode#### JSON Reference Tools
json_specs_widgets_json_reference - Widgets JSON referencejson_specs_apps_json_reference - Apps JSON referencejson_specs_agents_json_reference - Agents JSON reference#### Additional Tools
data_integration - Data source integrationai_agents_ai_agents - AI agents documentationapps_apps - OpenBB applications documentationAdded ad-hoc
building_widgets_on_openbb - Essential boilerplate code for OpenBB widgets (ALWAYS call this first)Example: Playground Monte Carlo Widget
The playground/ folder contains a complete Monte Carlo simulation widget built using Claude Code and this MCP server. This demonstrates the full development workflow:
1. Claude Code queried the MCP server for OpenBB widget specifications 2. MCP tools provided boilerplate code, plotly chart documentation, and JSON reference specs 3. Generated widget includes: - 3 parameters: ticker (text), start_date (date), use_volatility_adjustment (boolean) - Plotly visualization with 50 simulation paths + percentile bands - Raw data mode returning pure simulation arrays - Run button for manual execution - Full OpenBB Workspace integration
To run the example:
cd playground
uv sync
uv run python main.py
This serves as a practical example of how AI coding assistants can leverage MCP servers to rapidly
Related MCP Servers
AI Research Assistant
hamid-vakilzadeh
AI Research Assistant provides comprehensive access to millions of academic papers through the Semantic Scholar and arXiv databases. This MCP server enables AI coding assistants to perform intelligent literature searches, citation network analysis, and paper content extraction without requiring an API key. Key features include: - Advanced paper search with multi-filter support by year ranges, citation thresholds, field of study, and publication type - Title matching with confidence scoring for finding specific papers - Batch operations supporting up to 500 papers per request - Citation analysis and network exploration for understanding research relationships - Full-text PDF extraction from arXiv and Wiley open-access content (Wiley TDM token required for institutional access) - Rate limits of 100 requests per 5 minutes with options to request higher limits through Semantic Scholar
Linkup
LinkupPlatform
Linkup is a real-time web search and content extraction service that enables AI assistants to search the web and retrieve information from trusted sources. It provides source-backed answers with citations, making it ideal for fact-checking, news gathering, and research tasks. Key features of Linkup: - Real-time web search using natural language queries to find current information, news, and data - Page fetching to extract and read content from any webpage URL - Search depth modes: Standard for direct-answer queries and Deep for complex research across multiple sources - Source-backed results with citations and context from relevant, trustworthy websites - JavaScript rendering support for accessing dynamic content on JavaScript-heavy pages
Math-MCP
EthanHenrickson
Math-MCP is a computation server that enables Large Language Models (LLMs) to perform accurate numerical calculations through the Model Context Protocol. It provides precise mathematical operations via a simple API to overcome LLM limitations in arithmetic and statistical reasoning. Key features of Math-MCP: - Basic arithmetic operations: addition, subtraction, multiplication, division, modulo, and bulk summation - Statistical analysis functions: mean, median, mode, minimum, and maximum calculations - Rounding utilities: floor, ceiling, and nearest integer rounding - Trigonometric functions: sine, cosine, tangent, and their inverses with degrees and radians conversion support