Skip to main content

Capital.com MCP Server

This is a Model Context Protocol (MCP) server that exposes the Capital.com trading API as tools that can be used by Amazon Q, Claude Desktop, and other LLMs that support the MCP protocol.

Available Tools

The following tools are exposed by the MCP server:

  • authenticate: Authenticate with Capital.com API
  • get_account_info: Get account information
  • search_markets: Search for markets (e.g., EURUSD, AAPL)
  • get_prices: Get prices for a specific instrument
  • get_positions: Get all open positions
  • create_position: Create a new trading position
  • close_position: Close an open position
  • update_position: Update an existing position (stop loss, take profit)
  • get_watchlists: Get all watchlists

Configuration

Required Environment Variables

The MCP server requires the following environment variables:

  • CAPITAL_BASE_URL: The Capital.com API base URL (e.g., https://demo-api-capital.backend-capital.com)
  • CAPITAL_API_KEY: Your Capital.com API key
  • CAPITAL_PASSWORD: Your Capital.com password
  • CAPITAL_IDENTIFIER: Your Capital.com email/identifier

Optional Environment Variables

  • CAPITAL_MCP_DEBUG: Set to 1 to enable debug logging
  • FASTMCP_LOG_LEVEL: Set to DEBUG, INFO, WARNING, ERROR, or CRITICAL to control logging level

Running Manually

You can run the MCP server manually with various options:

capital-com-mcp-server --help

Available options:

  • --sse: Use SSE transport
  • --port PORT: Port to run the server on (default: 8080)
  • --debug: Enable debug logging
  • --log-dir LOG_DIR: Directory to store log files

Example Usage

Searching for Markets

You: Search for Apple stock on Capital.com

AI: I'll search for Apple stock on Capital.com for you.

[Uses capital-com-mcp-server___search_markets tool]

I found Apple Inc. (AAPL) on Capital.com. Here are the details:
- Epic: AAPL
- Market name: Apple Inc.
- Current bid price: $184.25
- Current ask price: $184.30
- Market status: OPEN

Getting Account Information

You: What's my account balance on Capital.com?

AI: Let me check your Capital.com account information.

[Uses capital-com-mcp-server___get_account_info tool]

Your Capital.com account information:
- Account ID: ABC123456
- Account type: Demo
- Currency: USD
- Balance: $10,000.00
- Available funds: $9,500.00
- Margin used: $500.00

Creating a Position

You: Buy 10 shares of Apple stock

AI: I'll create a buy position for Apple stock on Capital.com.

[Uses capital-com-mcp-server___create_position tool]

Successfully created a BUY position for Apple Inc. (AAPL):
- Deal ID: DEF789012
- Size: 10 shares
- Opening price: $184.30
- Position status: OPEN

Prerequisites for using with LLMs

Make sure you have uv installed on your system:

curl -LsSf https://astral.sh/uv/install.sh | sh

Using with Amazon Q

  1. Create an mcp.json configuration file in your Amazon Q configuration directory (~/.aws/amazonq/mcp.json):

    {
      "mcpServers": {
        "capital-com-mcp-server": {
          "command": "uvx",
          "args": ["capital-com-mcp-server"],
          "env": {
            "CAPITAL_BASE_URL": "https://demo-api-capital.backend-capital.com",
            "CAPITAL_API_KEY": "your_api_key_here",
            "CAPITAL_PASSWORD": "your_password_here",
            "CAPITAL_IDENTIFIER": "your_email@example.com",
            "FASTMCP_LOG_LEVEL": "ERROR"
          }
        }
      }
    }
    
  2. Run Amazon Q with:

    q chat
    
  3. Amazon Q will automatically start the MCP server and connect to it.

Using with Claude Desktop

  1. In Claude Desktop, go to Settings > Developer section and click on "Edit Config"

  2. This will open the configuration file. Add the following to the JSON:

    {
      "mcpServers": {
        "capital-com-mcp-server": {
          "command": "uvx",
          "args": ["capital-com-mcp-server"],
          "env": {
            "CAPITAL_BASE_URL": "https://demo-api-capital.backend-capital.com",
            "CAPITAL_API_KEY": "your_api_key_here",
            "CAPITAL_PASSWORD": "your_password_here",
            "CAPITAL_IDENTIFIER": "your_email@example.com",
            "FASTMCP_LOG_LEVEL": "ERROR"
          }
        }
      }
    }
    

Resources

Metadata

Release files for capital-com-mcp-server 0.1.7.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for capital-com-mcp-server 0.1.7.2
File Size Uploaded
capital_com_mcp_server-0.1.7.2.tar.gz 9.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for capital-com-mcp-server 0.1.7.2
File Interpreter ABI Platform
capital_com_mcp_server-0.1.7.2-py3-none-any.whl Python 3 none any Details

Total release size: 20.1 kB

Release files / capital_com_mcp_server-0.1.7.2.tar.gz

Download URL capital_com_mcp_server-0.1.7.2.tar.gz
Size 9.0 kB
Tags Source
SHA-256 checksum
How to use checksums
5eebca265183dcc13bc6b4fbc481367872e7162840ec78268c0c4d3305537e09
BLAKE2b-256 checksum
How to use checksums
714f62d6090953d49a12869d9f4bc4070f3cdfc549ea5e5b0e73e99ea4ecdcd4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 6, 2025.

Transparency log

Release files / capital_com_mcp_server-0.1.7.2-py3-none-any.whl

Download URL capital_com_mcp_server-0.1.7.2-py3-none-any.whl
Size 11.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
8b6ae7645c11769ba7951b2ff16537364c2af655e4e43dd2b8633fb3bcfd5444
BLAKE2b-256 checksum
How to use checksums
bf4eddc20c49ef3387fcfebe91e2f2988f300da8f1c249ca98f24c17b94f661b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 6, 2025.

Transparency log

Release history Release notifications | RSS feed

0.3.2

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.9

2 release files

0.2.8

2 release files

0.2.7

2 release files

0.2.6

2 release files

0.2.5

2 release files

0.2.4

2 release files

0.2.3

2 release files

0.2.2

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.8

2 release files

This release

0.1.7.2 This release

2 release files

0.1.7

2 release files

0.1.6

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page