Midtown Technology Group

Small tools for real operator work.

The Windows-first CLIs and Microsoft 365 helpers we build and use at Midtown, plus the shared plumbing underneath them.

Current repos

Tool Catalog

Three groups: the tools that talk to Microsoft 365, the ones that keep daily work moving, and the shared plumbing the rest are built on.

01

Microsoft 365 and PSA

Microsoft 365, Halo, inbox, calendar, and files

  1. 01 Todo A Microsoft To Do companion built on our shared auth, using WAM sign-in and delegated task scopes. Python · Tasks.Read $ todo --help Repo
  2. 02 Mail Triage Scans the inbox and prints compact JSON you can route into notifications and follow-ups. Python · Mail.ReadBasic $ .\invoke.ps1 inbox Repo
  3. 03 Calendar Glance Read-only snapshots of your agenda for short-range planning and meeting context. Python · Calendars.Read $ .\invoke.ps1 agenda Repo
  4. 04 Communication Style Build a local style guide from your sent mail and Teams chats, sliced by time period or participant. Python · Mail.Read · Chat.Read $ communication-style --help Repo
  5. 05 File Finder Search Microsoft 365 files and run focused folder and file actions through delegated Graph. Python · Files.Read $ file-finder --help Repo
  6. 06 Halo CLI A standalone HaloPSA CLI and MCP server for safe operator and automation work. Python · HaloPSA · MCP $ halocli --help Repo
  7. 07 Meeting Cost Tracker Work out what a Teams meeting really costs, from participant time and hourly rates. Python · Analytics $ mct --help Repo
02

Workflow, Notes, and Reporting

Capture, review, analysis, and documentation

  1. 01 Quick Capture Capture tasks, ideas, notes, and logs into your Logseq daily notes. Python · Notes $ quick-capture --help Repo
  2. 02 Detour Log unplanned detours in your daily Markdown notes so side work stays visible. CLI · Markdown $ detour --help Repo
  3. 03 SOP Generator Record a browser workflow, review the draft, and publish a Halo KB article. Python · Halo $ sop-generator --help Repo
  4. 04 Time Tracker Track billable time on tasks with almost no friction, for MSP work logs and daily-note evidence. Python · CLI $ time-tracker --help Repo
  5. 05 GTD Dashboard One task view across your Logseq notes and Microsoft 365 work context, including how long items have been waiting. Python · GTD $ gtd-dashboard --help Repo
  6. 06 Weekly Review Build your GTD weekly review from daily notes and work context. Python · Reports $ weekly-review --help Repo
03

Shared Plumbing

Auth, sync, packaging, and secure local support

  1. 01 Shared Microsoft Auth A reusable, WAM-first auth package for Graph tools, with shared token caching. MSAL · WAM $ mtg-auth Repo
  2. 02 Context Sync Sync Microsoft 365 mail, calendar, and chats into a Logseq graph, with calendar timeblocking. Python · Graph $ work-context-sync --help Repo
  3. 03 Keeper PowerCommander Vault A PowerShell SecretManagement vault backed by Keeper PowerCommander, with no Secrets Manager required. PowerShell · Keeper $ Install-Module Repo

Run paths

Install Notes

Most tools are source-first for now. We only list a package here once we've proven the install path.

01

From source

git clone https://github.com/Midtown-Technology-Group/todo.git
cd todo
py -3 -m venv .venv
.\.venv\Scripts\python.exe -m pip install --upgrade pip
.\.venv\Scripts\python.exe -m pip install -e .[dev]
02

Private WinGet pilot

winget source add -n mtg-tools -a https://wonderful-pond-03cdbc40f.7.azurestaticapps.net
winget source update

# todo is published in the private feed at 0.1.1

House rules

How a Tool Earns a Spot

  1. 01

    One clear job

    Every tool does one thing, and we can explain it in a sentence.

  2. 02

    Honest permissions

    If a tool touches Microsoft Graph, it says which permissions it needs. We never assume consent.

  3. 03

    Windows first

    The first supported path is the one we actually run on Windows.