Back to Browse

India Company Diligence MCP Server

Developer ToolsModerate5.4MCP RegistryLocal
Free

Server data from the Official MCP Registry

India company data for agents: 3.74M-company MCA mirror, CIN/GSTIN tools, provenance on every field

About

India company data for agents: 3.74M-company MCA mirror, CIN/GSTIN tools, provenance on every field

Security Report

5.4
Moderate5.4Moderate Risk

This is a read-only MCP server that queries a local DuckDB mirror of Indian MCA company data, with offline CIN and GSTIN validation and no shell execution, eval, or hardcoded credentials found. Minor concerns include the data.gov.in API key being embedded in the request URL (which can leak into logs or error messages) and the sync/watch scripts spawning subprocesses, but permissions broadly match the stated purpose of a company-data diligence tool. Supply chain analysis found 6 known vulnerabilities in dependencies (1 critical, 3 high severity). Package verification found 1 issue.

13 files analyzed · 13 issues found

Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.

Permissions Required

This plugin requests these system permissions. Most are normal for its category.

File System Read

Reads files on your machine. Normal for tools that analyze or process local data.

File System Write

Writes or modifies files on your machine. Check that this is expected for the tool.

HTTP Network Access

Connects to external APIs or services over the internet.

env_vars

Check that this permission is expected for this type of plugin.

database

Check that this permission is expected for this type of plugin.

process_spawn

Check that this permission is expected for this type of plugin.

What You'll Need

Set these up before or after installing:

Path to mca_mirror.duckdb (fetch once: uvx --from india-company-diligence icd-fetch). Default: data/mca_mirror.duckdb.Optional

Environment variable: ICD_MIRROR_DB

How to Install

Add this to your MCP configuration file:

{
  "mcpServers": {
    "io-github-amit043-india-company-diligence": {
      "env": {
        "ICD_MIRROR_DB": "your-icd-mirror-db-here"
      },
      "args": [
        "india-company-diligence"
      ],
      "command": "uvx"
    }
  }
}

Documentation

View on GitHub

From the project's GitHub README.

india-company-diligence

An open-source MCP server that makes India's public company data agent-legible: a full local mirror of the MCA company master data (~3.74M companies), offline CIN decoding and GSTIN validation, and provenance on every field.

v0.1.0 · mirror as_of 2026-10-25 · upstream dataset updated 2026-10-13 · MIT license · github.com/amit043/india-company-diligence

60-second demo

You: A vendor called "Hella Infra Market" wants a ₹2 crore credit line. Check them out.

Claude (calls company_search, then company_lookup): HELLA INFRA MARKET LIMITED (CIN U46632MH2016PLC283737) is Active, a public unlisted company registered with ROC Mumbai, incorporated 2016-07-15, paid-up capital ₹285.8 crore. Note: HELLA INFRACON PRIVATE LIMITED — a similarly named entity — is Strike Off, so confirm the exact CIN on the invoice. Missing: directors, charges, and financials require the live MCA layer (roadmap). Source: mca-master-data, as_of 2026-10-25.

Every answer carries where each field came from, what is missing, and what is stale. Missing is stated, never fabricated.

Install & run (Claude Desktop)

Requires uv.

# 1. one-time: download the prebuilt mirror (~530 MB download, ~1.4 GB on disk)
uvx --from india-company-diligence icd-fetch

Add to claude_desktop_config.json:

{
  "mcpServers": {
    "india-company-diligence": {
      "command": "uvx",
      "args": ["india-company-diligence"],
      "env": { "ICD_MIRROR_DB": "C:\\full\\path\\to\\mca_mirror.duckdb" }
    }
  }
}

Restart Claude Desktop. Ask: "Look up CIN L17110MH1973PLC019786".

Tools

ToolWhat it doesNetwork
company_lookup(cin)Full registry row for one CIN, per-field provenancemirror only
company_search(name, limit)Case-insensitive name search, ≤50 rows, rankedmirror only
cin_decode(cin)Offline structural decode: listing status, state, year, company typenone
gstin_validate(gstin)Offline GSTIN structure + mod-36 checksum validationnone

The provenance contract

Every tool returns data plus provenance, and states what is missing or stale — never fabricated, never an error page:

{
  "data": { "...": "..." },
  "provenance": [{"field": "CompanyStatus", "source": "mca-master-data", "as_of": "2026-10-25"}],
  "missing": ["director_network (live layer unavailable)"],
  "stale": []
}

Data & attribution

Company Master Data (RoC-wise), published by the Ministry of Corporate Affairs via data.gov.in, licensed under the Government Open Data License – India (GODL). 3,738,721 companies; upstream dataset updated 2026-10-13; this mirror built 2026-10-25.

gstin_validate is offline-only by design: no keyless public GST API exists, so legal name / registration status are stated as missing rather than guessed.

Roadmap

  • L1 live layer — MCA directors & charges via browser automation (week 2)
  • LLP decode — cin_decode currently handles company CINs; LLP IDs (e.g. ABA-1729) next
  • Refresh cadence: monthly mirror rebuilds as upstream updates

Bugs and data gaps: open an issue.

Sync the mirror yourself (alternative to icd-fetch)

Get a free API key on data.gov.in, then:

export OGD_API_KEY=your-key        # or put it in a .env file at the repo root
uv run icd-sync                    # paginated pull, checkpointed, safe to interrupt
uv run icd-import                  # CSV -> data/mca_mirror.duckdb, source/as_of baked in

The pull is paced (5s between pages by default; override with OGD_DELAY_SECONDS or uv run icd-sync --delay 3). Completion matters, not speed.

Pausing & resuming

  • stop: uv run icd-watch stop (or just close the terminal)
  • status: uv run icd-watch status
  • resume: uv run icd-watch start — continues from data/mca_master.checkpoint
  • when the checkpoint reaches the dataset total, run uv run icd-import

Development

uv sync
uv run pytest
uv run ruff check .

Prefer plain pip? requirements.txt / requirements-dev.txt mirror the deps.

License

MIT. Data under GODL-India; attribution as above.

Reviews

No reviews yet

Be the first to review this server!