# Project Manager MCP
[](https://badge.fury.io/py/project-manager-mcp)
[](https://www.python.org/downloads/)
[](https://opensource.org/licenses/MIT)
[](https://github.com/psf/black)
[](https://github.com/Commands-com/pm/actions/workflows/tests.yml)
[](https://codecov.io/gh/Commands-com/pm)
## Quick Start
### Option 1: Claude Code Plugin (Recommended)
The easiest way to get started with Claude Code:
```bash
# Add the plugin marketplace
/plugin marketplace add https://github.com/Commands-com/pm.git
# Install the plugin
/plugin install pm
# Restart Claude Code - you're ready to go!
```
This automatically installs:
- ✅ MCP server (via `uvx`)
- ✅ All `/pm:*` slash commands
- ✅ Specialized agents (adaptive-assessor, task-runner, etc.)
### Option 2: Manual Installation
1. **Install from PyPI**
```bash
pip install project-manager-mcp
# or
uvx project-manager-mcp
```
2. **Add MCP server to your AI assistant:**
**Claude Code:**
```bash
claude mcp add project-manager -- uvx project-manager-mcp
```
**Codex:**
```toml
[mcp_servers.project-manager-mcp]
command = "uvx"
args = ["project-manager-mcp"]
```
**Gemini:**
```json
"mcpServers": {
"project-manager": {
"type": "stdio",
"command": "uvx",
"args": ["project-manager-mcp"],
"env": {}
}
}
```
3. **Install Claude assets (commands & agents) to your project:**
```bash
project-manager-mcp install-claude-assets --target-dir ~/my-project
```
## Features
A comprehensive project management system with Model Context Protocol (MCP) support, enabling AI agents to manage projects, epics, and tasks through both programmatic interfaces and a web dashboard.
- **AI Agent Integration**: MCP tools for autonomous project management
- **Web Dashboard**: Real-time web interface for project visualization
- **Task Locking System**: Atomic operations prevent concurrent modifications
- **WebSocket Updates**: Real-time synchronization across all clients
- **SQLite Backend**: Lightweight, serverless database with WAL mode
- **Zero-Config Setup**: Single command deployment with automatic port allocation
- **Project Import**: YAML-based project definition and import system
- **RA Tag Context Detection**: Zero-effort context capture for Response Awareness tags
## Installation & Usage
### Installation Options
```bash
# Install from source (development)
pip install -e .
# Or install development dependencies
pip install -e .[dev]
# Run directly with uvx (no installation needed)
uvx --from . project-manager-mcp
```
### Basic Usage
```bash
# Start with default configuration (dashboard on :8080, MCP over stdio)
project-manager-mcp
# Custom port and options
project-manager-mcp --port 9000 --no-browser
# Import a project on startup
project-manager-mcp --project examples/simple-project.yaml
# MCP over stdio (default; for shell integration)
project-manager-mcp --mcp-transport stdio
# Add RA tags with automatic context detection
python -m task_manager.cli add-ra-tag "#COMPLETION_DRIVE_IMPL: Assuming user validation upstream" --task-id 123
# Install Claude agents and commands to your project
project-manager-mcp install-claude-assets --target-dir ~/my-project
```
After startup, access the dashboard at `http://localhost:8080` (or your chosen port).
### MCP Client Integration
Connect MCP clients to interact programmatically:
```bash
# Stdio transport (default)
# Connect via stdin/stdout
# SSE transport (optional)
project-manager-mcp --mcp-transport sse
# Connect to http://localhost:8081/sse
# Using uvx for MCP integration
uvx --from . project-manager-mcp --mcp-transport stdio
uvx --from . project-manager-mcp --mcp-transport sse --port 9000
```
## Architecture Overview
### Core Components
- **CLI Interface** (`task_manager.cli`): Zero-config server coordination
- **FastAPI Backend** (`task_manager.api`): REST endpoints and WebSocket broadcasting
- **MCP Server** (`task_manager.mcp_server`): AI agent tool integration
- **Database Layer** (`task_manager.database`): SQLite with atomic locking
- **MCP Tools** (`task_manager.tools`): GetAvailableTasks, AcquireTaskLock, UpdateTaskStatus, ReleaseTaskLock, AddRATag
- **Context Detection** (`task_manager.context_utils`): Automatic file, git, and symbol context detection
### Data Model
```
Projects (top-level containers)
├── Epics (high-level initiatives)
├── Tasks (specific work items)
```
Each task supports:
- **Status tracking**: pending → in_progress → completed
- **Atomic locking**: Prevent concurrent modifications
- **Agent assignment**: Track work ownership
- **Real-time updates**: WebSocket broadcasting
- **RA Tag Context**: Automatic context detection for Response Awareness tags
### Transport Modes
1. **SSE (Server-Sent Events)**: HTTP-based MCP for network clients
2. **Stdio**: Pipe-based MCP for shell and local integration
3. **None**: Dashboard-only mode without MCP server
## Key Features
### Atomic Task Locking
Two patterns are supported:
1) Single-call update (auto-lock):
```python
# Automatically acquires a short-lived lock if unlocked, updates status, then releases.
mcp_client.call_tool("update_task_status", {
"task_id": "123",
"status": "DONE", # UI vocabulary also accepted
"agent_id": "agent-1"
})
```
2) Explicit lock + update (long-running work):
```python
# Acquire exclusive lock on task (status moves to IN_PROGRESS)
mcp_client.call_tool("acquire_task_lock", {
"task_id": "123",
"agent_id": "agent-1",
"timeout": 300
})
# Perform work...
# Update status and auto-release on DONE
mcp_client.call_tool("update_task_status", {
"task_id": "123",
"status": "DONE",
"agent_id": "agent-1"
})
```
### Real-time Dashboard Updates
WebSocket events keep all clients synchronized:
- `task.status_changed` - Task status updates
- `task.locked` - Task lock acquisition
- `task.unlocked` - Task lock release
### Project Import System
Define projects in YAML and import on startup:
```yaml
projects:
- name: "User Management System"
description: "Complete user lifecycle management"
epics:
- name: "User Authentication"
status: "ACTIVE"
tasks:
- name: "Create registration form"
status: "TODO"
- name: "Implement login validation"
status: "TODO"
```
## Use Cases
### AI Agent Workflows
1. **Query available work**: `get_available_tasks`
2. **Claim exclusive access**: `acquire_task_lock`
3. **Update progress**: `update_task_status`
4. **Release when done**: Auto-release on completion
### Multi-Agent Coordination
- **Prevent conflicts**: Atomic locking prevents multiple agents on same task
- **Work distribution**: Available task querying enables load balancing
- **Progress tracking**: Status updates provide visibility across agents
- **Real-time sync**: WebSocket updates keep all systems current
### Dashboard Management
- **Project visualization**: Project → Epic → Task hierarchy
- **Real-time monitoring**: Live updates from agent activity
- **Manual intervention**: Override task states when needed
- **Project import**: Load new projects without restart
## Configuration
### CLI Options
- `--port PORT`: Dashboard server port (default: 8080)
- `--mcp-transport {stdio|sse|none}`: MCP transport mode (default: stdio)
- `--project PATH`: Import project YAML on startup
- `--no-browser`: Skip automatic browser launch
- `--host HOST`: Server bind address (default: 127.0.0.1)
- `--db-path PATH`: Database file location (default: project_manager.db)
- `--verbose`: Enable debug logging
### Claude Assets Installation
Install Claude Code agents and commands to your projects:
```bash
# Install both agents and commands to a project
project-manager-mcp install-claude-assets --target-dir ~/my-project
# Install with overwrite protection
project-manager-mcp install-claude-assets --target-dir ~/my-project --force
# Install only agents
project-manager-mcp install-claude-assets --target-dir ~/my-project --agents-only
# Install only commands
project-manager-mcp install-claude-assets --target-dir ~/my-project --commands-only
# Verbose output showing all installed files
project-manager-mcp install-claude-assets --target-dir ~/my-project --verbose
# Alternative standalone command
pm-install-claude-assets --target-dir ~/my-project
```
This creates a `.claude/` directory in your target location with:
- **Agents** (`.claude/agents/`): Specialized agents for adaptive assessment, planning review, task execution, and verification
- **Commands** (`.claude/commands/pm/`): Project management commands for task workflow, epic management, and status tracking
### Environment Variables
- `DATABASE_PATH`: Override default database location
- `DEBUG`: Enable verbose logging
## Performance Characteristics
- **Startup time**: < 2 seconds with empty database
- **Task operations**: < 50ms for lock acquisition/release
- **WebSocket latency**: < 10ms for local connections
- **Concurrent agents**: Tested with 50+ simultaneous agents
- **Database size**: Handles 10,000+ tasks efficiently
## Error Recovery
- **Port conflicts**: Automatic alternative port allocation
- **Database corruption**: WAL mode provides crash recovery
- **WebSocket disconnections**: Automatic reconnection handling
- **Lock timeouts**: Automatic cleanup of expired locks
- **Agent failures**: Lock expiration prevents indefinite blocking
## Security Model
- **No authentication**: Open access for development and testing
- **Local binding**: Default 127.0.0.1 limits network exposure
- **File permissions**: Database protected by filesystem ACLs
- **Input validation**: Pydantic models prevent injection attacks
- **Resource limits**: Lock timeouts prevent resource exhaustion
## Troubleshooting
### Common Issues
**Port already in use**
```bash
# Use alternative ports
project-manager-mcp --port 9000
# Check what's using the port
lsof -i :8080
```
**Database locked errors**
```bash
# Check for competing processes
ps aux | grep project-manager-mcp
# Remove database if corrupted
rm project_manager.db
```
**WebSocket connection refused**
```bash
# Verify server is running
curl http://localhost:8080/healthz
# Check WebSocket endpoint
curl -H "Upgrade: websocket" http://localhost:8080/ws/updates
```
**MCP client connection issues**
```bash
# Test SSE endpoint (when using --mcp-transport sse)
curl http://localhost:8081/sse
# For stdio mode, verify no conflicting processes
project-manager-mcp --mcp-transport stdio --verbose
```
## Documentation
- [Detailed Usage Guide](docs/usage.md) - CLI options, MCP tools, WebSocket events
- [API Documentation](docs/api.md) - REST endpoints, request/response formats
- [Development Guide](docs/development.md) - Contributing, testing, architecture decisions
- [RA Tag Context Usage Guide](docs/ra-tag-context-usage.md) - Complete guide for Response Awareness tag context detection
## Examples
- [`examples/simple-project.yaml`](examples/simple-project.yaml) - Basic project structure
- [`examples/complex-project.yaml`](examples/complex-project.yaml) - Multi-epic enterprise project
## License
This project is licensed under the **MIT License** - see the [LICENSE](LICENSE) file for details.
You are free to use, modify, and distribute this software for any purpose, including commercial use.
## Contributing
We welcome contributions! Please see [CONTRIBUTING.md](CONTRIBUTING.md) for:
- Development setup instructions
- Code style guidelines
- Testing requirements
- Pull request process
- Response Awareness (RA) methodology guidelines
For detailed architecture and development information, see [Development Guide](docs/development.md).
Raw data
{
"_id": null,
"home_page": null,
"name": "project-manager-mcp",
"maintainer": "Project Manager MCP Contributors",
"docs_url": null,
"requires_python": ">=3.9",
"maintainer_email": null,
"keywords": "asyncio, fastapi, mcp, model-context-protocol, project-management, sqlite",
"author": "Project Manager MCP Contributors",
"author_email": null,
"download_url": "https://files.pythonhosted.org/packages/46/1e/e020609a0cf7e71543ca71619a8f7cbca2e74771e9645c91b7a6cc6ae233/project_manager_mcp-0.2.1.tar.gz",
"platform": null,
"description": "# Project Manager MCP\n\n[](https://badge.fury.io/py/project-manager-mcp)\n[](https://www.python.org/downloads/)\n[](https://opensource.org/licenses/MIT)\n[](https://github.com/psf/black)\n[](https://github.com/Commands-com/pm/actions/workflows/tests.yml)\n[](https://codecov.io/gh/Commands-com/pm)\n\n## Quick Start\n\n### Option 1: Claude Code Plugin (Recommended)\n\nThe easiest way to get started with Claude Code:\n\n```bash\n# Add the plugin marketplace\n/plugin marketplace add https://github.com/Commands-com/pm.git\n\n# Install the plugin\n/plugin install pm\n\n# Restart Claude Code - you're ready to go!\n```\n\nThis automatically installs:\n- \u2705 MCP server (via `uvx`)\n- \u2705 All `/pm:*` slash commands\n- \u2705 Specialized agents (adaptive-assessor, task-runner, etc.)\n\n### Option 2: Manual Installation\n\n1. **Install from PyPI**\n```bash\npip install project-manager-mcp\n# or\nuvx project-manager-mcp\n```\n\n2. **Add MCP server to your AI assistant:**\n\n**Claude Code:**\n```bash\nclaude mcp add project-manager -- uvx project-manager-mcp\n```\n\n**Codex:**\n```toml\n[mcp_servers.project-manager-mcp]\ncommand = \"uvx\"\nargs = [\"project-manager-mcp\"]\n```\n\n**Gemini:**\n```json\n\"mcpServers\": {\n \"project-manager\": {\n \"type\": \"stdio\",\n \"command\": \"uvx\",\n \"args\": [\"project-manager-mcp\"],\n \"env\": {}\n }\n}\n```\n\n3. **Install Claude assets (commands & agents) to your project:**\n```bash\nproject-manager-mcp install-claude-assets --target-dir ~/my-project\n```\n\n## Features\n\nA comprehensive project management system with Model Context Protocol (MCP) support, enabling AI agents to manage projects, epics, and tasks through both programmatic interfaces and a web dashboard.\n\n- **AI Agent Integration**: MCP tools for autonomous project management\n- **Web Dashboard**: Real-time web interface for project visualization\n- **Task Locking System**: Atomic operations prevent concurrent modifications\n- **WebSocket Updates**: Real-time synchronization across all clients\n- **SQLite Backend**: Lightweight, serverless database with WAL mode\n- **Zero-Config Setup**: Single command deployment with automatic port allocation\n- **Project Import**: YAML-based project definition and import system\n- **RA Tag Context Detection**: Zero-effort context capture for Response Awareness tags\n\n## Installation & Usage\n\n### Installation Options\n\n```bash\n# Install from source (development)\npip install -e .\n\n# Or install development dependencies\npip install -e .[dev]\n\n# Run directly with uvx (no installation needed)\nuvx --from . project-manager-mcp\n```\n\n### Basic Usage\n\n```bash\n# Start with default configuration (dashboard on :8080, MCP over stdio)\nproject-manager-mcp\n\n# Custom port and options\nproject-manager-mcp --port 9000 --no-browser\n\n# Import a project on startup\nproject-manager-mcp --project examples/simple-project.yaml\n\n# MCP over stdio (default; for shell integration)\nproject-manager-mcp --mcp-transport stdio\n\n# Add RA tags with automatic context detection\npython -m task_manager.cli add-ra-tag \"#COMPLETION_DRIVE_IMPL: Assuming user validation upstream\" --task-id 123\n\n# Install Claude agents and commands to your project\nproject-manager-mcp install-claude-assets --target-dir ~/my-project\n```\n\nAfter startup, access the dashboard at `http://localhost:8080` (or your chosen port).\n\n### MCP Client Integration\n\nConnect MCP clients to interact programmatically:\n\n```bash\n# Stdio transport (default)\n# Connect via stdin/stdout\n\n# SSE transport (optional)\nproject-manager-mcp --mcp-transport sse\n# Connect to http://localhost:8081/sse\n\n# Using uvx for MCP integration\nuvx --from . project-manager-mcp --mcp-transport stdio\nuvx --from . project-manager-mcp --mcp-transport sse --port 9000\n```\n\n## Architecture Overview\n\n### Core Components\n\n- **CLI Interface** (`task_manager.cli`): Zero-config server coordination\n- **FastAPI Backend** (`task_manager.api`): REST endpoints and WebSocket broadcasting\n- **MCP Server** (`task_manager.mcp_server`): AI agent tool integration\n- **Database Layer** (`task_manager.database`): SQLite with atomic locking\n- **MCP Tools** (`task_manager.tools`): GetAvailableTasks, AcquireTaskLock, UpdateTaskStatus, ReleaseTaskLock, AddRATag\n- **Context Detection** (`task_manager.context_utils`): Automatic file, git, and symbol context detection\n\n### Data Model\n\n```\nProjects (top-level containers)\n\u251c\u2500\u2500 Epics (high-level initiatives)\n \u251c\u2500\u2500 Tasks (specific work items)\n```\n\nEach task supports:\n- **Status tracking**: pending \u2192 in_progress \u2192 completed\n- **Atomic locking**: Prevent concurrent modifications\n- **Agent assignment**: Track work ownership\n- **Real-time updates**: WebSocket broadcasting\n- **RA Tag Context**: Automatic context detection for Response Awareness tags\n\n### Transport Modes\n\n1. **SSE (Server-Sent Events)**: HTTP-based MCP for network clients\n2. **Stdio**: Pipe-based MCP for shell and local integration\n3. **None**: Dashboard-only mode without MCP server\n\n## Key Features\n\n### Atomic Task Locking\n\nTwo patterns are supported:\n\n1) Single-call update (auto-lock):\n```python\n# Automatically acquires a short-lived lock if unlocked, updates status, then releases.\nmcp_client.call_tool(\"update_task_status\", {\n \"task_id\": \"123\",\n \"status\": \"DONE\", # UI vocabulary also accepted\n \"agent_id\": \"agent-1\"\n})\n```\n\n2) Explicit lock + update (long-running work):\n```python\n# Acquire exclusive lock on task (status moves to IN_PROGRESS)\nmcp_client.call_tool(\"acquire_task_lock\", {\n \"task_id\": \"123\",\n \"agent_id\": \"agent-1\",\n \"timeout\": 300\n})\n\n# Perform work...\n\n# Update status and auto-release on DONE\nmcp_client.call_tool(\"update_task_status\", {\n \"task_id\": \"123\",\n \"status\": \"DONE\",\n \"agent_id\": \"agent-1\"\n})\n```\n\n### Real-time Dashboard Updates\n\nWebSocket events keep all clients synchronized:\n- `task.status_changed` - Task status updates\n- `task.locked` - Task lock acquisition\n- `task.unlocked` - Task lock release\n\n### Project Import System\n\nDefine projects in YAML and import on startup:\n\n```yaml\nprojects:\n - name: \"User Management System\"\n description: \"Complete user lifecycle management\"\n epics:\n - name: \"User Authentication\"\n status: \"ACTIVE\"\n tasks:\n - name: \"Create registration form\"\n status: \"TODO\"\n - name: \"Implement login validation\"\n status: \"TODO\"\n```\n\n## Use Cases\n\n### AI Agent Workflows\n\n1. **Query available work**: `get_available_tasks`\n2. **Claim exclusive access**: `acquire_task_lock` \n3. **Update progress**: `update_task_status`\n4. **Release when done**: Auto-release on completion\n\n### Multi-Agent Coordination\n\n- **Prevent conflicts**: Atomic locking prevents multiple agents on same task\n- **Work distribution**: Available task querying enables load balancing\n- **Progress tracking**: Status updates provide visibility across agents\n- **Real-time sync**: WebSocket updates keep all systems current\n\n### Dashboard Management\n\n- **Project visualization**: Project \u2192 Epic \u2192 Task hierarchy\n- **Real-time monitoring**: Live updates from agent activity\n- **Manual intervention**: Override task states when needed\n- **Project import**: Load new projects without restart\n\n## Configuration\n\n### CLI Options\n\n- `--port PORT`: Dashboard server port (default: 8080)\n- `--mcp-transport {stdio|sse|none}`: MCP transport mode (default: stdio)\n- `--project PATH`: Import project YAML on startup\n- `--no-browser`: Skip automatic browser launch\n- `--host HOST`: Server bind address (default: 127.0.0.1)\n- `--db-path PATH`: Database file location (default: project_manager.db)\n- `--verbose`: Enable debug logging\n\n### Claude Assets Installation\n\nInstall Claude Code agents and commands to your projects:\n\n```bash\n# Install both agents and commands to a project\nproject-manager-mcp install-claude-assets --target-dir ~/my-project\n\n# Install with overwrite protection\nproject-manager-mcp install-claude-assets --target-dir ~/my-project --force\n\n# Install only agents\nproject-manager-mcp install-claude-assets --target-dir ~/my-project --agents-only\n\n# Install only commands\nproject-manager-mcp install-claude-assets --target-dir ~/my-project --commands-only\n\n# Verbose output showing all installed files\nproject-manager-mcp install-claude-assets --target-dir ~/my-project --verbose\n\n# Alternative standalone command\npm-install-claude-assets --target-dir ~/my-project\n```\n\nThis creates a `.claude/` directory in your target location with:\n- **Agents** (`.claude/agents/`): Specialized agents for adaptive assessment, planning review, task execution, and verification\n- **Commands** (`.claude/commands/pm/`): Project management commands for task workflow, epic management, and status tracking\n\n### Environment Variables\n\n- `DATABASE_PATH`: Override default database location\n- `DEBUG`: Enable verbose logging\n\n## Performance Characteristics\n\n- **Startup time**: < 2 seconds with empty database\n- **Task operations**: < 50ms for lock acquisition/release\n- **WebSocket latency**: < 10ms for local connections\n- **Concurrent agents**: Tested with 50+ simultaneous agents\n- **Database size**: Handles 10,000+ tasks efficiently\n\n## Error Recovery\n\n- **Port conflicts**: Automatic alternative port allocation\n- **Database corruption**: WAL mode provides crash recovery\n- **WebSocket disconnections**: Automatic reconnection handling\n- **Lock timeouts**: Automatic cleanup of expired locks\n- **Agent failures**: Lock expiration prevents indefinite blocking\n\n## Security Model\n\n- **No authentication**: Open access for development and testing\n- **Local binding**: Default 127.0.0.1 limits network exposure\n- **File permissions**: Database protected by filesystem ACLs\n- **Input validation**: Pydantic models prevent injection attacks\n- **Resource limits**: Lock timeouts prevent resource exhaustion\n\n## Troubleshooting\n\n### Common Issues\n\n**Port already in use**\n```bash\n# Use alternative ports\nproject-manager-mcp --port 9000\n\n# Check what's using the port\nlsof -i :8080\n```\n\n**Database locked errors**\n```bash\n# Check for competing processes\nps aux | grep project-manager-mcp\n\n# Remove database if corrupted\nrm project_manager.db\n```\n\n**WebSocket connection refused**\n```bash\n# Verify server is running\ncurl http://localhost:8080/healthz\n\n# Check WebSocket endpoint\ncurl -H \"Upgrade: websocket\" http://localhost:8080/ws/updates\n```\n\n**MCP client connection issues**\n```bash\n# Test SSE endpoint (when using --mcp-transport sse)\ncurl http://localhost:8081/sse\n\n# For stdio mode, verify no conflicting processes\nproject-manager-mcp --mcp-transport stdio --verbose\n```\n\n## Documentation\n\n- [Detailed Usage Guide](docs/usage.md) - CLI options, MCP tools, WebSocket events\n- [API Documentation](docs/api.md) - REST endpoints, request/response formats\n- [Development Guide](docs/development.md) - Contributing, testing, architecture decisions\n- [RA Tag Context Usage Guide](docs/ra-tag-context-usage.md) - Complete guide for Response Awareness tag context detection\n\n## Examples\n\n- [`examples/simple-project.yaml`](examples/simple-project.yaml) - Basic project structure\n- [`examples/complex-project.yaml`](examples/complex-project.yaml) - Multi-epic enterprise project\n\n## License\n\nThis project is licensed under the **MIT License** - see the [LICENSE](LICENSE) file for details.\n\nYou are free to use, modify, and distribute this software for any purpose, including commercial use.\n\n## Contributing\n\nWe welcome contributions! Please see [CONTRIBUTING.md](CONTRIBUTING.md) for:\n- Development setup instructions\n- Code style guidelines\n- Testing requirements\n- Pull request process\n- Response Awareness (RA) methodology guidelines\n\nFor detailed architecture and development information, see [Development Guide](docs/development.md).\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Project Manager MCP with SQLite database layer and atomic locking",
"version": "0.2.1",
"project_urls": {
"Bug Tracker": "https://github.com/Commands-com/pm/issues",
"Documentation": "https://github.com/Commands-com/pm#readme",
"Homepage": "https://github.com/Commands-com/pm",
"Repository": "https://github.com/Commands-com/pm"
},
"split_keywords": [
"asyncio",
" fastapi",
" mcp",
" model-context-protocol",
" project-management",
" sqlite"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "f43682057e85900978161571166e1ba16f95110392bf4707e52c9b29949ebabe",
"md5": "03efb78d7451179c98981f44cb20f9b7",
"sha256": "354be67f18676d3f330e12122ff6c332514e787b99499e225ff7bbc388a66851"
},
"downloads": -1,
"filename": "project_manager_mcp-0.2.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "03efb78d7451179c98981f44cb20f9b7",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.9",
"size": 256320,
"upload_time": "2025-10-14T12:36:45",
"upload_time_iso_8601": "2025-10-14T12:36:45.386890Z",
"url": "https://files.pythonhosted.org/packages/f4/36/82057e85900978161571166e1ba16f95110392bf4707e52c9b29949ebabe/project_manager_mcp-0.2.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "461ee020609a0cf7e71543ca71619a8f7cbca2e74771e9645c91b7a6cc6ae233",
"md5": "031ad65d3ccef2712055e64ad408b1df",
"sha256": "ee386d768abe2570d76401b2b1b4b9374940a1535ed1133ac1e791908ebdcecf"
},
"downloads": -1,
"filename": "project_manager_mcp-0.2.1.tar.gz",
"has_sig": false,
"md5_digest": "031ad65d3ccef2712055e64ad408b1df",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9",
"size": 386685,
"upload_time": "2025-10-14T12:36:47",
"upload_time_iso_8601": "2025-10-14T12:36:47.017463Z",
"url": "https://files.pythonhosted.org/packages/46/1e/e020609a0cf7e71543ca71619a8f7cbca2e74771e9645c91b7a6cc6ae233/project_manager_mcp-0.2.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-10-14 12:36:47",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "Commands-com",
"github_project": "pm",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "project-manager-mcp"
}