A project management API and MCP server built with Flask and async Python. Includes endpoints for projects, tasks, and dependencies, and an MCP server for tool-based automation.
- REST API for projects, tasks, and dependencies
- Marshmallow schemas for serialization/validation
- SQLite database by default (configurable)
- Async MCP server for tool automation
- Postman collection for API testing
git clone <your-repo-url>
cd mcp-serverpython -m venv .venv
.venv\Scripts\activate # On Windows
# Or
source .venv/bin/activate # On macOS/Linuxpip install -r requirements.txt- By default, uses SQLite (
instance/default.db). - To use another database, set the
DATABASE_URLenvironment variable in your shell or.envfile. - Example for PostgreSQL:
set DATABASE_URL=postgresql://user:password@localhost/dbname # Windows export DATABASE_URL=postgresql://user:password@localhost/dbname # macOS/Linux
python run_flask.py- The API will be available at
http://127.0.0.1:5000/api/
python run_mcp.py- Import the provided Postman collection (
MCP-Server-API.postman_collection.json) into Postman. - Set the
base_urlvariable tohttp://127.0.0.1:5000/api.
DATABASE_URL: Database connection string (default: SQLite)SECRET_KEY: Flask secret keyDEBUG: Set toTruefor debug mode
app/- Flask app, models, routes, schemasmcp_server/- MCP server and tool definitionsinstance/- Database file (default.db)run_flask.py- Run Flask APIrun_mcp.py- Run MCP serverrequirements.txt- Python dependenciesREADME.md- This file
MIT