pypi progistdioMITupdated 2mo ago
Progi teaches your agent how you like to get things done. So you can do your best work without re-explaining your process or losing context between sessions.
What can you do with progi?
Progi - MCP-native Workflow Engine
Progi teaches your agent how you like to get things done. So you can do your best work without re-explaining your process or losing context between sessions.
Get started
Add Progi to your MCP client config (GH Copilot / Cursor / Claude Code / etc):
{
"mcpServers": {
"progi": {
"command": "uvx",
"args": ["progi"]
}
}
}
Progi Monitoring starts automatically at http://127.0.0.1:8000.
If you want to start Monitoring on a different port:
{
"mcpServers": {
"progi": {
"command": "uvx",
"args": ["progi"],
"env": {
"PROGI_WEB_PORT": "8080"
}
}
}
}
How it works
1. Describe your workflow
"Hey Progi, help me create workflow for creating integrations, reviewing code, and publishing PRs."
Describe your process in plain language. You can be detailed or just provide a rough idea. Progi stores it as a structured workflow with per-step playbooks.
2. Run tasks, stay in the loop
"Hey Progi, start a new task, we need to review a new docs PR in the repo." Your agent loads the workflow, works through each step using your playbooks, and loops you in at critical checkpoints to review output.
3. Monitor progress
Progi Monitoring gives you a live view of every running and completed task — status, progress, and the full output history across all your workflows.
4. Optimize as you go
Tweak playbooks in Progi Monitoring between runs. Because workflows live in a database and survive context resets, every future task picks up your changes automatically — your process gets sharper with each iteration.
MCP Tools
Work loop
| Tool | Description |
|---|---|
create_task |
Create a new task under a given workflow (status todo); returns a preview of its first step |
list_tasks |
List tasks, optionally filtered by status and/or workflow |
start_or_continue_task |
Main work-loop entry point — starts or resumes a task and returns the current step's playbook, input data, and output spec |
update_progress_notes |
Overwrite a task's progress notes (mid-step save point) |
finish_step |
Mark the current step complete, store its output, and advance to the next step (or mark done) |
Workflow authoring
| Tool | Description |
|---|---|
get_process_skeleton_prompt |
Return the Pass 1 system prompt for turning a plain-language description into a structured workflow skeleton |
get_playbook_authoring_prompt |
Return the Pass 2 system prompt for authoring a step's playbook (injects workflow context) |
save_workflow |
Persist a new workflow, its steps, and playbooks |
list_workflows |
Return all workflows with their ordered steps |
Authoring is two passes: Pass 1 turns a plain-language description into a structured skeleton; Pass 2 authors each step's playbook. save_workflow persists both.
Configuration
| Variable | Default | Purpose |
|---|---|---|
PROGI_DB_PATH |
OS data dir (platformdirs) |
SQLite file location |
PROGI_WEB_HOST |
127.0.0.1 |
Web UI bind host |
PROGI_WEB_PORT |
8000 |
Web UI port |
PROGI_NO_WEB |
0 |
Set to 1 to disable the web UI |
Run modes: uvx progi (MCP + web UI), uvx progi --no-web (MCP only), uvx progi-web (web UI only).
Use an absolute path for
PROGI_DB_PATH
Install
Add progi to your client. Pick the one you use.
claude mcp add progi -- uvx progicodex mcp add progi -- uvx progiamp mcp add progi -- uvx progi{
"mcpServers": {
"progi": {
"command": "uvx",
"args": [
"progi"
]
}
}
}Add to `claude_desktop_config.json`, then restart Claude Desktop.
{
"mcpServers": {
"progi": {
"command": "uvx",
"args": [
"progi"
]
}
}
}Add to `~/.cursor/mcp.json`, or `.cursor/mcp.json` for a single project.
code --add-mcp '{"name":"progi","command":"uvx","args":["progi"]}'Or add the block manually to `.vscode/mcp.json` under `servers`.
{
"mcpServers": {
"progi": {
"command": "uvx",
"args": [
"progi"
]
}
}
}Add to `~/.codeium/windsurf/mcp_config.json`.
{
"mcpServers": {
"progi": {
"command": "uvx",
"args": [
"progi"
]
}
}
}Add to `cline_mcp_settings.json` via the MCP Servers panel.
{
"mcpServers": {
"progi": {
"command": "uvx",
"args": [
"progi"
]
}
}
}Add to `~/.gemini/settings.json`.
{
"mcpServers": {
"progi": {
"type": "local",
"command": "uvx",
"args": [
"progi"
],
"tools": [
"*"
]
}
}
}Add to `~/.copilot/mcp-config.json`, or run `/mcp add` inside the CLI.
{
"context_servers": {
"progi": {
"command": {
"path": "uvx",
"args": [
"progi"
]
}
}
}
}Add to your Zed `settings.json`.
uvx progiRun `goose configure`, choose **Add Extension → Command-line Extension**, and paste this command.
Score
39 / 100
Incomplete
- Documentation22/25
- Maintenance22/25
- Trust13/20
- Capability0/15
- Install experience12/15
- Documents what it does and how to connect
- Has a resolvable package or endpoint
- Exposes at least one tool, prompt or resource
- README has substantive content
- Includes a code example
- Documents its configuration
- Mentions credentials or security posture
- Last commit 58 days ago
- Has a release history
- Repository is not archived
- Licensed MIT
- Namespace verified in the official MCP registry
- Claimed by its owner
- Published under an organisation
- 0 tool(s) documented
- Provides prompt templates
- Provides resources
- 12 documented install method(s)
- Published to a package registry
- Offers a hosted endpoint — no local install
Version history
| Versions | Published |
|---|---|
| 0.3.2-registry.2 | Jun 16, 2026 |
| 0.3.2-registry.1 | Jun 16, 2026 |
| 0.3.2Latest | Jun 16, 2026 |