
rewelo
io.github.sebsPublished by GitHub account sebsv0.7.3Updated Oct 24, 2026
Prioritise a backlog with the relative weight method: score, rank, simulate and plan tickets
Overview
Local MCP server for Rewelo, a relative-weight backlog prioritization tool that lets an assistant manage projects, tickets, tags and priority calculations.
- What you can do
- Create, list, update, upsert and delete projects and tickets, with revision history and project diffs
- Score tickets on benefit, penalty, estimate and risk, and compute relative weights and weighted priority
- Create, assign, remove, rename and list prefix:value tags, with an audit log of tag changes
- Link tickets with blocks, depends-on and relates-to relations
- Set per-project weights and produce reports, summaries, distributions, dashboards and event logs
- Export and import project data as CSV or JSON
- When to use it
- Useful when you want an assistant to help rank a backlog or set of stories by return on investment, keep scores and tags up to date, or answer questions about priorities, dependencies and history stored in a local Rewelo database.
- Requirements
- Runs locally over stdio, either via npx (npm package rewelo) or the Docker image, started with the serve command. Needs a SQLite database file, set with the RW_DB_PATH environment variable (defaults to relative-weight.db in the working directory); with Docker, mount a volume so the database persists. No authentication is declared.
Installation
In SourceWeft
- Open rewelo in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
Rewelo
Warning: This is experimental software. It comes without support and is not intended for production use.
A prioritization tool that uses the relative weight method to rank stories and tickets by different criteria. Built on SQLite (Node's built-in node:sqlite) for embedded, zero-dependency data storage, exposed through a CLI or as a Docker-based MCP server.
How It Works
Each ticket is scored on four dimensions using the agile Fibonacci scale (1, 2, 3, 5, 8, 13, 21):
From these, the tool calculates priority at runtime:
Higher priority means better return on investment. Relative weights normalize scores across the full backlog or within a tagged subset (e.g. a feature). See calculations.md for the full specification.
Tags
Tickets are organized through a flexible tag system using prefix:value pairs. Tags replace fixed fields for state, feature grouping, and any other classification:
state:backlog,state:wip,state:donefeature:checkout,feature:authteam:platform,priority:critical
Every tag assignment and removal on a ticket is tracked in an audit log, enabling lead time and cycle time calculations from state: tag transitions.
Revision History
The tool maintains full revision history at two levels:
- Ticket revisions -- snapshots of content (title, description, scores) and tags before each change
- Tag revisions -- snapshots of tag definitions (prefix, value) before renames or edits
This means you can reconstruct the exact state of any ticket at any point in time.
Data Model
The database schema is defined in db/create.sql and documented as DBML in db/model.dbml.
Tech Stack
- SQLite -- embedded database via Node's built-in
node:sqlite, no server and no native modules required - TypeScript -- CLI application and business logic
- Commander.js -- command-line interface
- Docker -- containerized deployment, also usable as an MCP server
CLI Commands
Global options: --db <path>, --json, --csv, --quiet (and --no-color, accepted for compatibility: rw never prints colour)
Multi-Project Support
The tool is designed around projects as the top-level boundary. Tags, tickets, and all calculations are scoped to a project, so multiple teams or products can use the same instance independently.
Releasing a New Version
Four GitHub Actions workflows in .github/workflows/ cover building, releasing and publishing:
To release:
- Bump the version, which commits it (with
server.json, the MCP Registry entry, set to the same version) and creates the matching tag:
- Push the commit and the tag;
release.ymlbuilds the release:
- Publish to npm: run the Publish workflow with the new version (Actions → Publish → Run workflow), or
gh workflow run publish.yml -f version=0.1.1. Once npm shows the version, the workflow lists it in the MCP Registry too (mcp-publisher, logged in with the workflow's GitHub OIDC token, so without a secret). Prereleases such as0.2.0-beta.1are published under thenextdist-tag, and a backport older than the current latest (0.5.2 after 0.6.1) underbackport, sonpm install rewelokeeps getting the newest stable version.
One-time setup: add sebs/rewelo with workflow publish.yml as a trusted publisher of the rewelo package on npmjs.com, and set Settings → Pages → Source to "GitHub Actions".
To run the released image:
Use a named volume (rw-data) or a bind mount to persist the database across container restarts. Without one, the database stays inside the container and is lost when it is removed (with --read-only it can't be written at all); rw warns about this on stderr.
MCP Server
The CLI doubles as an MCP server over stdio, letting AI assistants manage projects, tickets, tags, and calculations directly. See mcp.md for client configuration, available tools, and troubleshooting.
Examples
See examples.md for step-by-step scenarios, each as a copy-pasteable Claude Code prompt (MCP) and as rw commands with their output: CSV import, dependency mapping, custom weights, quick wins, tracking work, scripting, and sharing and backing up a backlog.
Source: Readme.md at commit 260917b
Tools
0Version history
2- v0.7.3LatestSep 26, 2026
- v0.7.1Sep 25, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts