Back to the catalog

io.github.Techmatic-sys/indiamart-mcp-server

Claude AI for IndiaMART leads - fetch, search, sync and track pipeline.

Open source Open in the app JSON README (API)

About

Claude AI for IndiaMART leads - fetch, search, sync and track pipeline.

Details

Kind
MCP servers
Topic
No topic detected
Publisher
techmatic-sys
Origin
official
Category
ferramentas
Transport
desconhecido
Version
1.1.0
Last push
2026-04-06T11:24:07Z
Repository state
ativo
Language
HTML
License
MIT
Added
2026-08-29 03:02:16
Updated
2026-08-29 03:02:16
Origin id
io.github.Techmatic-sys/indiamart-mcp-server

README

# ๐Ÿ‡ฎ๐Ÿ‡ณ IndiaMART MCP Server

<!-- mcp-name: io.github.Techmatic-sys/indiamart-mcp-server -->

![Python 3.10+](https://img.shields.io/badge/python-3.10+-blue.svg)
![License MIT](https://img.shields.io/badge/license-MIT-green.svg)
![MCP Compatible](https://img.shields.io/badge/MCP-compatible-purple.svg)
![CI](https://github.com/Techmatic-sys/indiamart-mcp-server/actions/workflows/ci.yml/badge.svg)
![Coverage](https://codecov.io/gh/Techmatic-sys/indiamart-mcp-server/branch/main/graph/badge.svg)

A fully functional **Model Context Protocol (MCP) server** that connects **Claude AI** to **IndiaMART's Lead Management API**. Fetch, search, analyze, and manage your IndiaMART buyer leads using natural language.

## โšก Quick Install (60 seconds)

```bash
git clone https://github.com/Techmatic-sys/indiamart-mcp-server.git
cd indiamart-mcp-server
pip install -r requirements.txt
```

Then add to your Claude Desktop config and you're done. Full setup below.

---

## โœจ Features

- **10 MCP Tools** โ€” 8 read tools + 2 write tools for complete CRM
- **Pull Leads** โ€” Fetch leads from IndiaMART for any date range
- **Pipeline Management** โ€” Track leads through sales stages (new โ†’ won)
- **Notes** โ€” Attach private notes to leads for context
- **Real-time Webhook** โ€” Receive leads instantly via IndiaMART's Push API
- **Local Database** โ€” All leads stored in SQLite for fast offline access
- **Analytics** โ€” Get stats by city, product, and date
- **Search** โ€” Find leads by keyword in product or message
- **Export CSV** โ€” Export leads for spreadsheets and reporting
- **Draft Replies** โ€” Generate professional buyer replies instantly
- **Input Validation** โ€” Pydantic schemas prevent malformed queries
- **Retry Logic** โ€” Exponential backoff on API failures
- **Claude Desktop Ready** โ€” Plug-and-play config included

---

## ๐Ÿ“‹ Prerequisites

- **Python 3.10+** ([Download](https://www.python.org/downloads/))
- **IndiaMART Seller Account** with Lead Manager access
- **IndiaMART CRM API Key** (see below)
- **Claude Desktop** (optional, for AI-powered lead management)

---

## ๐Ÿš€ Installation

### 1. Clone or Download

```bash
git clone https://github.com/Techmatic-sys/indiamart-mcp-server.git
cd indiamart-mcp-server
```

### 2. Create Virtual Environment (recommended)

```bash
python -m venv venv

# Windows
venv\Scripts\activate

# macOS/Linux
source venv/bin/activate
```

### 3. Install Dependencies

```bash
# MCP server only (lightweight, 4 packages)
pip install -r requirements.txt

# Full SaaS web app (includes FastAPI, uvicorn, etc.)
pip install -r requirements-saas.txt
```

### 4. Configure Environment

```bash
# Copy the example env file
cp .env.example .env    # Linux/macOS
copy .env.example .env  # Windows

# Edit .env with your credentials
```

---

## ๐Ÿ”‘ How to Get Your IndiaMART API Key

1. Log in to [IndiaMART Seller Dashboard](https://seller.indiamart.com)
2. Go to **Lead Manager** โ†’ **Settings** (โš™๏ธ icon)
3. Navigate to **CRM Integration** or **API Settings**
4. Generate or copy your **CRM API Key** (`glusr_crm_key`)
5. Note your **GLID** (Global Login ID) from your account profile
6. Paste both values into your `.env` file

> **Note:** The API key gives access to your leads. Keep it secret!

---

## โ–ถ๏ธ Running the MCP Server

```bash
# Standard run (Claude Desktop starts this automatically)
python mcp_server.py

# Check version
python mcp_server.py --version

# Health check (verify DB connectivity)
python mcp_server.py --health
```

---

## ๐Ÿ–ฅ๏ธ Connecting to Claude Desktop

### 1. Locate Claude Desktop Config

| OS | Path |
|----|------|
| **Windows** | `%APPDATA%\Claude\claude_desktop_config.json` |
| **macOS** | `~/Library/Application Support/Claude/claude_desktop_config.json` |
| **Linux** | `~/.config/Claude/claude_desktop_config.json` |

### 2. Add the MCP Server

```json
{
  "mcpServers": {
    "indiamart": {
      "command": "python",
      "args": ["mcp_server.py"],
      "cwd": "/ABSOLUTE/PATH/TO/indiamart-mcp-server",
      "env": {
        "INDIAMART_API_KEY": "your_crm_api_key_here",
        "INDIAMART_GLID": "your_glid_here"
      }
    }
  }
}
```

**Replace `cwd` with your actual path:**
- **Windows:** `"C:\\Users\\YourName\\indiamart-mcp-server"`
- **macOS:** `"/Users/yourname/indiamart-mcp-server"`
- **Linux:** `"/home/yourname/indiamart-mcp-server"`

### 3. Restart Claude Desktop

Close and reopen Claude Desktop. You should see the IndiaMART tools available in the tools menu.

---

## ๐Ÿค– Connecting to Claude Code

### Option 1: CLI (Recommended)

```bash
claude mcp add indiamart -- python /ABSOLUTE/PATH/TO/indiamart-mcp-server/mcp_server.py
```

Then set your environment variables:

```bash
# In your shell profile or before launching Claude Code
export INDIAMART_API_KEY="your_crm_api_key_here"
export INDIAMART_GLID="your_glid_here"
```

### Option 2: Manual Config

Add to your `.claude/settings.json` (project-level) or `~/.claude/settings.json` (global):

```json
{
  "mcpServers": {
    "indiamart": {
      "command": "python",
      "args": ["/ABSOLUTE/PATH/TO/indiamart-mcp-server/mcp_server.py"],
      "env": {
        "INDIAMART_API_KEY": "your_crm_api_key_here",
        "INDIAMART_GLID": "your_glid_here"
      }
    }
  }
}
```

Replace the path with your actual absolute path to `mcp_server.py`.

### Verify Connection

Once connected, ask Claude Code:
- "Sync my latest IndiaMART leads"
- "Show me leads from the last 24 hours"
- "What are my lead statistics?"

---

## ๐Ÿฆž Connecting to OpenClaw

[OpenClaw](https://openclaw.ai) is a self-hosted AI agent platform. Your IndiaMART leads
become a native skill in OpenClaw, accessible from any interface OpenClaw supports.

### 1. Find your OpenClaw config file

| OS | Path |
|----|------|
| **Linux/macOS** | `~/.openclaw/openclaw.json` |
| **Windows** | `C:\Users\YourName\.openclaw\openclaw.json` |

### 2. Add the IndiaMART skill

Open the config and add under `skills.mcpServers`:

```json5
{
  skills: {
    mcpServers: {
      indiamart: {
        command: "python",
        args: ["mcp_server.py"],
        cwd: "/absolute/path/to/indiamart-mcp-server",
        env: {
          INDIAMART_API_KEY: "your_crm_api_key_here",
          INDIAMART_GLID: "your_glid_here"
        }
      }
    }
  }
}
```

> See `openclaw-config-example.json5` at the repo root for a ready-to-copy template.

### 3. Restart the OpenClaw gateway

```bash
openclaw gateway restart
```

### 4. Verify it loaded

```bash
openclaw status --all
# You should see "indiamart" listed with 10 tools
```

### Remote OpenClaw (VPS / EC2)

Run the MCP server in SSE mode on your server:

```bash
python mcp_server.py --transport sse --host 0.0.0.0 --port 8000
```

Then point your OpenClaw config to `http://your-server-ip:8000`.

---

## ๐Ÿ’ฌ Example Prompts

| Prompt | What It Does |
|--------|-------------|
| "Show me all leads from the last 24 hours" | Syncs and displays recent leads |
| "How many leads did I get this week and from which cities?" | Shows lead statistics |
| "Search for leads asking about steel pipes" | Keyword search in product/message |
| "Draft a reply for lead ID IML123456789" | Generates professional buyer reply |
| "Move lead IML123 to qualified stage" | Updates pipeline stage |
| "Add a note to lead IML123: Very interested in bulk order" | Attaches a note |
| "Export all leads from January 2026 as CSV" | Exports leads in CSV format |
| "Sync my latest IndiaMART leads" | Pulls latest leads into local DB |

---

## ๐Ÿ› ๏ธ Available MCP Tools (10 Total)

### Read Tools (8)

| Tool | Description |
|------|-------------|
| `tool_get_leads_by_date` | Fetch leads from IndiaMART for a date range |
| `tool_get_recent_leads` | Get leads from the last N hours |
| `tool_get_lead_stats` | Analytics: totals, by city, product, and date |
| `tool_search_leads` | Search leads by keyword |
| `tool_get_lead_by_id` | Full details of a specific lead |
| `tool_draft_reply` | Draft a professional reply for a buyer |
| `tool_export_leads_csv` | Export leads as CSV |
| `tool_sync_latest_leads` | Sync latest from IndiaMART to local DB |

### Write Tools (2 โ€” NEW)

| Tool | Description |
|------|-------------|
| `tool_update_lead_stage` | Move leads through pipeline (new โ†’ contacted โ†’ qualified โ†’ won/lost) |
| `tool_add_note` | Attach private notes to leads for follow-up tracking |

---

## ๐Ÿ“ Project Structure

```
indiamart-mcp-server/
โ”œโ”€โ”€ ๐Ÿ“„ mcp_server.py           โ† SINGLE entry point
โ”œโ”€โ”€ ๐Ÿ“„ smithery.yaml            โ† Smithery.ai marketplace manifest
โ”œโ”€โ”€ ๐Ÿ“„ pyproject.toml           โ† Python package config
โ”œโ”€โ”€ ๐Ÿ“„ requirements.txt         โ† MCP only (5 packages)
โ”œโ”€โ”€ ๐Ÿ“„ requirements-saas.txt    โ† Web app deps
โ”œโ”€โ”€ ๐Ÿ“„ README.md                โ† This file
โ”œโ”€โ”€ ๐Ÿ“„ CHANGELOG.md             โ† Version history
โ”œโ”€โ”€ ๐Ÿ“„ LICENSE                  โ† MIT License
โ”œโ”€โ”€ ๐Ÿ“„ .env.example             โ† Annotated credential guide
โ”œโ”€โ”€ ๐Ÿ“„ .gitignore               โ† Git ignore rules
โ”œโ”€โ”€ ๐Ÿ“„ docker-compose.yml       โ† Full stack Docker setup
โ”‚
โ”œโ”€โ”€ ๐Ÿ“ mcp_tools/               โ† Core MCP Package
โ”‚   โ”œโ”€โ”€ __init__.py
โ”‚   โ”œโ”€โ”€ ๐Ÿ”ง tools.py            โ† 10 MCP tools with rich docstrings
โ”‚   โ”œโ”€โ”€ ๐Ÿ“‹ schemas.py          โ† Pydantic validation + response types
โ”‚   โ”œโ”€โ”€ ๐ŸŒ http_client.py      โ† Resilient API client with retry
โ”‚   โ”œโ”€โ”€ ๐Ÿ’พ database.py         โ† SQLite operations
โ”‚   โ”œโ”€โ”€ ๐Ÿ”‘ auth.py             โ† API key helpers
โ”‚   โ””โ”€โ”€ ๐Ÿณ Dockerfile          โ† MCP server Docker image
โ”‚
โ”œโ”€โ”€ ๐Ÿ“ saas/                    โ† SaaS Web App (FastAPI)
โ”‚   โ””โ”€โ”€ ...
โ”‚
โ”œโ”€โ”€ ๐Ÿ“ tests/                   โ† Test suite
โ”‚   โ”œโ”€โ”€ conftest.py             โ† pytest fixtures
โ”‚   โ””โ”€โ”€ test_tools.py           โ† Validation + integration tests
โ”‚
โ”œโ”€โ”€ ๐Ÿ“ .github/                 โ† CI/CD
โ”‚   โ””โ”€โ”€ workflows/ci.yml
โ”‚
โ””โ”€โ”€ ๐Ÿ“ docs/                    โ† Documentation
    โ”œโ”€โ”€ tools.md
    โ””โ”€โ”€ examples.md
```

---

## ๐Ÿ”ง Troubleshooting

### "INDIAMART_API_KEY is not set"
- Make sure you've created a `.env` file (not just `.env.example`)
- Check that the key is correct and not expired
- Verify the `.env` file is in the project root directory

### Claude Desktop doesn't show IndiaMART tools
- Restart Claude Desktop completely (quit + reopen)
- Check `claude_desktop_config.json` for syntax errors (valid JSON?)
- Verify the `cwd` path is correct and `mcp_server.py` exists there
- Check Claude Desktop logs for MCP connection errors

### Date format errors
- Supported formats: `YYYY-MM-DD`, `DD-MM-YYYY`, `DD/MM/YYYY`, `DD-Mon-YYYY`
- Example: `2026-01-15`, `15-01-2026`, `15-Jan-2026`

---

## ๐Ÿ“„ License

MIT License. Use freely for your business.

---

## ๐Ÿค Contributing

1. Fork the repository
2. Create a feature branch: `git checkout -b feature/my-feature`
3. Commit changes: `git commit -m "Add my feature"`
4. Push: `git push origin feature/my-feature`
5. Open a Pull Request

---

**Built with โค๏ธ for Indian sellers on IndiaMART**

More