{"_id":"@ansvar/norwegian-law-mcp","_rev":"2-929dc6cb85315b880691bfcddebad642","name":"@ansvar/norwegian-law-mcp","dist-tags":{"latest":"1.0.1"},"versions":{"1.0.1":{"name":"@ansvar/norwegian-law-mcp","version":"1.0.1","keywords":["mcp","model-context-protocol","ai","claude","norwegian-law","norway","legal","compliance","lovdata","lov","ansvar"],"author":{"name":"Ansvar Systems AB","email":"hello@ansvar.ai"},"license":"Apache-2.0","_id":"@ansvar/norwegian-law-mcp@1.0.1","maintainers":[{"name":"ansvar","email":"jeffrey.von.rotz@ansvar.eu"}],"homepage":"https://github.com/Ansvar-Systems/norwegian-law-mcp#readme","bugs":{"url":"https://github.com/Ansvar-Systems/norwegian-law-mcp/issues"},"bin":{"norwegian-law-mcp":"dist/index.js"},"dist":{"shasum":"2f98ff5bbd883b8a6d99d21b0dec98b1aaec6d7c","tarball":"https://registry.npmjs.org/@ansvar/norwegian-law-mcp/-/norwegian-law-mcp-1.0.1.tgz","fileCount":139,"integrity":"sha512-PVbLsjRTiifougVQrenDpWH/x7P81Xpq/LaSQ1M6ov/2rfjbP/hV9PX6ifKvEqsjzqijfLxNwyRNf09xcef0IQ==","signatures":[{"sig":"MEUCIQCr+PKtcyLi1j6ZSxnpOf62Q+lsf5tNiO+501FvsLxRjAIgRRQ/l3nQ9mmu38oAR0d2wW5ASMISONsr9yNwlNrAIdE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":308672},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18"},"gitHead":"e4d1305af3ffd6ce5fb9571753fb7268c776d7ab","mcpName":"eu.ansvar/norwegian-law-mcp","scripts":{"dev":"node --import tsx src/index.ts","lint":"eslint src tests","test":"vitest run","build":"tsc","start":"node dist/index.js","ingest":"node --import tsx scripts/ingest-lovdata.ts","build:db":"node --import tsx scripts/build-db.ts","validate":"npm run lint && npm test && npm run test:contract","ingest:all":"node --import tsx scripts/ingest-relevant-laws-no.ts data/relevant-statutes-all.json","sync:cases":"node --import tsx scripts/sync-case-law-metadata-no.ts","test:watch":"vitest","audit:seeds":"node --import tsx scripts/audit-seeds.ts","postinstall":"test -d dist || npm run build || true","drift:detect":"node --import tsx scripts/drift-detect.ts","fetch:eurlex":"node --import tsx scripts/fetch-eurlex-metadata.ts","ingest:cases":"node --import tsx scripts/ingest-case-law-metadata-no.ts","build:db:paid":"node --import tsx scripts/build-db-paid.ts","check-updates":"node --import tsx scripts/check-updates.ts","test:contract":"vitest run __tests__/contract/","test:coverage":"vitest run --coverage","prepublishOnly":"npm run build","ingest:auto-all":"node --import tsx scripts/ingest-official-catalog-no.ts","ingest:relevant":"node --import tsx scripts/ingest-relevant-laws-no.ts","sync:cases:full":"node --import tsx scripts/sync-case-law-metadata-no.ts --full","sync:prep-works":"node --import tsx scripts/sync-preparatory-works-no.ts","verify:eu-coverage":"node --import tsx scripts/verify-eu-coverage.ts","extract:definitions":"node --import tsx scripts/extract-definitions.ts","migrate:eu-references":"node --import tsx scripts/migrate-eu-references.ts","import:eurlex-documents":"node --import tsx scripts/import-eurlex-documents.ts","ingest:cases:full-archive":"node --import tsx scripts/ingest-case-law-metadata-no.ts --full"},"_npmUser":{"name":"ansvar","email":"jeffrey.von.rotz@ansvar.eu"},"repository":{"url":"git+https://github.com/Ansvar-Systems/norwegian-law-mcp.git","type":"git"},"_npmVersion":"11.6.2","description":"Production-grade Norwegian legal research MCP server with official-source ingestion and licensing-aware controls","directories":{},"_nodeVersion":"25.2.1","dependencies":{"@ansvar/mcp-sqlite":"^1.0.3","@modelcontextprotocol/sdk":"^1.25.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","jsdom":"^27.4.0","vitest":"^4.0.18","typescript":"^5.9.3","@types/node":"^22.15.29","@types/jsdom":"^21.1.7","@vercel/node":"^5.6.3","fast-xml-parser":"^5.3.5","@vitest/coverage-v8":"^4.0.18"},"_npmOperationalInternal":{"tmp":"tmp/norwegian-law-mcp_1.0.1_1771572435557_0.2574778828549993","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Ansvar MCP servers are now distributed as source from github.com/Ansvar-Systems/norwegian-law-mcp under Apache 2.0. Self-hosting instructions: see the repo README. Hosted gateway: ansvar.eu"}},"time":{"created":"2026-02-20T07:27:15.469Z","modified":"2026-05-02T05:48:02.434Z","1.0.1":"2026-02-20T07:27:15.705Z"},"bugs":{"url":"https://github.com/Ansvar-Systems/norwegian-law-mcp/issues"},"author":{"name":"Ansvar Systems AB","email":"hello@ansvar.ai"},"license":"Apache-2.0","homepage":"https://github.com/Ansvar-Systems/norwegian-law-mcp#readme","keywords":["mcp","model-context-protocol","ai","claude","norwegian-law","norway","legal","compliance","lovdata","lov","ansvar"],"repository":{"url":"git+https://github.com/Ansvar-Systems/norwegian-law-mcp.git","type":"git"},"description":"Production-grade Norwegian legal research MCP server with official-source ingestion and licensing-aware controls","maintainers":[{"name":"ansvar","email":"jeffrey.von.rotz@ansvar.eu"}],"readme":"# Norwegian Law MCP Server\n\nProduction-grade MCP server for Norwegian legal research with licensing-aware ingestion controls.\n\n## What this server provides\n- Search and retrieval tools for legal documents/provisions\n- EU cross-reference tooling\n- Deterministic SQLite build pipeline\n- Capability detection via DB schema\n- Daily data freshness monitor with optional auto-PR\n- Security and publishing workflows (CodeQL, Semgrep, Trivy, Gitleaks, Socket, Scorecard, provenance publish)\n\n## Hard architecture parity (implemented)\n- `build:db` is **destructive** and rebuilds from seed files\n- `build:db:paid` is **additive** and upgrades schema/tier metadata\n- `db_metadata` table is written and read for runtime capability detection\n- Database artifacts are gitignored (`data/*.db`, `*.db-wal`, `*.db-shm`)\n- `server.json` present and aligned with `package.json` `mcpName`\n\n## Country-specific ingestion and legal-risk control\nOfficial-source direction for Norway is configured with a licensing gate.\n\n- Ingestion script: `scripts/ingest-lovdata.ts`\n- License gate module: `scripts/lib/legal-data-license.ts`\n- Policy seed: `data/seed/_legal_data_license.json`\n- Policy doc: `LEGAL_DATA_LICENSE.md`\n\nDefault policy mode is full-text for covered statutes/regulations and metadata-only for restricted sources (for example case-law channels without explicit rights).\n\n## Install\n```bash\nnpm ci\nnpm run build:db\nnpm run build\nnpm test\n```\n\n## Run\n```bash\nnpm start\n```\n\n## Key scripts\n- `npm run build:db` - destructive free-tier DB rebuild from seeds\n- `npm run build:db:paid` - additive professional-tier schema upgrade\n- `npm run ingest -- <LOV-ID> <output-file>` - license-gated Norwegian ingestion\n- `npm run ingest:all` - ingest full official NL+NLO statute catalog from `data/relevant-statutes-all.json`\n- `npm run ingest:auto-all` - default full-catalog ingestion entrypoint (same dataset as `ingest:all`)\n- `npm run check-updates` - official-source freshness check\n\n## Validation commands\n```bash\nnpm ci\nnpm run build:db\nnpm run build\nnpm test\nnpm run check-updates\ngitleaks detect --source . --report-format sarif --report-path gitleaks.sarif --no-git\n```\n\n## Security workflows\n- `.github/workflows/codeql.yml`\n- `.github/workflows/semgrep.yml`\n- `.github/workflows/trivy.yml`\n- `.github/workflows/gitleaks.yml`\n- `.github/workflows/socket-security.yml`\n- `.github/workflows/ossf-scorecard.yml`\n\n## Publishing\n- npm package publish workflow uses provenance attestation\n- `server.json` included for MCP registry compatibility\n- `package.json` includes `mcpName: eu.ansvar/norwegian-law-mcp`\n\n## Disclaimer\nThis project is a legal research tool and not legal advice. Always verify authoritative legal text at official publication links.\n","readmeFilename":"README.md"}