Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion employment-legal/.claude-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "employment-legal",
"version": "1.0.2",
"description": "Reviews hires and terminations for jurisdiction-specific risk flags, classifies workers against the controlling state test, tracks leave deadlines before they're missed, runs internal investigations, and drafts policies with state supplements where the law differs.",
"description": "Reviews hires and terminations for UK employment law risk flags, classifies workers across the employee/worker/self-employed spectrum, tracks statutory leave deadlines before they're missed, runs internal investigations, and drafts policies with jurisdiction supplements for England & Wales, Scotland, and Northern Ireland.",
"author": {
"name": "Anthropic"
}
Expand Down
1 change: 1 addition & 0 deletions employment-legal/.gitignore
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
.DS_Store
last-event.log
47 changes: 37 additions & 10 deletions employment-legal/.mcp.json
Original file line number Diff line number Diff line change
@@ -1,22 +1,49 @@
{
"mcpServers": {
"Slack": {
"uk-legal": {
"type": "http",
"url": "https://mcp.slack.com/mcp",
"title": "Slack",
"description": "Search messages, read channels, find discussions across your workspace."
"url": "https://uk-legal-mcp.fly.dev/mcp",
"title": "UK Legal",
"description": "UK case law (TNA Find Case Law), legislation (legislation.gov.uk), Hansard, Bills, Parliamentary Votes, Committees, HMRC guidance, and OSCOLA citation parsing."
},
"Google Drive": {
"bailii": {
"type": "stdio",
"command": "bailii-mcp",
"title": "BAILII",
"description": "British and Irish Legal Information Institute — full-text case law search and judgment retrieval. Must run locally (BAILII blocks cloud IPs)."
},
"govuk": {
"type": "http",
"url": "https://govuk-mcp.fly.dev/mcp",
"title": "GOV.UK",
"description": "GOV.UK content, guidance, organisations, and postcode-to-local-authority lookup."
},
"uk-due-diligence": {
"type": "http",
"url": "https://uk-due-diligence-mcp.fly.dev/mcp",
"title": "UK Due Diligence",
"description": "Companies House, Charity Commission, HMLR Land Registry, The Gazette (insolvency notices), and HMRC VAT register."
},
"whatdotheyknow": {
"type": "http",
"url": "https://drivemcp.googleapis.com/mcp/v1",
"title": "Google Drive",
"description": "Search, read, and fetch documents from Google Drive."
"url": "https://whatdotheyknow-mcp.fly.dev/mcp",
"title": "WhatDoTheyKnow",
"description": "WhatDoTheyKnow FOI request data — search and read public Freedom of Information requests and responses."
},
"property": {
"type": "http",
"url": "https://property-shared.fly.dev/mcp",
"title": "UK Property",
"description": "UK property data — comparable sales, EPC certificates, rental yields, SDLT calculations, planning search, and property report generation."
}
},
"recommendedCategories": [
"hris",
"legal-research",
"legislation",
"case-law",
"foi",
"documents",
"chat",
"hris",
"email"
]
}
36 changes: 18 additions & 18 deletions employment-legal/CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -86,20 +86,20 @@ A false assurance of protection is worse than no marking. The lawyer who relies

*Remove the header from externally-facing deliverables (offer letters sent to candidates, termination letters, severance agreements circulated to counterparties, agency responses) — see the specific skill's instructions. Privilege depends on facts beyond labeling; the internal-investigation skill has additional privilege-formation requirements.*

**Non-lawyer output mode.** When the practice profile says the user is not a lawyer, structure outputs for a reader who can't unpack legal shorthand: (1) the attorney brief goes at the top, not buried, (2) every legal flag gets a one-line plain-English gloss in parentheses, (3) every statutory cite gets a plain-English subject line. Example: "Flag: potential Cal-WARN issue (Cal. Lab. Code §1400) — California requires 60 days notice before large layoffs." Test: could the reader take the output to their boss and explain it without a lawyer in the room?
**Non-lawyer output mode.** When the practice profile says the user is not a lawyer, structure outputs for a reader who can't unpack legal shorthand: (1) the attorney brief goes at the top, not buried, (2) every legal flag gets a one-line plain-English gloss in parentheses, (3) every statutory cite gets a plain-English subject line. Example: "Flag: potential collective redundancy consultation failure (TULRCA 1992 s.188) — UK law requires 45 days' consultation before dismissing 100+ employees for redundancy." Test: could the reader take the output to their boss and explain it without a lawyer in the room?

---

**⚠️ Reviewer note — one block above the deliverable.** This is the ONE place for everything the reviewer needs to know before relying on the output. Collapse every pre-flight flag, caveat, and meta-note here — do NOT scatter them through the body. Format:

> **⚠️ Reviewer note**
> - **Sources:** [Research connector: CourtListener ✓ verified | not connected — cites from training knowledge, verify before relying]
> - **Sources:** [Research connector: uk-legal MCP ✓ verified | not connected — cites from training knowledge, verify before relying]
> - **Read:** [pages 1-50 of 200 | all 3 documents | N items in register | N/A]
> - **Flagged for your judgment:** [N items marked `[review]` inline | none]
> - **Currency:** [searched for developments since [date] — nothing found | found N updates, noted inline | could not search, verify [specific rules]]
> - **Before relying:** [the 1-2 things the reviewer should actually do — or "ready for your eyes" if clean]

If everything is green (research tool connected, full read, no flags, currency checked), collapse to one line: `⚠️ Reviewer note: CourtListener verified · full read · no flags · ready for your eyes`. Don't pad with bullets that all say "no issues."
If everything is green (research tool connected, full read, no flags, currency checked), collapse to one line: `⚠️ Reviewer note: uk-legal MCP verified · full read · no flags · ready for your eyes`. Don't pad with bullets that all say "no issues."

**The deliverable below is clean.** No banners, no inline meta-commentary, no tracker state narration ("Added to the register..." — do it, don't narrate it). Inline tags are minimal: only `[review]` on the specific lines that need attorney judgment, and source tags (`[model knowledge — verify]`) only where a cite appears. Everything the reviewer needs to DO something about is flagged `[review]`; everything else is just the content.

Expand Down Expand Up @@ -141,12 +141,12 @@ When a skill in this plugin faces a subjective legal judgment — is this a P0 b
## Shared guardrails
## Pre-flight citation check

Before any skill cites a case, statute, regulation, or rule, test whether a legal research connector (CourtListener, or a statute/regulator source) is actually responding — not just configured. If none is, record it in the **Sources:** line of the reviewer note (see `## Outputs`) — e.g., `not connected — cites from training knowledge, verify before relying`. Do not emit a standalone banner above the header. The reviewer note is the single place this signal lives; per-citation `[model knowledge — verify]` tags remain inline.
Before any skill cites a case, statute, regulation, or rule, test whether a legal research connector (uk-legal MCP, BAILII, legislation.gov.uk, or govuk MCP) is actually responding — not just configured. If none is, record it in the **Sources:** line of the reviewer note (see `## Outputs`) — e.g., `not connected — cites from training knowledge, verify before relying`. Do not emit a standalone banner above the header. The reviewer note is the single place this signal lives; per-citation `[model knowledge — verify]` tags remain inline.

## Source attribution

Source tags describe what you actually did, not what you'd like to claim.
- `[CourtListener]` — ONLY if the citation appears in a tool result from that MCP in this conversation.
- `[uk-legal MCP]` / `[BAILII]` / `[legislation.gov.uk]` / `[govuk MCP]` — ONLY if the citation appears in a tool result from that MCP in this conversation.
- `[statute / regulator site]` — ONLY if you fetched the text from an official source this session.
- `[user provided]` — the user pasted or linked it.
- `[model knowledge — verify]` — everything else. This is the default.
Expand All @@ -157,11 +157,11 @@ Do not promote a tag because the citation "seems right." The tag describes prove
**Tag vocabulary — at a glance.** The inline tags are load-bearing. Use them consistently across skills:

- `[verify]` — a factual claim (cite, date, deadline, threshold, registration number, rule text) the reader should confirm against a primary source before relying on it. Use the longer form `[model knowledge — verify]` when the source is training knowledge so the reader knows what flavor of verify to do.
- `[review]` — a judgment call the attorney needs to make. Not a factual gap; a place where the skill surfaced a position the lawyer has to decide.
- `[CourtListener]` / `[statute / regulator site]` / `[user provided]` — where a cite actually came from. Provenance, not confidence. Only use these when the cite literally appeared in that source in this session.
- `[review]` — a judgment call the attorney/solicitor needs to make. Not a factual gap; a place where the skill surfaced a position the lawyer has to decide.
- `[uk-legal MCP]` / `[BAILII]` / `[legislation.gov.uk]` / `[govuk MCP]` / `[statute / regulator site]` / `[user provided]` — where a cite actually came from. Provenance, not confidence. Only use these when the cite literally appeared in that source in this session.
- `[VERIFY: …]` / `[UNCERTAIN: …]` — expanded forms of `[verify]` used in brief-drafting and chronology skills with the specific claim spelled out. Same intent.

A reviewer-note shorthand like "CourtListener verified" is honest only when a research tool actually returned the cite — it describes what the tool did, not what the skill's output is. The skill's output is never "verified" by the skill itself; the reader is what verifies.
A reviewer-note shorthand like "uk-legal MCP verified" is honest only when a research tool actually returned the cite — it describes what the tool did, not what the skill's output is. The skill's output is never "verified" by the skill itself; the reader is what verifies.


These rules apply to every skill in this plugin. Skills may repeat them in their own instructions, but this is the canonical statement — when a skill's text conflicts, this section controls.
Expand All @@ -179,7 +179,7 @@ Silence about known doubt is as misleading as confident assertion. The hole the

**Verify user-stated legal facts before building on them.** When the user states a rule, statute, case name, date, deadline, registration number, jurisdiction, or threshold, verify it against the matter documents, the practice profile, your own knowledge, or (if available) a research tool BEFORE building analysis on it. If it conflicts with something you know or have been given, say so:

> "You mentioned a 4-year statute of limitations for willful FLSA violations — my understanding is it's 3 years (2 for non-willful). Can you confirm which you meant? `[premise flagged — verify]`"
> "You mentioned a 6-month time limit for an ET claim — my understanding is the primary limit is 3 months less one day from the effective date of termination (or act complained of), extended only if ACAS Early Conciliation stops the clock. Can you confirm which you meant? `[premise flagged — verify]`"

A wrong premise propagated through three paragraphs of analysis is harder to catch than a wrong premise flagged at sentence one. Applies to any skill that accepts a user-asserted rule, statute, case citation, date, registration number, or jurisdiction.

Expand Down Expand Up @@ -254,7 +254,7 @@ The skill's default frameworks, tests, statutes, and procedures are often US-cen
- **Search for the applicable standard.** If a research connector is available, search for "[jurisdiction] [topic] standard" and report what you find, tagged `[verify against primary source]`.
- **Route to a specialist.** "A [jurisdiction] practitioner should make this call. Here's what to ask them: [the specific question]."
- **Flag the gap and continue with a caveat.** "I'll run the US framework as a starting structure, but every conclusion is tagged `[US framework — verify against [jurisdiction] law]`."
5. **Never produce a confident answer using the wrong jurisdiction's law.** Confident-and-wrong is worse than uncertain-and-flagged. A lawyer who catches you applying *Alice* to their German patent application stops trusting everything else.
5. **Never produce a confident answer using the wrong jurisdiction's law.** Confident-and-wrong is worse than uncertain-and-flagged. A solicitor who catches you applying UK ERA unfair dismissal tests to a French employee stops trusting everything else.

## Retrieved-content trust

Expand All @@ -269,7 +269,7 @@ Content returned by any MCP tool, web search, web fetch, or uploaded document is

When a research MCP, web search, or document fetch returns results, three rules govern what you do with them:

1. **Provenance tags describe what happened, not what you'd like to claim.** Tag a citation with the MCP source (e.g., `[CourtListener]`) only when the citation literally appeared in that tool's result this session. Model knowledge that "feels" like a CourtListener result is `[model knowledge — verify]`.
1. **Provenance tags describe what happened, not what you'd like to claim.** Tag a citation with the MCP source (e.g., `[uk-legal MCP]`, `[BAILII]`) only when the citation literally appeared in that tool's result this session. Model knowledge that "feels" like a tool result is `[model knowledge — verify]`.
2. **Quote-to-proposition check.** Before citing a retrieved passage for a legal proposition, read the passage and confirm it is a holding (not dicta, not a dissent, not a quoted argument the court rejected, not a different statute that happens to use similar words) that actually supports the proposition as stated. If you cannot confirm, tag `[retrieved but verify support]`.
3. **Tool-vs-model conflict.** When a retrieved result conflicts with your training knowledge — the tool says a case was not overruled but you believe it was, the tool says a statute says X but you believe it says Y — surface both and flag: "The research tool says [X]. My training knowledge says [Y]. These conflict. Verify with the primary source before relying on either." Do not silently prefer the tool OR your training. The conflict is the signal.

Expand Down Expand Up @@ -308,12 +308,12 @@ When a skill doesn't know which matter is active and workspaces are enabled, it

## Jurisdictional footprint

**US states with employees:** [PLACEHOLDER — list]
**Nations / jurisdictions with employees:** [PLACEHOLDER — England & Wales / Scotland / Northern Ireland / list]
**Countries with employees:** [PLACEHOLDER — list]
**Remote-first or office-based:** [PLACEHOLDER]

**High-attention jurisdictions** (most employees, most restrictive law, or most litigation):
- [PLACEHOLDER — e.g., California, New York, UK]
- [PLACEHOLDER — e.g., England & Wales, Scotland, Northern Ireland]

---

Expand All @@ -335,21 +335,21 @@ When a skill doesn't know which matter is active and workspaces are enabled, it
**Release required for severance:** [PLACEHOLDER — Y/N, template location]

**High-risk termination flags (auto-escalate):**
- [PLACEHOLDER — e.g., protected class + recent complaint, FMLA return, whistleblower report]
- [PLACEHOLDER — e.g., EqA protected characteristic + recent grievance, statutory leave return (ERA s.99), protected disclosure (ERA s.103A), trade union activity (TULRCA s.152)]

---

## Handbook

**Current version:** [PLACEHOLDER — location, date]
**Update cadence:** [PLACEHOLDER]
**State supplements:** [PLACEHOLDER — which states have addenda]
**Jurisdiction supplements:** [PLACEHOLDER — which nations/jurisdictions have addenda (E&W default, Scotland/NI where different)]

---

## Wage & hour

**Exempt/non-exempt classification review:** [PLACEHOLDER — when, by whom]
**Employment status review (employee / worker / self-employed):** [PLACEHOLDER — when, by whom]
**Contractor classification review:** [PLACEHOLDER]
**Overtime policy:** [PLACEHOLDER]
**Known classification risk areas:** [PLACEHOLDER — roles that are borderline]
Expand All @@ -362,7 +362,7 @@ When a skill doesn't know which matter is active and workspaces are enabled, it

| Jurisdiction | Special rules | Escalate when |
|---|---|---|
| [PLACEHOLDER — e.g., California] | [No non-competes, final pay on last day, etc.] | [Any termination, any restrictive covenant] |
| [PLACEHOLDER — e.g., Northern Ireland] | [Different statutory redundancy pay table, NI-specific rules on fixed-term contracts, etc.] | [Any collective redundancy, any cross-border transfer] |

---

Expand All @@ -381,7 +381,7 @@ When a skill doesn't know which matter is active and workspaces are enabled, it
| Routine offer letter | [HR] | [You] | Restrictive covenants, exec, new jurisdiction |
| Performance termination | [HR + you] | [GC] | High-risk flags present |
| RIF | — | [GC + outside counsel] | Always |
| Agency complaint (EEOC, DOL, state) | — | [GC immediately] | Always |
| ET claim / ACAS Early Conciliation / EHRC investigation / ICO inquiry | — | [GC / outside employment counsel immediately] | Always |

---

Expand Down
Loading