Draft Statements of Work (SOWs) from client templates and Metis proposals, and review/redline Master Services Agreements (MSAs) from the Supplier perspective. Triggers on SOW drafting, MSA review, contract redlining, scope creep analysis, deliverable tables, invoice schedules, IP carve-outs, or any mention of SOW, MSA, master agreement, statement of work, redline, or contract review in the context of Metis Strategy engagements.
94
94%
Does it follow best practices?
Impact
Pending
No eval scenarios have been run
Advisory
Suggest reviewing before use
Read the client SOW template with python-docx and catalog:
_____, [______], $_______, ADD INVOICING SCHEDULERead the proposal with pdfplumber (for PDF) or python-docx (for DOCX):
Templates mix smart quotes and straight quotes unpredictably. Always attempt replacement with both:
# Try straight quotes first
text.replace('("Supplier")', '("Supplier")')
# If that fails, try smart quotes
text.replace('\u201c\u201d', ...)When a placeholder spans multiple runs (common in Word), collapse into the first run:
para.runs[0].text = new_text
for run in para.runs[1:]:
run.text = ""| Placeholder | Source |
|---|---|
| SOW number (PRA_____) | Ask the consultant |
| Agreement number | Ask the consultant |
| Supplier name + entity type | From firm-metadata.md (Metis Strategy LLC, a Delaware LLC) |
| Supplier address | From firm-metadata.md |
| Supplier TIN/EIN | From firm-metadata.md |
| MSA date | Ask the consultant |
| SOW Effective Date | Ask the consultant |
| End date | Calculate from start date + duration in weeks |
| Fee amount ($_______) | From selected pricing option |
| Supplier Representative | Ask the consultant (varies per engagement) |
| Client Representative | From proposal's client contacts |
Build a real Word table — never use bullet points or pseudo-table formatting. Structure:
| Column | Width | Content |
|---|---|---|
| Workstream | ~3cm | Group name, only shown on first row of group |
| Deliverable | ~3.5cm | Bold, specific deliverable name |
| Format | ~3.5cm | See Standard Deliverable Formats below |
| Level of Detail | ~5cm | What the deliverable contains, specific enough for acceptance |
| Target Audience | ~3.5cm | Who receives/reviews the deliverable |
# Header row: dark blue with white text
shading = OxmlElement('w:shd')
shading.set(qn('w:fill'), '1F3864')
shading.set(qn('w:val'), 'clear')
cell._tc.get_or_add_tcPr().append(shading)
run.font.color.rgb = RGBColor(0xFF, 0xFF, 0xFF)
# All text: Arial 8pt in tables
run.font.name = 'Arial'
run.font.size = Pt(8)Set to 100% page width:
tblW = OxmlElement('w:tblW')
tblW.set(qn('w:type'), 'pct')
tblW.set(qn('w:w'), '5000')After creating a table (which appends to end of document), move it to the correct position:
target_para._p.addnext(table._tbl)Use a 3-column table (Invoice #, Amount, Due Date) with the same dark blue header styling.
Key rules:
Use separate paragraphs for each milestone phase, not one giant block:
Week 4: [Deliverable 1], [Deliverable 2]
Week 8: [Deliverable 3], [Deliverable 4]
...If the client has provided updated milestones, use those. Otherwise derive from the proposal's timeline/Gantt chart, grouping deliverables by their completion week.
Number all Heading 1 sections sequentially: 1.0, 2.0, etc.
After numbering, scan the document for any cross-references to section letters or names (e.g., "Section C above", "as described in the Deliverables section") and update them to use the correct section number (e.g., "Section 3.0 (Deliverables) above").
The most common formatting issue: template placeholders styled as Heading 1 get replaced with body text but retain the bold/Heading 1 style.
Rule: Only actual section headers should be Heading 1. All body text, including filled-in placeholder content, should be Normal style with Arial 11pt, not bold:
para.style = doc.styles['Normal']
for run in para.runs:
run.bold = False
run.font.name = 'Arial'
run.font.size = Pt(11)Watch for:
After drafting the SOW deliverables, compare each one against the proposal's original language:
For each deliverable:
Present as a table to the consultant before finalizing: | Deliverable | Proposal Language | SOW Language | Risk |
Common patterns that signal scope creep:
Recommended softening techniques:
| Deliverable Type | Typical Format |
|---|---|
| Capability maps, org structures | PowerPoint slides or digital whiteboard (e.g., Miro) |
| Assessments, strategies | PowerPoint slides |
| Frameworks, plans, playbooks | Word document or PowerPoint slides |
| Financial/funding models | PowerPoint slides with supporting Excel model |
| Workforce/resourcing plans | Word document with supporting Excel model |
| Communications materials | PowerPoint slides |
| Facilitation materials | Word document or PowerPoint slides; facilitation guides |
Always include: "Alternative formats may be provided upon mutual agreement between Supplier and Lumen."
Each deliverable will follow a three-stage review process: (1) Initial Draft — Supplier delivers a working draft for [Client] core team review and feedback; (2) Revised Draft — Supplier incorporates [Client] feedback and delivers a revised version for final review; (3) Final Deliverable — Supplier delivers the final version incorporating all agreed-upon revisions.
Each deliverable will be deemed accepted upon written approval by the [Client] project sponsor (or designated representative) within five (5) business days of final delivery. If no response is received within the five (5) business day period, the deliverable will be deemed accepted. Rejection must include specific, actionable feedback aligned to the scope defined in this SOW.