{"_id":"@ansvar/russian-law-mcp","_rev":"2-90bc3623287887c85f6d561718af3259","name":"@ansvar/russian-law-mcp","dist-tags":{"latest":"0.1.0"},"versions":{"0.1.0":{"name":"@ansvar/russian-law-mcp","version":"0.1.0","keywords":["law","legislation","russia","russian","legal-research","compliance","mcp","open-law"],"license":"Apache-2.0","_id":"@ansvar/russian-law-mcp@0.1.0","maintainers":[{"name":"ansvar","email":"jeffrey.von.rotz@ansvar.eu"}],"homepage":"https://ansvar.eu/open-law","bugs":{"url":"https://github.com/Ansvar-Systems/Russian-Law-MCP/issues"},"bin":{"russian-law-mcp":"dist/index.js"},"dist":{"shasum":"8605b17f75897b77cd7a340549301a408314c681","tarball":"https://registry.npmjs.org/@ansvar/russian-law-mcp/-/russian-law-mcp-0.1.0.tgz","fileCount":88,"integrity":"sha512-8fKToLYvxA7FNW09yQOHeWO1TL3XAN1cTw98UnqOu5p3ImrFaXOOSBBhYA1AEYAq+MAnj7dT0nvlw9mMg4MJTQ==","signatures":[{"sig":"MEUCIQCZqRiUnQsRbHxCl6AybkmVav8O0BBvmeHE19oythCrMAIgBGGyJcEzVlX/g3dHIaMVI4IJcyItOA/iafsb5xAo2K0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":542474403},"main":"dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=18"},"gitHead":"016a9c18db92fcce366aa94d95f386ba446ed75f","mcpName":"eu.ansvar/russian-law-mcp","scripts":{"dev":"tsx src/index.ts","lint":"tsc --noEmit","test":"vitest run","build":"tsc","start":"node dist/index.js","ingest":"tsx scripts/ingest-pravo.ts","build:db":"tsx scripts/build-db.ts","validate":"npm run lint && npm run test && npm run test:contract","test:watch":"vitest","drift:detect":"tsx scripts/drift-detect.ts","check-updates":"tsx scripts/check-updates.ts","ingest:census":"tsx scripts/ingest-pravo.ts --census-only","test:contract":"vitest run __tests__/contract/","test:coverage":"vitest run --coverage","ingest:ruslawod":"python3 scripts/ingest-ruslawod.py","ingest:ruslawod:census":"python3 scripts/ingest-ruslawod.py --census-only"},"_npmUser":{"name":"ansvar","email":"jeffrey.von.rotz@ansvar.eu"},"repository":{"url":"git+https://github.com/Ansvar-Systems/Russian-Law-MCP.git","type":"git"},"_npmVersion":"10.9.4","description":"Production-grade Russian legal research MCP server with comprehensive federal legislation coverage and EU/international law cross-references","directories":{},"_nodeVersion":"22.22.0","dependencies":{"@ansvar/mcp-sqlite":"^1.0.3","@modelcontextprotocol/sdk":"^1.25.3"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","vitest":"^4.0.18","cheerio":"^1.2.0","typescript":"^5.9.3","@types/node":"^22.15.29","@types/cheerio":"^0.22.35","better-sqlite3":"^12.6.2","@types/better-sqlite3":"^7.6.13"},"_npmOperationalInternal":{"tmp":"tmp/russian-law-mcp_0.1.0_1772182900518_0.05313175128870751","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Ansvar MCP servers are now distributed as source from github.com/Ansvar-Systems/russian-law-mcp under Apache 2.0. Self-hosting instructions: see the repo README. Hosted gateway: ansvar.eu"}},"time":{"created":"2026-02-27T09:01:40.402Z","modified":"2026-05-02T05:48:22.775Z","0.1.0":"2026-02-27T09:01:44.373Z"},"bugs":{"url":"https://github.com/Ansvar-Systems/Russian-Law-MCP/issues"},"license":"Apache-2.0","homepage":"https://ansvar.eu/open-law","keywords":["law","legislation","russia","russian","legal-research","compliance","mcp","open-law"],"repository":{"url":"git+https://github.com/Ansvar-Systems/Russian-Law-MCP.git","type":"git"},"description":"Production-grade Russian legal research MCP server with comprehensive federal legislation coverage and EU/international law cross-references","maintainers":[{"name":"ansvar","email":"jeffrey.von.rotz@ansvar.eu"}],"readme":"# Russian Law MCP Server\n\n**Russian federal legislation, AI-readable.**\n\n[![npm version](https://badge.fury.io/js/@ansvar%2Frussian-law-mcp.svg)](https://www.npmjs.com/package/@ansvar/russian-law-mcp)\n[![MCP Registry](https://img.shields.io/badge/MCP-Registry-blue)](https://registry.modelcontextprotocol.io)\n[![License](https://img.shields.io/badge/License-Apache_2.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)\n[![GitHub stars](https://img.shields.io/github/stars/Ansvar-Systems/Russian-Law-MCP?style=social)](https://github.com/Ansvar-Systems/Russian-Law-MCP)\n[![CI](https://github.com/Ansvar-Systems/Russian-Law-MCP/actions/workflows/ci.yml/badge.svg)](https://github.com/Ansvar-Systems/Russian-Law-MCP/actions/workflows/ci.yml)\n[![Daily Data Check](https://github.com/Ansvar-Systems/Russian-Law-MCP/actions/workflows/check-updates.yml/badge.svg)](https://github.com/Ansvar-Systems/Russian-Law-MCP/actions/workflows/check-updates.yml)\n\nQuery **12,393 Russian federal laws** -- from the Civil Code and Criminal Code to the Personal Data Law and Communications Law -- directly from Claude, Cursor, or any MCP-compatible client. 79,178 provisions, full-text searchable.\n\nIf you're building legal tech, compliance tools, or doing Russian legal research, this is your verified reference database.\n\nBuilt by [Ansvar Systems](https://ansvar.eu) -- Stockholm, Sweden\n\n---\n\n## Why This Exists\n\nRussian legal research requires navigating pravo.gov.ru, ConsultantPlus, and multiple government portals. Whether you're:\n- A **lawyer** validating citations in a contract or brief\n- A **compliance officer** checking if a federal law is still in force\n- A **legal tech developer** building tools on Russian law\n- A **researcher** analyzing Russian regulatory frameworks\n\n...you shouldn't need to manually navigate government portals and PDF documents. Ask Claude. Get the exact provision. With context.\n\nThis MCP server makes Russian federal law **searchable, cross-referenceable, and AI-readable**.\n\n---\n\n## Quick Start\n\n### Use Remotely (No Install Needed)\n\n> Connect directly to the hosted version -- zero dependencies, nothing to install.\n\n**Endpoint:** `https://russian-law-mcp.fly.dev/mcp`\n\n| Client | How to Connect |\n|--------|---------------|\n| **Claude.ai** | Settings > Connectors > Add Integration > paste URL |\n| **Claude Code** | `claude mcp add russian-law --transport http https://russian-law-mcp.fly.dev/mcp` |\n| **Claude Desktop** | Add to config (see below) |\n| **GitHub Copilot** | Add to VS Code settings (see below) |\n\n**Claude Desktop** -- add to `claude_desktop_config.json`:\n\n```json\n{\n  \"mcpServers\": {\n    \"russian-law\": {\n      \"type\": \"url\",\n      \"url\": \"https://russian-law-mcp.fly.dev/mcp\"\n    }\n  }\n}\n```\n\n**GitHub Copilot** -- add to VS Code `settings.json`:\n\n```json\n{\n  \"github.copilot.chat.mcp.servers\": {\n    \"russian-law\": {\n      \"type\": \"http\",\n      \"url\": \"https://russian-law-mcp.fly.dev/mcp\"\n    }\n  }\n}\n```\n\n### Use Locally (npm)\n\n```bash\nnpx @ansvar/russian-law-mcp\n```\n\n**Claude Desktop** -- add to `claude_desktop_config.json`:\n\n**macOS:** `~/Library/Application Support/Claude/claude_desktop_config.json`\n**Windows:** `%APPDATA%\\Claude\\claude_desktop_config.json`\n\n```json\n{\n  \"mcpServers\": {\n    \"russian-law\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@ansvar/russian-law-mcp\"]\n    }\n  }\n}\n```\n\n**Cursor / VS Code:**\n\n```json\n{\n  \"mcp.servers\": {\n    \"russian-law\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@ansvar/russian-law-mcp\"]\n    }\n  }\n}\n```\n\n## Example Queries\n\nOnce connected, just ask naturally:\n\n- *\"What does Federal Law 152-FZ say about personal data processing consent?\"*\n- *\"Is Article 1259 of the Civil Code still in force?\"*\n- *\"Find provisions about kriticheskaya informatsionnaya infrastruktura in Russian law\"*\n- *\"What are the penalties for data breaches under KoAP RF?\"*\n- *\"Search for provisions about electronic signatures in Russian legislation\"*\n- *\"Validate the citation: Federalnyy zakon ot 27.07.2006 No. 152-FZ\"*\n\n---\n\n## What's Included\n\n| Category | Count | Details |\n|----------|-------|---------|\n| **Federal Laws** | 12,132 | All federal laws from 1991-2023 |\n| **Federal Constitutional Laws** | 193 | All FKZ documents |\n| **Codes** | 43 | Civil, Criminal, Labor, Tax, Administrative, etc. |\n| **Constitution** | 1 | Full text (142 articles) |\n| **Total Provisions** | 79,178 | Article-level, full-text searchable (FTS5) |\n| **Database Size** | ~530 MB | SQLite + FTS5, Cyrillic optimized |\n\n**100% coverage of ingestable Russian federal legislation.** Every provision is sourced from pravo.gov.ru via the [RusLawOD](https://huggingface.co/datasets/irlspbru/RusLawOD) academic dataset. Zero LLM-generated content.\n\n---\n\n## Available Tools (13)\n\n### Core Legal Research Tools (6)\n\n| Tool | Description |\n|------|-------------|\n| `search_legislation` | FTS5 search on 79,178 provisions with BM25 ranking |\n| `get_provision` | Retrieve specific provision by document ID + article/section |\n| `validate_citation` | Validate citation against database (zero-hallucination check) |\n| `build_legal_stance` | Aggregate citations from statutes for a legal question |\n| `format_citation` | Format citations per Russian conventions (full/short/pinpoint) |\n| `check_currency` | Check if statute is in force, amended, or repealed |\n\n### EU/International Law Integration Tools (5)\n\n| Tool | Description |\n|------|-------------|\n| `get_eu_basis` | Get EU/international legal basis for Russian statute |\n| `get_russian_implementations` | Find Russian laws implementing EU instrument |\n| `search_eu_implementations` | Search EU documents with Russian implementation info |\n| `get_provision_eu_basis` | Get EU law references for specific provision |\n| `validate_eu_compliance` | Check implementation status |\n\n### Metadata Tools (2)\n\n| Tool | Description |\n|------|-------------|\n| `list_sources` | Data provenance metadata and coverage information |\n| `about` | Server metadata, dataset statistics, and freshness |\n\n---\n\n## Data Sources & Freshness\n\nAll content is sourced from authoritative Russian legal databases:\n\n- **[pravo.gov.ru](http://pravo.gov.ru/)** -- Official Internet Portal for Legal Information (Administration of the President of the Russian Federation)\n- **[RusLawOD](https://huggingface.co/datasets/irlspbru/RusLawOD)** -- Academic open dataset of 304,382 Russian legal documents\n\n### Copyright Status\n\nPer **Article 1259, Paragraph 6 of the Civil Code of the Russian Federation**, federal laws, codes, presidential decrees, and other official documents are **not copyrightable**. All legislative text in this database is in the public domain.\n\n---\n\n## Security\n\nThis project uses multiple layers of automated security scanning:\n\n| Scanner | What It Does | Schedule |\n|---------|-------------|----------|\n| **CodeQL** | Static analysis for security vulnerabilities | Weekly + PRs |\n| **Semgrep** | SAST scanning (OWASP top 10, secrets, TypeScript) | Every push |\n| **Gitleaks** | Secret detection across git history | Every push |\n| **Trivy** | CVE scanning on filesystem and npm dependencies | Daily |\n| **Docker Security** | Container image scanning + SBOM generation | Weekly |\n| **Socket.dev** | Supply chain attack detection | PRs |\n| **OSSF Scorecard** | OpenSSF best practices scoring | Weekly |\n\nSee [SECURITY.md](SECURITY.md) for the full policy and vulnerability reporting.\n\n---\n\n## Open Law\n\nThis server is part of **Ansvar Open Law** -- free, structured access to legislation from 70+ jurisdictions worldwide via the Model Context Protocol.\n\n**Browse all jurisdictions ->** [ansvar.eu/open-law](https://ansvar.eu/open-law)\n\n---\n\n## Ansvar MCP Network\n\nAnsvar Open Law is part of the broader **Ansvar MCP Network** -- 95+ servers covering global legislation, EU/US compliance frameworks, and cybersecurity standards.\n\n| Category | Coverage |\n|----------|----------|\n| **Legislation** | 70+ jurisdictions worldwide |\n| **EU Compliance** | 49 regulations, 2,693 articles |\n| **US Compliance** | 15 federal & state regulations |\n| **Security Frameworks** | 261 frameworks, 1,451 controls |\n\n**Explore the full network ->** [ansvar.ai/mcp](https://ansvar.ai/mcp)\n\n---\n\n## Important Disclaimers\n\n### Legal Advice\n\n> **THIS TOOL IS NOT LEGAL ADVICE**\n>\n> Statute text is sourced from official pravo.gov.ru publications. However:\n> - This is a **research tool**, not a substitute for professional legal counsel\n> - **Verify critical citations** against primary sources\n> - **Regional legislation and court practice are not included**\n> - For professional use, cross-check with ConsultantPlus or Garant\n\n**Before using professionally, read:** [DISCLAIMER.md](DISCLAIMER.md) | [PRIVACY.md](PRIVACY.md)\n\n### Client Confidentiality\n\nQueries go through the Claude API. For privileged or confidential matters, use on-premise deployment. See [PRIVACY.md](PRIVACY.md) for attorney-client privilege (advokatskaya tayna) guidance.\n\n---\n\n## Documentation\n\n- **[Coverage](COVERAGE.md)** -- Full list of 12,393 ingested laws\n- **[Coverage Limitations](COVERAGE_LIMITATIONS.md)** -- What's missing and workarounds\n- **[Data Sources](DATA_SOURCES.md)** -- Source provenance and authority levels\n- **[Security Policy](SECURITY.md)** -- Vulnerability reporting and scanning details\n- **[Disclaimer](DISCLAIMER.md)** -- Legal disclaimers and professional use notices\n- **[Privacy](PRIVACY.md)** -- Client confidentiality and data handling\n- **[EU AI Act Compliance](EU_AI_ACT_COMPLIANCE.md)** -- AI Act classification and compliance\n\n---\n\n## Development\n\n### Setup\n\n```bash\ngit clone https://github.com/Ansvar-Systems/Russian-Law-MCP\ncd Russian-Law-MCP\nnpm install\nnpm run build\nnpm test\n```\n\n### Branch Strategy\n\n```\nfeature-branch -> PR to dev -> verify on dev -> PR to main -> deploy\n```\n\nNever push directly to `main`. All changes go through `dev` first.\n\n### Running Locally\n\n```bash\nnpm run dev                                       # Start MCP server\nnpx @anthropic/mcp-inspector node dist/index.js   # Test with MCP Inspector\n```\n\n### Rebuilding the Database\n\n```bash\npython3 scripts/ingest-ruslawod.py   # Ingest from RusLawOD dataset\nnpm run build:db                     # Build SQLite from seed files\nnpm test                             # Verify everything works\n```\n\n---\n\n## Contributing\n\nContributions welcome! See [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines.\n\nPriority areas:\n- Historical statute versions (amendment tracking)\n- Regional legislation integration\n- Court practice integration\n- Expanding EU cross-references\n\n---\n\n## Citation\n\nIf you use this MCP server in academic research:\n\n```bibtex\n@software{russian_law_mcp_2026,\n  author = {Ansvar Systems AB},\n  title = {Russian Law MCP Server: Federal Legislation Research Tool},\n  year = {2026},\n  url = {https://github.com/Ansvar-Systems/Russian-Law-MCP},\n  note = {12,393 Russian federal laws with 79,178 provisions and full-text search}\n}\n```\n\n---\n\n## License\n\nApache License 2.0. See [LICENSE](./LICENSE) for details.\n\n### Data Licenses\n\n- **Federal Legislation:** Not copyrightable per Article 1259 Civil Code (public domain)\n- **RusLawOD Dataset:** CC BY-NC 4.0 (compilation; law texts themselves are public domain)\n\n---\n\n## About Ansvar Systems\n\nWe build AI-accelerated compliance and legal research tools. This MCP server makes Russian federal legislation searchable and AI-readable -- because navigating pravo.gov.ru shouldn't require hours of manual effort.\n\n**[ansvar.eu](https://ansvar.eu)** -- Stockholm, Sweden\n\n---\n\n<p align=\"center\">\n  <sub>Built with care in Stockholm, Sweden</sub>\n</p>\n","readmeFilename":"README.md"}