bloomberg-mcp
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@bloomberg-mcpwhat's the last price and dividend yield for MSFT?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Bloomberg MCP Server
A self-documenting Model Context Protocol server for Bloomberg Terminal data access. Works with any MCP client — Claude Code, Cursor, VS Code, LM Studio, or custom agents — without requiring a separate skill file or prompt injection.
Features
12 tools — status/reset, BDP, BDH, BDIB, BQL, bond analytics, screening, field search, reference docs, examples
17 BQL reference files — comprehensive syntax documentation served as MCP resources
27 verified test queries — covering equity, fixed income, credit, CDS, returns, curves, and funds
xbbg-first execution - BDP, BDH, BDIB, BQL, screening, field search, and bond analytics use xbbg with stable pandas/wide output
In-process BQL - BQL runs in-process via blpapi; no separate BQNT environment required
Self-documenting — BQL syntax rules embedded in tool descriptions; no external skill file needed
Related MCP server: Formula1 MCP Server
Prerequisites
Bloomberg Terminal — must be running and logged in
uv — provisions the project's Python 3.11+ environment automatically; the setup script installs it if missing
Installation
Agent-friendly setup
On a Bloomberg Terminal workstation, Claude or Codex can install and configure the MCP with:
git clone https://github.com/sbctreasury/bloomberg-mcp.git
cd bloomberg-mcp
powershell -ExecutionPolicy Bypass -File .\scripts\setup-bloomberg-mcp.ps1The setup script:
Finds or installs
uvfor the current Windows userRuns
uv syncagainst the repo lockfile to create/update the project.venvPersists the
BLOOMBERG_MCP_HOMEuser environment variableWrites a project
.mcp.jsonUpdates Claude Desktop at
%APPDATA%\Claude\claude_desktop_config.jsonOptionally registers Claude Code with
-RegisterClaudeCode(Claude Code auto-discovers the bundled plugin otherwise)Updates Codex at
%USERPROFILE%\.codex\config.tomlor$CODEX_HOME\config.tomlVerifies Bloomberg Terminal/API connectivity with a bounded probe
Restart Claude Desktop, Claude Code, or Codex after setup so the client reloads MCP configuration.
Manual setup
1. Clone the repo
git clone https://github.com/sbctreasury/bloomberg-mcp.git2. Configure your MCP client
Option A: Setup script (recommended)
The setup script installs uv if needed, syncs the project environment, and writes MCP configs with resolved user-specific paths.
powershell -ExecutionPolicy Bypass -File .\scripts\setup-bloomberg-mcp.ps1Option B: uv MCP config
Use this shape if writing a config manually:
claude mcp add bloomberg -- uv run --project /path/to/bloomberg-mcp python /path/to/bloomberg-mcp/launcher.pyOr add to .mcp.json:
{
"mcpServers": {
"bloomberg": {
"command": "uv",
"args": ["run", "--project", "C:/path/to/bloomberg-mcp", "python", "C:/path/to/bloomberg-mcp/launcher.py"],
"env": {
"BLOOMBERG_MCP_HOME": "C:/path/to/bloomberg-mcp",
"PYTHONUTF8": "1"
}
}
}
}Cursor / VS Code / LM Studio JSON shape:
{
"bloomberg": {
"command": "uv",
"args": ["run", "--project", "C:/path/to/bloomberg-mcp", "python", "C:/path/to/bloomberg-mcp/launcher.py"],
"env": {
"BLOOMBERG_MCP_HOME": "C:/path/to/bloomberg-mcp",
"PYTHONUTF8": "1"
}
}
}Tip: The setup script resolves the full
uv.exepath automatically. If writing config by hand, find it withwhere uv.
Option C: Manual install
cd bloomberg-mcp
pip install -r server/requirements.txt
pip install --index-url=https://blpapi.bloomberg.com/repository/releases/python/simple/ blpapiThen configure with python directly:
{
"command": "python",
"args": ["C:/path/to/bloomberg-mcp/launcher.py"]
}Tools
Tool | Description |
| Check terminal connectivity, warm the xbbg data backend, and show circuit-breaker state |
| Reference/snapshot data (current values) |
| Historical time series |
| Intraday bar data |
| Execute BQL queries (with syntax validation + error hints) |
| Natural language → BQL query template |
| Fixed income analytics (yield, duration, spreads) |
| Saved or ad-hoc security screening |
| Discover Bloomberg field mnemonics |
| Get BQL syntax docs for a domain |
| Get verified BQL examples + test queries |
MCP Resources
The server exposes BQL reference documentation as MCP resources:
bloomberg://references/index— navigation indexbloomberg://references/{domain}/{file}— domain-specific referencebloomberg://tests/{file}— verified test queries
BQL Reference Domains
Domain | Coverage |
| Prices, volumes, market cap, EPS, PE, screening |
| Bond yield, spread, duration, DV01, universe screening |
| Ratings, CDS, issuance |
| Total return, cross-asset return series |
| Sovereign, BVAL, HSA, issuer curves |
| NAV, AUM, risk/return, screening |
| 50+ BQL functions (groupAvg, cumProd, rolling, etc.) |
| Agency CMBS, TRACE trades |
Critical BQL Syntax Rules
These rules are embedded in tool descriptions so any MCP client learns them automatically:
Wrong | Correct |
|
|
|
|
|
|
|
|
|
|
Project Structure
bloomberg-mcp/
├── pyproject.toml # uv project config (auto-installs deps)
├── launcher.py # Public MCP entrypoint / dependency bootstrapper
├── server/
│ ├── server.py # Internal FastMCP implementation (12 tools + resources)
│ ├── bloomberg_client.py # Unified xbbg data access (BQL in-process via blpapi)
│ ├── bql_builder.py # BQL validation + template builder
│ ├── chart_engine.py # Chart rendering helpers
│ ├── utils.py # Helpers (status check, serialization)
│ └── requirements.txt
├── references/ # 17 BQL reference files
│ ├── _tree-index.md
│ ├── equity/
│ ├── fixed-income/
│ ├── credit/
│ ├── returns/
│ ├── curves/
│ ├── funds/
│ ├── functions/
│ └── securitized/
└── tests/ # 27 verified .bql test queriesLicense
MIT
Related MCP Connectors
Market Data App MCP — wraps the Market Data App API (marketdata.app)
1Governed data discovery, exact queries, decisions, simulations, and runtime utilities over MCP.
Query cryptocurrency on-chain data, OHLCV prices, market data, and Research & QuickTake insights.
BGG MCP provides access to the BoardGameGeek API through the Model Context Protocol, enabling retr…
Related MCP Servers
- AlicenseNot gradedqualityNot gradedmaintenanceProvides tools for managing Netskope infrastructure, policies, and steering configurations via the Model Context Protocol.15 npm2ISC
- AlicenseNot gradedqualityDmaintenanceProvides real-time and historical Formula 1 racing data through the Model Context Protocol, offering access to timing data, driver stats, race results, telemetry, and more.15MIT
- FlicenseBqualityDmaintenanceProvides tools to get financial data (stock prices, company information) and generate financial visualizations through the Model Context Protocol.1011-
- AlicenseCqualityCmaintenanceEnables querying real-time and historical financial market data for stocks, options, forex, and crypto, including quotes, trades, technical indicators, and reference data through a set of MCP tools.713MIT