@pipeworx/louisiana-code

Connect: https://pipeworx.io/mcp — every tool in the catalog, including @pipeworx/louisiana-code’s. Install: one-click buttons

Connect to just the @pipeworx/louisiana-code pack

https://gateway.pipeworx.io/louisiana-code/mcp — only @pipeworx/louisiana-code’s own tools, nothing else in the catalog.

No MCP client? Skip the connection: POST https://gateway.pipeworx.io/v1/tools/search_packs {"query":"..."} to find a tool below, GET /v1/tools/<name> for its schema, POST the same URL with arguments for the data — see For AI agents.

Tools: 3

Louisiana law by citation — Revised Statutes, Civil Code, Code of Civil Procedure, Code of Criminal Procedure, Code of Evidence, Children’s Code and the Louisiana Constitution — with each section’s enactment and amendment history parsed out, plus full-text topic search across those code bodies and a browse of every section in one Revised Statutes title. Keyless, sourced live from the Louisiana State Legislature.

Tools

  • louisiana_statute(citation | doc_id) — full text of one section: "RS 14:20", "La. R.S. 9:2800.1", "14:20", "CC 2315", "La. C.C. art. 2315", "CCP 966", "C.Cr.P. art. 701", "CE 404", "CHC 603", "Const. Art. I, §5" / "CONST 1:5", or the legis.la.gov doc_id a search result carries. Returns heading, hierarchy (the chapter/title lines above the section), text, the trailing history line (“Added by Acts 1976, No. 655, §1. Amended by Acts 2014, No. 163, §1.”) parsed into amendments ({year, act, session}), and last_amended_year.
  • louisiana_law_search(query, bodies?, limit?) — full-text search by topic/keyword (“vehicular homicide”, “security deposit lessor”, “comparative fault”), optionally narrowed to code bodies (RS, CC, CCP, CCRP, CE, CHC, CONST, CA, HRULE, SRULE, JRULE; default all). Relevance-ranked rows with citation, heading, last-modified date and doc_id, plus the source’s total.
  • louisiana_title_contents(title, filter?, offset?, limit?) — every section of one Revised Statutes title with its heading and doc_id (Title 14 has 729, Title 32 has 870), optionally filtered by a word in the heading; repealed sections are flagged.

Auth

Keyless.

Data sources

Shape of this source, because it is a WebForms site and not an API

Everything is reachable with plain HTTP — no cookie, no JavaScript, no CAPTCHA, no Lexis hop — but three of the four routes are form POSTs:

  1. Doc ids are not in citation order. d=78337 is RS 14:2, d=78338 is RS 14:20, d=78339 is RS 14:201 (string-sorted). So a citation cannot be computed into a URL; the “View a Specific Law” form does the mapping. POST the form’s hidden __VIEWSTATE/__EVENTVALIDATION fields plus ddlLawBodies, tbFirstNumber, tbSecondNumber and btnViewLaw=View; the server answers 302 to Law.aspx?d=<id>. An unknown citation re-renders the form with HTTP 200 and no redirect — that is the not-found signal (there is no message).
  2. Non-RS bodies need the dropdown’s own postback first. Selecting Civil Code etc. is a __doPostBack('...ddlLawBodies') that switches the form to a single “Article” box; posting the article number against the fresh RS-state form is silently ignored. The pack runs that switch once per body and caches the resulting hidden fields.
  3. The viewstate is not session-bound. One GET of the form supplies fields that stay valid for repeated POSTs (verified: two different citations resolved off the same fields, no cookie ever set). The pack caches them per isolate for 30 minutes and refreshes once on a POST that comes back without a redirect, so a warm citation lookup is one POST + one GET.
  4. Search posts to LawSearchList.aspx, not back to the form (the button’s WebForm_PostBackOptions names it). The per-body checkboxes are cbLaws$0..cbLaws$10 (0 CHC, 1 CC, 2 CCP, 3 CCRP, 4 CE, 5 CA, 6 CONST, 7 HRULE, 8 JRULE, 9 RS, 10 SRULE); cbLaws$11 “Select All” is client-side JavaScript only — the server ignores it, so “all bodies” means ticking all ten. A single-hit search 302s straight to the section page. The list renders the first 100 of N, relevance-sorted, and states N (“There are 347 sections of law in this list”).
  5. A one-word query that matches too many sections is refused silently: "tax" against RS 302s back to the blank form, byte-identical to a fresh GET. The pack reports that as search_rejected with a hint to add a word. The engine ANDs every word; a or b, a not b and ""exact phrase"" (doubled quotes) are its own syntax.
  6. Pages hard-wrap paragraphs with raw newlines. The history paragraph of RS 14:30 spans nine source lines. Split on <P> tags, never on newlines, or the history line fragments and only its first piece reads as history.
  7. Form field names contain $. URLSearchParams encodes it as %24, which is what IIS expects; a body that leaves $ literal gets the form re-rendered with HTTP 200 and nothing else.

The four capabilities, and the one the source cannot do

CapabilityStatusHow
Topic searchyeslouisiana_law_search (the legislature’s own full-text engine)
Section by citationyeslouisiana_statute (form POST → 302 → section page)
Amendment / enactment historyyestrailing history paragraph, parsed into amendments
Historical point-in-time versionnolegis.la.gov serves the current compiled text only; every section response says so in historical_version

laws_current_through on every response is the legislature’s own “updated through the …” line (e.g. “2025 First Extraordinary Session”), read from the search form.

Tools

  • louisiana_statute — Get the FULL TEXT of one section of Louisiana law by citation — Louisiana Revised Statutes (“RS 14:20” justifiable homicide, “La. R.S. 32:414” driver licence suspension), Civil Code articles (“CC 2315
  • louisiana_law_search — Full-text search of Louisiana law BY TOPIC or keyword — “vehicular homicide”, “security deposit lessor”, “concealed handgun permit”, “wrongful death damages” — across the Revised Statutes, Civil Code,
  • louisiana_title_contents — List every section in one TITLE of the Louisiana Revised Statutes with its heading and doc_id — Title 14 Criminal Law, Title 32 Motor Vehicles, Title 47 Revenue and Taxation, Title 9 Civil Code Ancill

Tools

  • louisiana_law_search — Full-text search of Louisiana law BY TOPIC or keyword — vehicular homicide , security deposit lessor , concealed handgun permit , wrongful death damages — across the Revised Statutes, Civil Code, Code
  • louisiana_statute — Get the FULL TEXT of one section of Louisiana law by citation — Louisiana Revised Statutes ( RS 14:20 justifiable homicide, La. R.S. 32:414 driver licence suspension), Civil Code articles ( CC 2315 li
  • louisiana_title_contents — List every section in one TITLE of the Louisiana Revised Statutes with its heading and doc_id — Title 14 Criminal Law, Title 32 Motor Vehicles, Title 47 Revenue and Taxation, Title 9 Civil Code Ancill

Regenerated from source · build October 7, 2026