@pipeworx/it-normattiva
Connect: https://pipeworx.io/mcp — every tool in the catalog, including @pipeworx/it-normattiva’s. Install: one-click buttons
Connect to just the @pipeworx/it-normattiva pack
https://gateway.pipeworx.io/it-normattiva/mcp — only @pipeworx/it-normattiva’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
Italian national legislation — search, resolve an exact URN:NIR citation, and read one article’s original-language text as of any date (multivigenza), with publication (Gazzetta Ufficiale) dates kept separate from emanation and in-force dates.
Tools
it_normattiva_search(query?, title?, act_type?, in_force_on?, emanation_date_from?, emanation_date_to?, publication_date_from?, publication_date_to?, limit?, offset?)— search Italian national acts by full-text words, title words, official act type (e.g."LEGGE","DECRETO LEGISLATIVO","DECRETO-LEGGE","COSTITUZIONE","REGOLAMENTO") and/or date range. Every result carries a constructedurnfield (act type, date and number — e.g.urn:nir:stato:decreto.legislativo:2003-06-30;196) that chains straight into the two tools below. Free-textquerymatching is OR-across-words over the whole corpus, not an exact phrase — narrow withtitle/act_type/dates for tight results.it_normattiva_get_act(urn, as_of?, original?)— resolve an exact citation (URN:NIR, e.g."urn:nir:stato:decreto.legislativo:2003-06-30;196", the Privacy Code) to its title, act type, emanation date, Gazzetta Ufficiale publication date and the opening text (preamble through the start of Article 1).as_of(YYYY-MM-DD) resolves the version in force on that date (multivigenza);original: truereturns the text as originally enacted.it_normattiva_get_article(urn, article, annex?, as_of?, original?)— the original-language text of one article (e.g.article: "1","12-bis") of an act, as of a given date.urnis the bare act citation (no article suffix);annexselects an article inside an allegato instead of the main body. Publication, emanation and in-force-from/until dates all come back as separate fields, never folded together.
Both get_act and get_article return found: false with a message (and,
if the citation is genuinely ambiguous — most commonly the same act
republished across more than one Gazzetta Ufficiale supplement — a
candidates list) rather than an error, when nothing or more than one thing
resolves.
Auth
Keyless.
Data sources
- Istituto Poligrafico e Zecca dello Stato (IPZS), Normattiva Open Data — Italy’s official consolidated-law database (laws, decree-laws, legislative decrees, the Constitution, regulations and other national acts), published for the Presidenza del Consiglio dei Ministri. Every act is addressable article by article via its URN:NIR citation and carries its full multivigenza history — the text as amended, plus every historical version with its own in-force window.
Notes
- Multivigenza, concretely: the upstream resolves a version by appending
a selector to the citation (
!vig=<date>for “in force on this date”,@originalefor “as enacted”) — this pack exposes those asas_of/originalrather than asking a caller to hand-build the suffix. - Article 1’s text usually includes the full preamble. Italian decrees
and laws place the enacting formula and every “VISTO …/VISTA …” recital
before “Art. 1” in the same structural block the upstream returns, so
it_normattiva_get_articlewitharticle: "1"(andit_normattiva_get_actwith no article) can return a long block of preamble text ahead of the article itself — that is the source’s own structure, not truncation or duplication on this pack’s part. act_typeand theurnact-type segment are related but not spelled the same. The URN segment joins the official label’s words with dots and turns a hyphen into a dot too ("DECRETO LEGISLATIVO"->"decreto.legislativo","DECRETO-LEGGE"->"decreto.legge"). Build URNs fromit_normattiva_searchresults rather than by hand where possible.- Keyless, live proxy. One upstream request per tool call. Nothing from
Normattiva is baked into the pack or mirrored (the gateway bundle is near
its ceiling — see
docs/international-legal-scope.md).
Tools
- it_normattiva_search — Search Italian national legislation (laws, decree-laws, legislative decrees, the Constitution, regulations, …) by full-text words, title words, act type and/or date range. Returns matching acts with t
- it_normattiva_get_act — Resolve an exact citation (URN:NIR) to an Italian national act — e.g. “urn:nir:stato:decreto.legislativo:2003-06-30;196” (the Privacy Code). Returns the act’s title, type, emanation date, Gazzetta Uff
- it_normattiva_get_article — Get the original-language (Italian) text of one article of an Italian national act, as of a given date. “urn” is the bare act citation (e.g. “urn:nir:stato:decreto.legislativo:2003-06-30;196”, from it
Tools
it_normattiva_get_act— Resolve an exact citation (URN:NIR) to an Italian national act — e.g. urn:nir:stato:decreto.legislativo:2003-06-30;196 (the Privacy Code). Returns the act's title, type, emanation date, Gazzetta Ufficit_normattiva_get_article— Get the original-language (Italian) text of one article of an Italian national act, as of a given date. urn is the bare act citation (e.g. urn:nir:stato:decreto.legislativo:2003-06-30;196 , from it_noit_normattiva_search— Search Italian national legislation (laws, decree-laws, legislative decrees, the Constitution, regulations, …) by full-text words, title words, act type and/or date range. Returns matching acts with t