lucianschw-dev bolts an EU-law brain onto Mike's chat

A second chat endpoint hands questions off to a dedicated EU-law tool service running alongside the main app.

integrationchat-ui

lucianschw-dev's fork adds a parallel chat experience tuned for European law. When a user asks something in this lane, the assistant can call out to a separate service - a sibling app whose only job is answering EU-law questions with the right tools and sources - and weave the results back into the conversation.

The plumbing uses MCP, an emerging standard for letting AI assistants call external tool servers in a structured way. Unusually, this fork wires the two services together over plain web requests rather than the more common local pipe, which makes the EU-law brain easy to deploy and scale on its own. The chat endpoint itself is largely cloned from Mike's existing one, so there's some near-duplication waiting to be tidied - but the hand-off mechanism underneath is the genuinely reusable idea here.

So what Worth a look for any legal-tech team weighing how to bolt jurisdiction-specific or domain-specific reasoning onto a general legal assistant without forking the whole product.

View this fork on GitHub →

Spotted something wrong? Or know the PR text has fresher detail than the writeup above?

Commits in this thread

2 commits from lucianschw-dev/eumike, oldest first. Source extracted verbatim from the harvested git log.

SHA Subject Author Date
3f39cef1 Add /eu-law-chat endpoint and MCP dispatcher hook Lucian.schw 2026-05-17 ↗ GitHub
commit body
- chatTools.ts: optional mcpTools parameter on runLLMStream (intercepts
  named tool calls and routes them to an external dispatcher before they
  fall through to runToolCalls)
- euLawMcp.ts: thin HTTP client for the eu-law MCP server, plus
  dispatchEuLawCalls wired into chatTools.ts's mcpTools.dispatch slot
- euLawChat.ts: copy of /chat with EU_LAW_SYSTEM_PROMPT_EXTRA, 4
  hand-written tool schemas, and the MCP dispatcher
- index.ts: register /eu-law-chat router and apply chat rate limiters
30efd52d Backend npm install: lockfile refresh Lucian.schw 2026-05-17 ↗ GitHub

Capture this thread into my fork

Download a single Markdown prompt that tells Claude how to port every commit above into your working tree — adapting paths and structure to match your repo. Run it via claude -p < capture-thread-465.md from inside the repo you want the changes in.

⬇ Download capture-thread-465.md