# Indonesia Regulatory Data [Health: Active]

**Category:** 💻 Developer Tools  
**Repository:** https://github.com/IndoTender/indonesia-regulatory-mcp  
**GitHub Stars:** 0  
**Views:** 0  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/indonesia-regulatory-data

## Description
Indonesian BPOM product registrations, DGIP trademarks, and Komdigi PSE registrations.

## Claude Desktop Quick Installation
Remote MCP endpoint (confidence: high). Install path detected from listing signals. Add as a URL/SSE server in your client:

```json
"mcpServers": {
  "indonesia-regulatory-data": {
    "url": "https://indotender.com"
  }
}
```

## Documentation & README

# Indonesia Regulatory MCP

Connect your AI assistant to [IndoTender](https://indotender.com) for Indonesian regulatory and registration data through the Model Context Protocol.

This listing provides search access to:

- **BPOM** — food, drug, and cosmetic product registrations
- **DGIP** — Indonesian trademark records
- **Komdigi PSE** — electronic system provider registrations

## Connect

```
https://indotender.com/mcp
```

Add this URL as a custom MCP connector in Claude, Cursor, or any MCP-compatible client. Sign in with Google when prompted.

- Transport: Streamable HTTP
- Auth: Google OAuth
- Docs: [indotender.com/mcp/connect](https://indotender.com/mcp/connect)

## Tools

### `Bpom_search`

Search Indonesian BPOM product registrations. Filters are combined with AND logic.

| Parameter | Type | Description |
|---|---|---|
| `productName` | string, optional | Partial product name |
| `productRegister` | string, optional | Partial BPOM registration number |
| `productBrands` | string, optional | Partial product brand |
| `applicant` | string, optional | Partial applicant or company name |
| `applicantNpwp` | string, optional | Applicant NPWP; an `ID` company-id prefix is removed automatically |
| `category` | string, optional | Partial product category |
| `status` | string, optional | Partial registration status |
| `class` | string, optional | Exact BPOM product class |
| `page` | integer, optional | Page number, minimum `1`, default `1` |
| `limit` | integer, optional | Results per page, `1`–`500`, default `25` |
| `sortBy` | enum, optional | `productDate`, `submitDate`, `productName`, or `id`; default `productDate` |
| `sortOrder` | enum, optional | `asc` or `desc`; default `desc` |

Returns `{ total, page, data }` with full BPOM registration rows. Results are sorted by `productDate` descending by default.

Example:

```json
{
  "productName": "paracetamol",
  "status": "approved",
  "page": 1,
  "limit": 25
}
```

### `Trademark_search`

Search Indonesian trademark records from DGIP. Use specific owner, registration, or company fields for narrower results.

| Parameter | Type | Description |
|---|---|---|
| `brandName` | string, optional | Partial brand name |
| `ownerName` | string, optional | Partial owner name; may be an individual or domestic or foreign company |
| `ownerCompanyId` | string, optional | Exact linked company id |
| `registrationNumber` | string, optional | Partial trademark registration number |
| `classNumbers` | string, optional | Partial Nice classification number(s) |
| `applicationStatus` | string, optional | Partial application status |
| `page` | integer, optional | Page number, minimum `1`, default `1` |
| `limit` | integer, optional | Results per page, `1`–`500`, default `25` |
| `sortBy` | enum, optional | `applicationDate`, `registrationDate`, or `id`; default `applicationDate` |
| `sortOrder` | enum, optional | `asc` or `desc`; default `desc` |

Returns `{ total, page, data }`. Each result includes:

```text
id, brandName, applicationDate, statusGroupLabel, ownerName,
ownerCompanyId, registrationNumber, registrationDate, classNumbers,
provinceName, imagePath
```

Dates are ISO-8601 date strings and nullable fields may be `null`.

Example:

```json
{
  "ownerName": "Unilever",
  "classNumbers": "3",
  "sortBy": "registrationDate",
  "sortOrder": "desc"
}
```

### `KomdigiPse_search`

Search Indonesian Komdigi PSE (Penyelenggara Sistem Elektronik) registrations. Filters are combined with AND logic.

| Parameter | Type | Description |
|---|---|---|
| `domain` | string, optional | Partial registered domain |
| `systemName` | string, optional | Partial registered system or product name |
| `registrationNumber` | string, optional | Partial PSE registration number |
| `providerName` | string, optional | Partial domestic or foreign provider name |
| `status` | string, optional | Partial registration status |
| `companyId` | string, optional | Exact linked company id |
| `isDomestic` | boolean, optional | Restrict to domestic (`true`) or foreign (`false`) providers |
| `limit` | integer, optional | Results to return, `1`–`500`, default `25` |
| `sortBy` | enum, optional | `registered_date`, `id`, `status`, or `provider_name`; default `registered_date` |
| `sortOrder` | enum, optional | `asc` or `desc`; default `desc` |

Returns `{ total, data }` with PSE registration rows, including domain, domestic/foreign status, system name, registration number, provider name, status, registration date, and linked company id.

Example:

```json
{
  "providerName": "Google",
  "isDomestic": false,
  "limit": 25
}
```

## Example prompts

- *"Find BPOM registrations for products containing paracetamol."*
- *"Show Indonesian trademarks owned by a company containing 'Unilever'."*
- *"Which PSE registrations belong to this domain: example.com?"*
- *"Find a company’s BPOM products, trademarks, and PSE registrations."*

## Setup — Claude

1. Go to [claude.ai/customize/connectors](https://claude.ai/customize/connectors)
2. Click **Add custom connector**
3. Name it **Indonesia Regulatory Data** and paste `https://indotender.com/mcp`
4. Save and sign in with Google when prompted

## Setup — Cursor / other MCP clients

Add to your MCP config:

```json
{
  "mcpServers": {
    "indonesia-regulatory": {
      "url": "https://indotender.com/mcp"
    }
  }
}
```

