# io.github.janmalmstrom/lupaph-mcp (npm · lupaph-mcp)

Philippine property listings, transfer costs, and real estate legal info via lupaph.com.

- Trust score: 63/100 (medium)
- Change this week: +17
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-08-03

## Components

- npm · `lupaph-mcp`: 63/100 (this document), [markdown](https://verifymcp.io/servers/janmalmstrom-lupaph-mcp/lupaph-mcp.md), [page](https://verifymcp.io/servers/janmalmstrom-lupaph-mcp/lupaph-mcp)

## Channel facts

- Registry: `npm`
- Package: `lupaph-mcp`
- Version: `1.0.1`
- Transport: `stdio`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-08-03.

- **Supply Chain Security**: 86/100
  - No malware found by supply-chain analysis.
  - Only part of the dependency tree could be resolved (94 of 98), so this covers what we could see, not the whole tree.
  - No install/post-install scripts declared.
  - Only part of the dependency tree could be resolved (94 of 98), so this covers what we could see, not the whole tree.
- **Provenance & Transparency**: 45/100
  - Source repository is publicly reachable at the declared URL.
  - Provenance check failed: no build-provenance attestation is published.
  - Clear OSI-approved license (MIT).
  - Actively maintained (last published 26 days ago).
  - Disclosure check failed: no security disclosure policy was found in the source repository.
- **Schema Quality & AI Usability**: 66/100
  - AI-judged instruction clarity (good).
  - Tool/resource definitions use about 428 tokens (~71/item across 6 items; 6 tools + 0 resources), lean.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 0/100
  - Stability not yet verified: not enough scan history yet (needs a 30-day window).
- **Tool Coverage**: 96/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 88% of tool parameters carry a description.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

**Unverified: 1 category.** A category scored 0 because we could not verify it: a data source with nothing on this package, evidence we could not reach, or a check we could not run. We only credit what we can confirm.

## Install

### Claude

```bash
claude mcp add janmalmstrom-lupaph-mcp -- npx -y lupaph-mcp
```

### Codex

```bash
codex mcp add janmalmstrom-lupaph-mcp -- npx -y lupaph-mcp
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "janmalmstrom-lupaph-mcp": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "lupaph-mcp"
      ],
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add janmalmstrom-lupaph-mcp --command npx --arg -y --arg lupaph-mcp
```

### Hermes

```yaml
mcp_servers:
  janmalmstrom-lupaph-mcp:
    command: "npx"
    args: ["-y", "lupaph-mcp"]
```

### Other

```json
{
  "mcpServers": {
    "janmalmstrom-lupaph-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "lupaph-mcp"
      ]
    }
  }
}
```

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-08-02 (score 63, +37)

- [security regression] Provenance: unverified → fail
- [security improvement] Known CVEs: unverified → partial
- [security improvement] Install scripts: unverified → pass
- [security improvement] Malware scan: unverified → pass
- [security] Stability: Stability not yet verified: we do not have a sandbox capture of the MCP schema this version of the package serves yet.
- [functional regression] Capabilities: pass → unverified
- [functional regression] Tool coverage: 100 → unverified
- [functional improvement] Schema quality: unverified → good
- [functional improvement] Maintenance: unverified → pass
- [functional improvement] Dependency health: unverified → partial
- [functional improvement] License: unverified → pass
- [functional] Licence: MIT

### 2026-08-01 (score 26, +5)

- [security] Stability: Stability not yet verified: not enough scan history yet (needs a 30-day window).
- [functional improvement] MCP protocol: unverified → pass

### 2026-07-31 (score 21, +15)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-07-30 (score 6, −18)

- [security regression] Malware scan: pass → unverified

### 2026-07-28 (score 24, −22)

- [functional regression] Tool coverage: 100 → unverified
- [functional] First check of Schema quality: unverified

### 2026-07-27 (score 46)

First indexed and scored.

## MCP tools (6)

### `search_listings` (~138 tokens)

Search verified Philippine real estate listings on lupaph.com by province, type, price, and more.

Input parameters:

- `is_foreclosure` (boolean): Filter bank foreclosure properties only
- `limit` (number): Number of results (max 20)
- `max_price` (number): Maximum price in PHP
- `min_price` (number): Minimum price in PHP
- `province` (string): Province slug, e.g. "cavite", "batangas", "cebu", "davao-del-sur"
- `search` (string): Full-text search query
- `sort` (string)
- `type` (string): Property type

### `get_listing` (~33 tokens)

Get full details of a specific Philippine property listing by its slug.

Input parameters:

- `slug` (string, required): Listing slug from search results

### `get_province_listings_summary` (~50 tokens)

Get a summary of available listings and property types for a Philippine province.

Input parameters:

- `province` (string, required): Province slug, e.g. "cavite", "laguna", "cebu"

### `calculate_transfer_cost` (~101 tokens)

Calculate the full Philippine land title transfer costs (CGT, DST, transfer tax, registration fee, notarial fee) for a given property price.

Input parameters:

- `location_type` (string): Province = 0.5% transfer tax, City = 0.75%
- `selling_price` (number, required): Agreed selling price in PHP
- `zonal_value` (number): BIR zonal value in PHP (if known — defaults to selling price)

### `get_legal_info` (~48 tokens)

Get accurate Philippine real estate legal information — ownership rules, title verification, CARP, SPA requirements, transfer costs, and more.

Input parameters:

- `topic` (string, required): Legal topic to look up

### `search_guides` (~58 tokens)

Search lupaph.com real estate guides and articles about buying land in the Philippines.

Input parameters:

- `category` (string): Article category, e.g. "buying-guide", "ofw-guide", "legal-guide"
- `limit` (number)

## Diagnostics

Captured diagnostic sections: Provenance, Dependencies. The full working is on the page: https://verifymcp.io/servers/janmalmstrom-lupaph-mcp/lupaph-mcp#diagnostics

## Score history

- 2026-08-03: 63
- 2026-08-02: 63
- 2026-08-01: 26
- 2026-07-31: 21
- 2026-07-30: 6
- 2026-07-28: 24
- 2026-07-27: 46

## Links

- npm package: https://www.npmjs.com/package/lupaph-mcp
- Socket report: https://socket.dev/npm/package/lupaph-mcp
- Repository: https://github.com/janmalmstrom/lupaph-mcp
- Changelog RSS feed: https://verifymcp.io/servers/janmalmstrom-lupaph-mcp/lupaph-mcp/changelog.xml
- Changelog JSON feed: https://verifymcp.io/servers/janmalmstrom-lupaph-mcp/lupaph-mcp/changelog.json
- HTML version of this page: https://verifymcp.io/servers/janmalmstrom-lupaph-mcp/lupaph-mcp
