FastAPI web interface for Lackey task management via MCP
Project description
Lackey MCP Sidecar
A FastAPI web interface for task and project management that integrates with the Lackey task management system through the Model Context Protocol (MCP).
Features
- Interactive Task Visualization: Visual task graph with dependency mapping
- Real-time Dashboard: Live statistics and project overview
- Task Management: View, search, and interact with tasks across projects
- Animated UI: Pulsing animations for in-progress tasks for better visual distinction
- Responsive Design: Modern, glassmorphic UI with smooth animations
- Copy Functionality: Easy ID copying with toast notifications
Installation
Install the latest release from PyPI:
pip install lackey-mcp-sidecar
For local development:
git clone <repository-url>
cd lackey-mcp-sidecar
python -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
pip install -e .
Usage
Starting the Server
Start the FastAPI server:
lackey-sidecar
The web interface will be available at http://localhost:8000.
Features Overview
- Dashboard: Overview of all projects and tasks with status breakdown
- Project View: Detailed task graph visualization with dependencies
- Search: Global search across all tasks and projects
- Task Details: Click any task to view detailed information
- Auto-refresh: Optional automatic data refresh every 30 seconds
Project Structure
lackey-mcp-sidecar/
├── src/
│ └── lackey_mcp_sidecar/
│ ├── main.py # FastAPI application
│ ├── static/
│ │ ├── css/main.css # Styling
│ │ └── js/main.js # Frontend functionality
│ └── templates/
│ └── index.html # Main template
├── pyproject.toml # Package configuration
├── MANIFEST.in # Data file inclusion
└── README.md # Project documentation
Dependencies
- FastAPI: Modern web framework for building APIs
- Uvicorn: ASGI server for running FastAPI applications
- Jinja2: Template engine for HTML rendering
- Lackey Core: Task management system integration (optional)
Development
The project follows modern web development practices:
- Separation of Concerns: HTML, CSS, and JavaScript are in separate files
- Responsive Design: Works on desktop and mobile devices
- Modern UI: Glassmorphic design with smooth animations
- Clean Code: Well-organized and documented codebase
File Organization
main.py: Backend API endpoints and server configurationstatic/css/main.css: All styling including animations and responsive designstatic/js/main.js: Frontend JavaScript functionalitytemplates/index.html: Clean HTML structure without inline styles/scripts
API Documentation
For detailed API documentation including request/response examples, parameters, and error codes, see API.md.
Quick Reference:
GET /: Main web interfaceGET /projects: List all projectsGET /tasks/{project_id}: Get tasks for a specific projectGET /task/{task_id}: Get detailed task informationGET /search: Search tasks across all projectsGET /dashboard-stats: Get dashboard statistics
Configuration
The application automatically detects and connects to a Lackey workspace if available. No additional configuration is required for basic usage.
Contributing
- Fork the repository
- Create a feature branch
- Make your changes
- Test thoroughly
- Submit a pull request
License
MIT License. See LICENSE for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file lackey_mcp_sidecar-0.1.0.tar.gz.
File metadata
- Download URL: lackey_mcp_sidecar-0.1.0.tar.gz
- Upload date:
- Size: 28.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ffcd026f50c4c2db678229e1644842a8b0f1c0f88b0d5f3eef7807ee5226ac30
|
|
| MD5 |
164cbd17d411c686f41b6db02ab2ed33
|
|
| BLAKE2b-256 |
237fc4a99cb261286305e0126e5268b7a633b620b1bd81119a9f480752f71914
|
Provenance
The following attestation bundles were made for lackey_mcp_sidecar-0.1.0.tar.gz:
Publisher:
publish.yml on raseley/lackey-sidecar
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
lackey_mcp_sidecar-0.1.0.tar.gz -
Subject digest:
ffcd026f50c4c2db678229e1644842a8b0f1c0f88b0d5f3eef7807ee5226ac30 - Sigstore transparency entry: 474433111
- Sigstore integration time:
-
Permalink:
raseley/lackey-sidecar@4bc3b111718962c1cb4238959fd1e06779a4320d -
Branch / Tag:
refs/tags/v1.0.1 - Owner: https://github.com/raseley
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@4bc3b111718962c1cb4238959fd1e06779a4320d -
Trigger Event:
push
-
Statement type:
File details
Details for the file lackey_mcp_sidecar-0.1.0-py3-none-any.whl.
File metadata
- Download URL: lackey_mcp_sidecar-0.1.0-py3-none-any.whl
- Upload date:
- Size: 33.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
439d6c47bbe013b9263a2cc51d180c20421c9d499cf2b6dc508d0545229df7e4
|
|
| MD5 |
c6f22eb2ec5bf43d58d67f6a1d15444b
|
|
| BLAKE2b-256 |
ca8b29f74d12c3e193598530fa6d2d97cc2c9888d7e18a146eb1d3f433bb2b97
|
Provenance
The following attestation bundles were made for lackey_mcp_sidecar-0.1.0-py3-none-any.whl:
Publisher:
publish.yml on raseley/lackey-sidecar
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
lackey_mcp_sidecar-0.1.0-py3-none-any.whl -
Subject digest:
439d6c47bbe013b9263a2cc51d180c20421c9d499cf2b6dc508d0545229df7e4 - Sigstore transparency entry: 474433131
- Sigstore integration time:
-
Permalink:
raseley/lackey-sidecar@4bc3b111718962c1cb4238959fd1e06779a4320d -
Branch / Tag:
refs/tags/v1.0.1 - Owner: https://github.com/raseley
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@4bc3b111718962c1cb4238959fd1e06779a4320d -
Trigger Event:
push
-
Statement type: