- Docker Desktop installed and running
- FinBrain API key
docker build -t finbrain-mcp:latest .Test with your API key:
docker run --rm -e FINBRAIN_API_KEY="your_api_key_here" finbrain-mcp:latestThe container will start the MCP server using stdio transport.
- Base: Python 3.11-slim
- Size: Optimized with multi-stage build (~150MB)
- Security: Runs as non-root user (mcpuser)
- Transport: stdio (required for MCP)
| Variable | Required | Description |
|---|---|---|
FINBRAIN_API_KEY |
Yes | Your FinBrain API key |
The image includes a health check that verifies the Python package is installed correctly:
docker ps # Check HEALTH statusOnce submitted and approved, the image will be available as:
mcp/finbrain-mcp
Users can then pull and run it via:
- Docker Desktop MCP Toolkit
- Docker Hub
- Docker CLI
For local development with Docker:
# Build
docker build -t finbrain-mcp:dev .
# Run with environment file
docker run --rm --env-file .env finbrain-mcp:devCreate a .env file (don't commit it!):
FINBRAIN_API_KEY=your_key_here- Ensure Docker Desktop is running
- Check that FINBRAIN_API_KEY is set
- View logs:
docker logs <container_id>
- The container runs as user
mcpuser(UID 1000) - Verify file permissions if mounting volumes
- MCP uses stdio transport
- Ensure client is configured to connect via stdio
- Check container logs for errors
- Never commit API keys to the repository
- Use Docker secrets or environment variables for sensitive data
- The image runs as non-root for security
- Consider using Docker scan:
docker scan finbrain-mcp:latest