sc-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., "@sc-mcp show my portfolio overview"
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.
sc-mcp
An MCP server that wraps the
Scalable Capital sc CLI, exposing your broker
data to any MCP-capable harness (Claude Code, Claude Desktop, Codex, Cursor, …).
[!Warning] Unofficial. This is a community, read-only wrapper around Scalable Capital's official
scCLI, not affiliated with or endorsed by Scalable Capital. It's a stopgap until they ship a first-party MCP server; expect to retire it when they do.No warranty / use at your own risk. Provided "as is" under the MIT License, with no warranty of any kind. The author takes no responsibility for any loss, damage, incorrect data, or financial consequence arising from its use. This is a personal tool for your own broker data, you are responsible for verifying anything you act on. It is not financial advice.
Tools
Tool | What it returns |
| Portfolio total value, cash, performance |
| All positions with prices, quantities, market values |
| Trade history with filters (date, ISIN, type, paging) |
| Allocation, sector/region exposure, attribution |
| Latest news summary for a security by ISIN |
| Current quote for a security by ISIN |
| Search securities within the portfolio context |
| Details for a single transaction by ID |
This server is read-only, it never places trades or mutates account state. All calls hit the broker live. Responses are cached in-process for 5 minutes.
The sc CLI also exposes write operations (watchlist, price-alerts,
savings-plans, trades). These are deliberately not included in this release.
Any future write support will be opt-in, disabled by default, and enabled
only via an explicit environment flag, never on by default. Money-moving
commands (trade, savings-plans) are out of scope entirely.
Related MCP server: ibkr-mcp
Prerequisites
uvPython package manager installed and available onPATH.The
scCLI installed and onPATH.An authenticated session:
sc login.
Compatibility
Tested against sc 0.2.x. The sc CLI is pre-1.0, so its command surface
can change between minor versions, the server logs a warning to stderr at
startup if your installed sc differs from the tested major.minor. Since sc
is an external binary, not a Python dependency, so this is the only enforcement
available. If you see the warning and a tool misbehaves, that mismatch is the
likely cause.
Install
As long as the pre-requisites are met, installing as a Claude plugin or any other agent is breezy.
Claude Code (plugin, easiest)
This repo is also a Claude Code plugin marketplace. Two commands:
/plugin marketplace add ratulotron/sc-mcp
/plugin install sc-mcp@ratulotronThat registers the scalable-capital MCP server and a usage skill. It also
bundles a light skill that tells Claude when and how to use the tools.
Claude Code (manual)
claude mcp add scalable-capital -- uvx --from git+https://github.com/ratulotron/sc-mcp@v0.1.0 sc-mcpCursor
Add to Cursor
— or add to .cursor/mcp.json (or ~/.cursor/mcp.json):
{
"mcpServers": {
"scalable-capital": {
"command": "uvx",
"args": ["--from", "git+https://github.com/ratulotron/sc-mcp@v0.1.0", "sc-mcp"]
}
}
}Codex
Add to ~/.codex/config.toml:
[mcp_servers.scalable-capital]
command = "uvx"
args = ["--from", "git+https://github.com/ratulotron/sc-mcp@v0.1.0", "sc-mcp"]Claude Desktop (bundle, no config editing)
Download sc-mcp.mcpb,
then in Claude Desktop go to Settings → Extensions → Install Extension and
pick the file.
[!Note] If Claude Desktop can't find
uvx, open the extension's settings and set the full path (e.g./opt/homebrew/bin/uvx). GUI apps on macOS don't always inherit your shellPATH.
VS Code / other MCP clients
Add the standard server config (VS Code mcp.json, or any client's MCP config):
{
"mcpServers": {
"scalable-capital": {
"command": "uvx",
"args": ["--from", "git+https://github.com/ratulotron/sc-mcp@v0.1.0", "sc-mcp"]
}
}
}Pin the
@v0.1.0tag (see Versioning). Drop it to track the latestmain.
Configuration
Env var | Default | Effect |
|
| Seconds to cache successful responses in-process. Set |
Develop
uv sync
uv run sc-mcp # starts the stdio server
uv run pytestMaintaining compatibility as sc evolves, when to add/update tools, bump
SUPPORTED_SC_VERSION, and the read-only invariants, is documented in
CLAUDE.md.
Versioning
This package uses SemVer. The tools are the public API:
Bump | Trigger |
MAJOR | A tool is removed/renamed, or a parameter changes incompatibly |
MINOR | A tool or optional parameter is added |
PATCH | Bug fix, error-message wording, internals |
Releases are tagged vX.Y.Z. Pin a tag when installing, uvx --from git+... tracks the default branch (latest) by default, so without a pin your
tool surface can change underneath you:
uvx --from git+https://github.com/ratulotron/sc-mcp@v0.1.0 sc-mcpMost version bumps here are driven by sc CLI changes (see Compatibility), but
the version number is this package's own, it does not mirror the sc version.
License
MIT
Available Tools
8 toolssc_analyticsA
Get Scalable Capital portfolio analytics — allocation breakdowns, sector/region exposure, and performance attribution.
Inputs: portfolio_id. Returns: result
sc_holdingsC
Get Scalable Capital portfolio holdings — all positions with current prices, quantities, and market values. Live broker data.
Inputs: include_ytd, portfolio_id. Returns: result
sc_overviewB
Get Scalable Capital broker portfolio overview — total value, cash, performance. Returns live data directly from the broker.
Inputs: include_ytd, portfolio_id. Returns: result
sc_quoteB
Get the current Scalable Capital quote for a security by ISIN.
Inputs: isin (required), include_ytd, portfolio_id. Returns: result
sc_searchC
Search securities within the Scalable Capital broker portfolio context.
Inputs: query (required), portfolio_id. Returns: result
sc_security_newsA
Get latest news summary for a specific security by ISIN from Scalable Capital.
Inputs: isin (required), locale. Returns: result
sc_transactionA
Get details for a single Scalable Capital broker transaction by ID.
Inputs: transaction_id (required), portfolio_id. Returns: result
sc_transactionsB
List Scalable Capital broker transactions with optional filters. Use for reconciliation, tax analysis, or reviewing trade history.
Inputs: isin, cursor, to_time, from_time, +3 more. Returns: result
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 8 tools
Most tools are clearly distinct, but sc_transactions vs sc_transaction and the overlapping portfolio summary tools (sc_overview, sc_holdings, sc_analytics) could cause a mis-selection. The descriptions do clarify the boundaries, so this is only a minor concern.
All tool names follow the same sc_ prefix plus resource noun pattern, using snake_case consistently. The plural/singular distinction between sc_transactions and sc_transaction cleanly signals list vs detail.
Eight tools is well-scoped for a broker-focused MCP server. Each tool covers a meaningful read-only capability without unnecessary bloat or thin redundancy.
The server covers the core read-only portfolio workflow: overview, holdings, transactions, analytics, quotes, search, and news. There are minor gaps around order management or deeper security metadata, but these seem outside the apparent scope and can be worked around.
Maintenance
Related MCP Connectors
Trading MCP server for AI agents, with live market data, account reads and controlled execution.
An MCP server that provides read access to your cloud storage providers, bank accounts and more.
Multi-tenant FastMCP server for Charles Schwab brokerage data, monetized via DPYC Tollbooth
Open-source MCP server for Zerodha Kite Connect. Portfolio, market data, backtesting, alerts.
Related MCP Servers
- AlicenseAqualityBmaintenanceA read-only MCP server for Robinhood portfolio research. Wraps robin_stocks to give AI assistants access to your portfolio data for analysis.13MIT
- AlicenseBqualityDmaintenanceA read-only-by-default MCP server for Interactive Brokers that exposes account, positions, PnL, market data, and trade history from a local TWS/IB Gateway session, with optional trading capabilities.15MIT
- FlicenseNot gradedqualityDmaintenanceExposes TradingView data including quotes, technical ratings, historical OHLCV, and market screening through an MCP server using unofficial libraries.-
- AlicenseNot gradedqualityDmaintenanceRead-only MCP server for accessing Placera headlines, articles, company tags, and Telegram search data.MIT