diff --git a/.cursor-plugin/marketplace.json b/.cursor-plugin/marketplace.json index e2908fa79..a9722f7dd 100644 --- a/.cursor-plugin/marketplace.json +++ b/.cursor-plugin/marketplace.json @@ -377,6 +377,11 @@ "name": "sp-global", "source": "third_party/sp-global", "description": "Query S&P Capital IQ financials, prices, and transcripts." + }, + { + "name": "interactive-brokers", + "source": "third_party/interactive-brokers", + "description": "Review positions, balances, P&L, and draft trade instructions." } ] } diff --git a/README.md b/README.md index b0068dee2..9dd9cd6f5 100644 --- a/README.md +++ b/README.md @@ -76,6 +76,7 @@ Official Cursor plugins for popular developer tools, frameworks, and SaaS produc | `finance` | [Finance](third_party/finance/) | Cursor | Integrations | Securely connect your accounts so Grok can help with questions about your spending, subscriptions, balances, and investments. | | `webull` | [Webull](third_party/webull/) | Cursor | Integrations | View accounts, positions, orders, watchlists, and market data. | | `sp-global` | [S&P Global](third_party/sp-global/) | Cursor | Integrations | Query S&P Capital IQ financials, prices, and transcripts. | +| `interactive-brokers` | [Interactive Brokers](third_party/interactive-brokers/) | Cursor | Integrations | Review positions, balances, P&L, and draft trade instructions. | Author values match each plugin’s `plugin.json` `author.name` (Cursor lists `plugins@cursor.com` in the manifest). ## Repository structure diff --git a/third_party/interactive-brokers/.cursor-plugin/plugin.json b/third_party/interactive-brokers/.cursor-plugin/plugin.json new file mode 100644 index 000000000..1b068d64f --- /dev/null +++ b/third_party/interactive-brokers/.cursor-plugin/plugin.json @@ -0,0 +1,35 @@ +{ + "name": "interactive-brokers", + "displayName": "Interactive Brokers", + "version": "1.0.0", + "minClientVersions": { + "cursor": "3.13.0" + }, + "description": "Review positions, balances, P&L, and draft trade instructions.", + "author": { + "name": "Cursor", + "email": "plugins@cursor.com" + }, + "homepage": "https://www.interactivebrokers.com/en/trading/ai-integrations.php", + "repository": "https://github.com/cursor/plugins", + "license": "MIT", + "logo": "assets/logo.png", + "keywords": [ + "interactive brokers", + "ibkr", + "brokerage", + "trading", + "portfolio", + "positions", + "market data", + "mcp" + ], + "category": "integrations", + "tags": [ + "ibkr", + "finance", + "trading", + "mcp" + ], + "mcpServers": "./mcp.json" +} diff --git a/third_party/interactive-brokers/CHANGELOG.md b/third_party/interactive-brokers/CHANGELOG.md new file mode 100644 index 000000000..6bb30e270 --- /dev/null +++ b/third_party/interactive-brokers/CHANGELOG.md @@ -0,0 +1,9 @@ +# Changelog + +All notable changes to this plugin will be documented here. + +## 1.0.0 — initial release + +- Added the `interactive-brokers` MCP server pointing at Interactive Brokers's hosted Streamable HTTP endpoint (`https://api.ibkr.com/v1/api/mcp-public`). +- Auth uses OAuth with Interactive Brokers user login — no API key or client ID to configure. +- Logo: Interactive Brokers's official mark, from the icon Interactive Brokers publishes for its connector, on a 192×192 tile. diff --git a/third_party/interactive-brokers/LICENSE b/third_party/interactive-brokers/LICENSE new file mode 100644 index 000000000..ca2bba771 --- /dev/null +++ b/third_party/interactive-brokers/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2026 Cursor + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/third_party/interactive-brokers/README.md b/third_party/interactive-brokers/README.md new file mode 100644 index 000000000..4ce4d9521 --- /dev/null +++ b/third_party/interactive-brokers/README.md @@ -0,0 +1,60 @@ +# Interactive Brokers + +Cursor plugin that connects agents to [Interactive Brokers](https://www.interactivebrokers.com/en/trading/ai-integrations.php) through Interactive Brokers's official remote [Model Context Protocol](https://modelcontextprotocol.io/) server. + +Review positions, balances, P&L, and draft trade instructions. + +## Install + +1. Open **Cursor Settings → Plugins**. +2. Search for **Interactive Brokers**. +3. Click **Install**, then complete the Interactive Brokers sign-in prompt. + +Or run `/add-plugin interactive-brokers` in chat. + +## MCP + +```json +{ + "mcpServers": { + "interactive-brokers": { + "type": "http", + "url": "https://api.ibkr.com/v1/api/mcp-public" + } + } +} +``` + +Auth is OAuth. Cursor prompts for Interactive Brokers sign-in when the plugin connects — there is no client ID or personal access token to configure. + +## Before you connect + +You need an Interactive Brokers account. You authorize one specific account during sign-in. Not available to clients in India or Japan. + +## What agents can do + +| Category | Capabilities | +| --- | --- | +| Accounts | Balances, summaries, positions, and portfolio allocation | +| Activity | Orders, trades, and historical transactions | +| Market data | Price snapshots and history; contract search | +| Instructions | Draft trade instructions for review in IBKR's AI Instructions tab | + +The hosted runtime is the source of truth for tool names and schemas. + +## Notes + +- Trade instructions never become live orders automatically; you review and submit them inside an IBKR platform. +- IBKR recommends the `mcp-public` endpoint for custom clients; Grok's catalog lists `/mcp`, which shares the same authorization server. +- Revoke access from **Client Portal → Settings → Manage Third-Party Consents**. + +## Docs + +- IBKR AI integrations: https://www.interactivebrokers.com/en/trading/ai-integrations.php +- Server URL: https://api.ibkr.com/v1/api/mcp-public + +Logo is Interactive Brokers's official mark. + +## License + +MIT diff --git a/third_party/interactive-brokers/assets/logo.png b/third_party/interactive-brokers/assets/logo.png new file mode 100644 index 000000000..41b7b5f57 Binary files /dev/null and b/third_party/interactive-brokers/assets/logo.png differ diff --git a/third_party/interactive-brokers/mcp.json b/third_party/interactive-brokers/mcp.json new file mode 100644 index 000000000..9160d5348 --- /dev/null +++ b/third_party/interactive-brokers/mcp.json @@ -0,0 +1,8 @@ +{ + "mcpServers": { + "interactive-brokers": { + "type": "http", + "url": "https://api.ibkr.com/v1/api/mcp-public" + } + } +}