A Python-based MCP (Machine-readable Co-operation Plan) Server for interfacing with the YNAB (You Need A Budget) API.
This project provides a server that acts as a bridge between a client application and the YNAB API. It is designed to work with both stdio and HTTP transports, making it flexible for various client implementations. The core idea is to provide use-case-driven tools rather than a direct 1-to-1 mapping of YNAB API endpoints.
We follow a spec-driven development approach. You can find our documentation in the docs/
directory.
To get a local copy up and running, follow these simple steps.
- Python 3.12+
- Poetry
- pyenv (recommended for managing Python versions)
-
Clone the repo
git clone https://github.com/cameri/ynab-mcp-python.git cd ynab-mcp-python
-
Set up the Python version
pyenv install 3.12 pyenv local 3.12
-
Install dependencies
poetry install
-
Install pre-commit hooks
poetry run pre-commit install
The server can be started with either stdio
or http
transport.
poetry run python src/ynab_mcp_server/main.py --transport stdio
or
poetry run python src/ynab_mcp_server/main.py --transport http
(Note: The implementation of the server is not yet complete.)
Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
Please read our CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.
Distributed under the MIT License. See LICENSE
for more information.