MCP Request-tracker
Secure MCP server for Request Tracker (RT) ticket management
Open source Open in the app JSON README (API)
About
Secure MCP server for Request Tracker (RT) ticket management
Details
- Kind
- MCP servers
- Topic
- No topic detected
- Publisher
- crunchtools
- Origin
- official
- Category
- ferramentas
- Transport
- local
- Version
- 0.1.1
- Last push
- 2026-09-06T02:36:03Z
- Repository state
- ativo
- Language
- Python
- License
- AGPL-3.0
- Added
- 2026-08-29 03:02:38
- Updated
- 2026-08-29 03:02:38
- Origin id
io.github.crunchtools/request-tracker
README
# MCP Request Tracker CrunchTools
A secure MCP (Model Context Protocol) server for Request Tracker (RT) ticket management.
## Features
- **Secure Credential Handling**: Passwords stored as SecretStr, never logged
- **Full Ticket Management**: Search, view, create, update, and resolve tickets
- **Time Tracking**: Track time worked on tickets
- **Workflow Automation**: Pre-built workflows like checklist completion
- **Cross-Platform**: Works on Linux, macOS, and Windows
## Installation
### Option 1: Using uvx (Recommended)
```bash
uvx mcp-request-tracker-crunchtools
```
### Option 2: Using pip
```bash
pip install mcp-request-tracker-crunchtools
```
### Option 3: Using Container
```bash
podman run -e RT_URL=... -e RT_USER=... -e RT_PASS=... quay.io/crunchtools/mcp-request-tracker
```
## Configuration
Set the following environment variables:
| Variable | Required | Description |
|----------|----------|-------------|
| `RT_URL` | Yes | Base URL of your RT server |
| `RT_USER` | Yes | RT username |
| `RT_PASS` | Yes | RT password |
| `RT_HTTP_USER` | No | HTTP Basic Auth username |
| `RT_HTTP_PASS` | No | HTTP Basic Auth password |
## Usage with Claude Code
### Using uvx
```bash
claude mcp add mcp-request-tracker-crunchtools \
--env RT_URL=https://rt.example.com \
--env RT_USER=your_username \
--env RT_PASS=your_password \
-- uvx mcp-request-tracker-crunchtools
```
### Using Container
```bash
claude mcp add mcp-request-tracker-crunchtools \
--env RT_URL=https://rt.example.com \
--env RT_USER=your_username \
--env RT_PASS=your_password \
-- podman run -i --rm -e RT_URL -e RT_USER -e RT_PASS quay.io/crunchtools/mcp-request-tracker
```
## Available Tools
### Search and View
- `search_tickets` - Search tickets using RT query syntax
- `get_ticket` - Get ticket details
- `get_ticket_history` - Get ticket history/changelog
- `get_my_open_tickets` - Get open tickets for a user
- `get_new_tickets` - Get new/unassigned tickets
### Update Tickets
- `set_ticket_owner` - Set ticket owner
- `set_ticket_status` - Set ticket status
- `open_ticket` - Open a ticket
- `resolve_ticket` - Resolve/close a ticket
- `take_ticket` - Take ownership and open
### Time Tracking
- `set_time_worked` - Set total time worked
- `add_time_worked` - Add time to existing time
### Communication
- `add_ticket_comment` - Add private comment (not visible to requestor)
- `reply_to_ticket` - Add correspondence (visible to requestor)
### Creation
- `create_ticket` - Create a new ticket
### Workflows
- `complete_weekly_checklist` - Complete a weekly checklist ticket with results
## RT Query Syntax Examples
```
Status = 'new'
Status = 'open' AND Owner = 'scott'
Subject LIKE 'checklist'
Queue = 'Professional'
Created > '2025-01-01'
Owner = 'Nobody'
```
## Security
This server is built with security in mind:
- **SecretStr**: Passwords are stored using Pydantic's SecretStr to prevent accidental logging
- **Error Sanitization**: Credentials are scrubbed from all error messages
- **No Filesystem Access**: The server never reads or writes files
- **No Shell Execution**: No subprocess or shell commands
- **Minimal Dependencies**: Only essential packages to reduce attack surface
- **Automated CVE Scanning**: Weekly security scans via GitHub Actions
- **Container Security**: Built on Hummingbird images with minimal CVE count
See [SECURITY.md](SECURITY.md) for the full security design document.
## Development
```bash
# Clone the repository
git clone https://github.com/crunchtools/mcp-request-tracker.git
cd mcp-request-tracker
# Install dependencies
uv sync --all-extras
# Run tests
uv run pytest
# Lint
uv run ruff check src tests
# Type check
uv run mypy src
```
## License
This project is licensed under the GNU Affero General Public License v3.0 (AGPL-3.0).
See [LICENSE](LICENSE) for details.
<!-- mcp-name: io.github.crunchtools/request-tracker -->