Skip to main content

Crypto Portfolio MCP

An MCP server for tracking and managing cryptocurrency portfolio allocations, enabling AI agents to query and optimize portfolio strategies in real time.

GitHub License Python Version Status

Features

  • Portfolio Management: Add and track cryptocurrency holdings with real-time Binance prices.
  • Price Retrieval: Fetch current prices for any Binance trading pair (e.g., BTC/USDT).
  • Value History: Generate visual charts of portfolio value over time.
  • Analysis Prompt: Pre-built prompt for portfolio analysis with diversification and risk suggestions.
  • SQLite Storage: Persistent storage of holdings in a local database.

Installation

Prerequisites

  • Python 3.10+
  • Git (optional, for cloning the repo)
  • A compatible MCP client (e.g., Claude Desktop)

Setup

  1. Clone the Repository:

    git clone https://github.com/kukapay/crypto-portfolio-mcp.git
    cd crypto-portfolio-mcp
    
  2. Install requirements:

    pip install mcp[cli] ccxt matplotlib
    
  3. Install for Claude Desktop:

    mcp install main.py --name "CryptoPortfolioMCP"
    

    Or update the configuration file manually:

    {
      "mcpServers": {
        "crypto-portfolio-mcp": {
          "command": "python",
          "args": [ "path/to/crypto-portfolio-mcp/main.py" ]
        }
      }
    }
    

Usage

Once installed, interact with the server through an MCP client like Claude Desktop. Below are example commands:

Add a Holding

  • Prompt: "Add 0.1 BTC to my portfolio"
  • Result: Adds 0.1 BTC/USDT to your portfolio and confirms with "Added 0.1 BTC/USDT to portfolio".

Get Current Price

  • Prompt: "What's the current price of ETH on Binance?"
  • Result: Returns "Current price of ETH/USDT on Binance: $2000.50" (example price).

Portfolio Summary

  • Prompt: "What's my current portfolio summary?"
  • Result: Displays a formatted summary, e.g.:
    Portfolio Summary:
    BTC/USDT: 0.1 @ $60000.00 = $6000.00
    ETH/USDT: 2.0 @ $2000.00 = $4000.00
    Total Value: $10000.00
    

Portfolio Value History

  • Prompt: "Show me my portfolio value history"
  • Result: Generates and displays a PNG chart of your portfolio value over time.

Analyze Portfolio

  • Prompt: "Analyze my crypto portfolio"
  • Result: Provides an analysis with suggestions based on current holdings and Binance market trends.

Tools

The server exposes the following tools:

  • get_portfolio_summary: Retrieves a text summary of your current portfolio.
  • add_holding(coin_symbol: str, amount: float): Adds a cryptocurrency holding (e.g., "BTC", 0.1).
  • get_price(coin_symbol: str): Fetches the current price of a trading pair from Binance.
  • portfolio_value_history(): Generates a PNG chart of portfolio value history.

See the source code docstrings for detailed parameter descriptions.

Database

Holdings are stored in a SQLite database (portfolio.db) with the following schema:

CREATE TABLE holdings (
    id INTEGER PRIMARY KEY,
    coin_symbol TEXT,       -- e.g., "BTC/USDT"
    amount REAL,           -- Quantity of the asset
    purchase_date TEXT     -- ISO format timestamp
)

License

This project is licensed under the MIT License. See LICENSE for details.

Metadata

Release files for iflow-mcp_crypto-portfolio-mcp 0.1.0

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

Source distribution (sdist)

Source distribution for iflow-mcp_crypto-portfolio-mcp 0.1.0
File Size Uploaded
iflow_mcp_crypto_portfolio_mcp-0.1.0.tar.gz 5.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for iflow-mcp_crypto-portfolio-mcp 0.1.0
File Interpreter ABI Platform
iflow_mcp_crypto_portfolio_mcp-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 11.8 kB

Release files / iflow_mcp_crypto_portfolio_mcp-0.1.0.tar.gz

Download URL iflow_mcp_crypto_portfolio_mcp-0.1.0.tar.gz
Size 5.4 kB
Tags Source
SHA-256 checksum
How to use checksums
77ce4de51e833471fbde618f435cf4f8af14faee7b9956b6f27f49c55591846e
BLAKE2b-256 checksum
How to use checksums
5e3b6df588d5ff6cec5d7d83ef9305006a13403cf639b8aa1e1d7647b8ce95e2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.10 {"installer":{"name":"uv","version":"0.9.10"},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / iflow_mcp_crypto_portfolio_mcp-0.1.0-py3-none-any.whl

Download URL iflow_mcp_crypto_portfolio_mcp-0.1.0-py3-none-any.whl
Size 6.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c58c685146aec6f760a3b301e065638f51072431b62d70ef5ea3efc1ced5e821
BLAKE2b-256 checksum
How to use checksums
1189de5234ceaf5cd74a0a879dacf7a1305d7381e51caa077e67ff81668331c2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.10 {"installer":{"name":"uv","version":"0.9.10"},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release history Release notifications | RSS feed

This release

0.1.0 This release

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