You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
parameters, validation, and semantic output checks.
19
+
The OpenBB app-builder instructions are maintained in the [Workspace MCP repository](https://github.com/OpenBB-finance/workspace-mcp). They help agents build custom OpenBB Workspace applications, including backend endpoints, `widgets.json`, `apps.json`, dashboard layouts, thumbnails, widget parameters, validation, and semantic output checks.
24
20
25
21
## Source of truth
26
22
27
-
When your agent is connected to Workspace MCP, ask it to read the live MCP
28
-
resource index:
23
+
When your agent is connected to Workspace MCP, ask it to read the live MCP resource index:
29
24
30
25
```text
31
26
openbb://workspace/app-builder/index
32
27
```
33
28
34
-
The index routes the agent to the right app-builder spec, guide, example, or
35
-
validation resource for the task.
29
+
The index routes the agent to the right app-builder spec, guide, example, or validation resource for the work.
36
30
37
31
## Installable skill package
38
32
39
-
For agents that support installable skills, but are not using Workspace MCP
40
-
resources directly, install the generated `openbb-app-builder` skill from the
41
-
Workspace MCP repository:
33
+
For agents that support installable skills, but are not using Workspace MCP resources directly, install the generated `openbb-app-builder` skill from the Workspace MCP repository:
The OpenBB Workspace MCP is a local companion server that exposes your active Workspace browser session as Model Context Protocol (MCP) tools. An external MCP-capable agent can use those tools to inspect dashboards, fetch widget data, create widgets, manage tabs, register backends, and instantiate Workspace apps.
19
+
The OpenBB Workspace MCP lets your AI agent — Claude Code, Codex, Cursor, or any MCP-capable client — see and control your OpenBB Workspace: read the data on your dashboards, build new dashboards and widgets, and test the apps it builds.
20
+
21
+
It works by exposing your active Workspace browser session as Model Context Protocol (MCP) tools through a hosted backend endpoint. An external agent can use those tools to inspect dashboards, fetch widget data, create widgets, manage tabs, register backends, and instantiate Workspace apps.
20
22
21
23
Use it when an agent needs structured access to Workspace state. It avoids brittle browser automation because the agent calls Workspace commands directly instead of clicking through the UI.
22
24
@@ -41,14 +43,14 @@ This demo shows Codex using the Workspace MCP to interact with an active OpenBB
41
43
42
44
## Architecture
43
45
44
-
The Workspace MCP runs as a local sidecar process:
46
+
The Workspace MCP is served by the OpenBB backend:
45
47
46
48
```text
47
49
MCP client or agent
48
50
|
49
51
| streamable HTTP MCP
50
52
v
51
-
Workspace MCP sidecar
53
+
OpenBB backend `/mcp`
52
54
|
53
55
| WebSocket bridge
54
56
v
@@ -59,13 +61,13 @@ OpenBB Workspace browser tab
59
61
Dashboards, widgets, apps, data backends, and skills
60
62
```
61
63
62
-
The sidecar exposes a stateless MCP endpoint at `http://127.0.0.1:8787/mcp` by default. Workspace connects to the same sidecar through a browser bridge. Tool calls sent by the agent are forwarded to the connected browser tab, executed by Workspace, and returned as structured results.
64
+
OpenBB Workspace shows the hosted MCP endpoint in the Workspace MCP Companion. The endpoint path is `/mcp`on the same backend host used by Workspace. The Companion keeps your Workspace tab connected to OpenBB's servers — this connection is the browser bridge — so the agent's tool calls can reach your session. Tool calls sent by the agent are forwarded to the connected browser tab, executed by the Workspace, and returned as structured results.
63
65
64
-
The browser must stay open and connected. If the Workspace tab disconnects, the sidecar remains running but tool calls return an unavailable error until the browser reconnects.
66
+
The browser must stay open and connected. If the Workspace tab disconnects, tool calls return an unavailable error until the browser reconnects. Each user has one active Workspace MCP bridge; connecting another browser bridge replaces the previous one.
65
67
66
68
## What agents can do
67
69
68
-
The current tool surface covers the main Workspace authoring and inspection workflows:
70
+
Workspace MCP covers the main Workspace authoring and inspection workflows:
69
71
70
72
| Area | Examples |
71
73
|------|----------|
@@ -77,7 +79,7 @@ The current tool surface covers the main Workspace authoring and inspection work
77
79
| Widget authoring | Create widgets from backend definitions, update widget parameters, resize or move widgets, read widget state, and delete individual widgets. |
78
80
| Generated artifacts | Add generated notes, tables, charts, and HTML widgets without a backend connection. |
79
81
| Backend and app workflows | Register data backends, refresh backends, list app templates, and instantiate apps into dashboards. |
80
-
| Agent and skill workflows | Delegate tasks to configured Workspace agents and load skills from the Workspace skill library. |
82
+
| Agent and skill workflows | Delegate work to configured Workspace agents and load skills from the Workspace skill library. |
81
83
82
84
The MCP server also publishes app-builder resources under `openbb://workspace/...`. Agents can read these resources when they are building or reviewing Workspace backends, `widgets.json`, or `apps.json` files.
83
85
@@ -114,21 +116,20 @@ This is useful for development workflows where the agent owns both the backend c
114
116
115
117
Treat any MCP client connected to the Workspace MCP as trusted. The tool server can read Workspace state and mutate dashboards in the connected browser session.
116
118
117
-
Keep the sidecar local:
119
+
Workspace MCP uses a Workspace MCP personal access token:
118
120
119
-
-Bind to `127.0.0.1`, which is the default.
120
-
-Do not expose it on `0.0.0.0`, a LAN address, a tunnel, or a public reverse proxy.
121
-
-Use local HTTP for `localhost` or `127.0.0.1`; HTTPS is not required for the local sidecar.
121
+
-Send the token as `Authorization: Bearer <token>`.
122
+
-Store the token in your MCP client configuration.
123
+
-Revoke the token from Workspace when it should stop working.
122
124
- Connect only MCP clients you trust to read and change your Workspace.
123
125
124
-
The Workspace MCP operates inside an existing authenticated browser session. It does not log in for you, manage authentication tokens, change billing, change organization settings, invite users, or share dashboards.
126
+
The Workspace MCP personal access token authenticates the `/mcp` endpoint only. It is not accepted by normal Workspace API routes, and it does not change billing, organization settings, user invites, or dashboard sharing.
125
127
126
128
## Requirements
127
129
128
130
- An OpenBB Workspace browser tab.
129
-
- The Workspace MCP sidecar running locally.
131
+
- The Workspace MCP Companion connected in Workspace.
130
132
- An MCP client that can connect to a streamable HTTP MCP server.
131
-
- Python 3.13 when installing or running the sidecar directly.
132
-
-`uv` for the recommended install path. The helper script installs `uv` if it is not already available.
133
+
- A Workspace MCP personal access token created in Workspace.
133
134
134
135
See [Workspace MCP Quickstart](/agents/workspace-mcp-quickstart) for setup steps and [Workspace MCP Tools](/agents/workspace-mcp-tools) for the tool reference.
0 commit comments