Skip to main content
Glama
sc-mcp

sc-mcp

by ratulotron

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 sc CLI, 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

sc_overview

Portfolio total value, cash, performance

sc_holdings

All positions with prices, quantities, market values

sc_transactions

Trade history with filters (date, ISIN, type, paging)

sc_analytics

Allocation, sector/region exposure, attribution

sc_security_news

Latest news summary for a security by ISIN

sc_quote

Current quote for a security by ISIN

sc_search

Search securities within the portfolio context

sc_transaction

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

  1. uv Python package manager installed and available on PATH.

  2. The sc CLI installed and on PATH.

  3. 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@ratulotron

That 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-mcp

Cursor

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 shell PATH.

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.0 tag (see Versioning). Drop it to track the latest main.

Configuration

Env var

Default

Effect

SC_MCP_CACHE_TTL

300

Seconds to cache successful responses in-process. Set 0 to disable caching (always hit the broker live).

Develop

uv sync
uv run sc-mcp      # starts the stdio server
uv run pytest

Maintaining 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-mcp

Most 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 tools
sc_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_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

    B3.4/5.0

    Scored across 8 tools

    Disambiguation4/5

    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.

    Naming Consistency5/5

    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.

    Tool Count5/5

    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.

    Completeness4/5

    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

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      A
      quality
      B
      maintenance
      A read-only MCP server for Robinhood portfolio research. Wraps robin_stocks to give AI assistants access to your portfolio data for analysis.
      13
      MIT
    • A
      license
      B
      quality
      D
      maintenance
      A 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.
      15
      MIT
    • F
      license
      Not graded
      quality
      D
      maintenance
      Exposes TradingView data including quotes, technical ratings, historical OHLCV, and market screening through an MCP server using unofficial libraries.
      -
    • A
      license
      Not graded
      quality
      D
      maintenance
      Read-only MCP server for accessing Placera headlines, articles, company tags, and Telegram search data.
      MIT