An MCP server for tracking and managing cryptocurrency portfolio allocations.
An MCP server for tracking and managing cryptocurrency portfolio allocations, enabling AI agents to query and optimize portfolio strategies in real time.
Clone the Repository:
git clone https://github.com/kukapay/crypto-portfolio-mcp.git
cd crypto-portfolio-mcp
Install requirements:
pip install mcp[cli] ccxt matplotlib
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" ]
}
}
}
Once installed, interact with the server through an MCP client like Claude Desktop. Below are example commands:
Portfolio Summary:
BTC/USDT: 0.1 @ $60000.00 = $6000.00
ETH/USDT: 2.0 @ $2000.00 = $4000.00
Total Value: $10000.00
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.
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
)
This project is licensed under the MIT License. See LICENSE for details.