IOL MCP Tool
by fernandezpablo85
The IOL MCP Tool is a Model Context Protocol (MCP) tool for interacting with the Invertir Online (IOL) API through Claude Desktop. It allows users to connect to their IOL trading account and perform actions via the Claude Desktop application.
View on GitHub
Last updated: N/A
IOL MCP Tool
A Model Context Protocol (MCP) tool for interacting with Invertir Online (IOL) API through Claude Desktop.
Prerequisites
- Claude Desktop App for Mac
- Python 3.8+
- IOL trading account
- Environment variables setup with your IOL credentials
Installation
- Clone this repository:
git clone https://github.com/fernandezpablo85/mcpiol.git
cd mcpiol
- Install uv if you haven't already:
curl -LsSf https://astral.sh/uv/install.sh | sh
- Install dependencies:
uv sync
- Create a
.env
file in the project root with your IOL credentials:
IOL_USER=your_username
IOL_PASS=your_password
Configure Claude Desktop
- Open Claude Desktop configuration directory:
open ~/Library/Application\ Support/Claude
- Create or edit
claude_desktop_config.json
:
touch ~/Library/Application\ Support/Claude/claude_desktop_config.json
- Add the following configuration:
{
"mcpServers": {
"iol": {
"command": "/Users/YOUR_USERNAME/.local/bin/uv",
"args": [
"--directory",
"/Users/YOUR_USERNAME/projects/playground/mcpiol",
"run",
"main.py"
]
}
}
}
Important notes:
- Replace
YOUR_USERNAME
with your actual username - Both the
command
and--directory
paths must be absolute paths - You can find your uv installation path by running
which uv
in the terminal
Running Tests
To run the test suite:
pytest tests/test_client.py -v
For coverage report:
pytest tests/test_client.py --cov=client -v
Troubleshooting
-
If tools don't appear in Claude Desktop:
- Verify your configuration file is correct
- Restart Claude Desktop
- Check Python path and dependencies
-
If authentication fails:
- Verify your .env file exists and has correct credentials
- Check IOL API status
- Ensure your IOL account is active
License
MIT
Contributing
Feel free to open issues or submit pull requests.