Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

io.github.jdw2111/propraven

NPM · @PROPRAVEN/MCP · 2 COMPONENTS · SCANNED SEP 20

Property intelligence: 180M+ US parcels — lookup, search, owners, hazards, permits, deeds.

0 this week 91 Trust /100
Trust breakdown (7 categories)

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. How we score → Why this is hard to score →

Supply Chain Security98
  • No malware found by supply-chain analysis.Pass
  • No known CVEs affecting this package version or its production dependencies.Pass
  • No install/post-install scripts declared.Pass
  • 31 of 95 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency97
  • Source repository is publicly reachable at the declared URL. View diagnostics → Pass
  • Cryptographically verified build provenance (signed, bound to jdw2111/propraven-mcp). View diagnostics → Pass
  • Clear OSI-approved license (Apache-2.0).Pass
  • Actively maintained (last published 126 days ago).Pass
  • Disclosure check failed: no security disclosure policy was found in the source repository. See how to fix → Fail
Schema Quality & AI Usability67
  • AI-judged instruction clarity (excellent).Pass
  • Context-footprint check failed: tool/resource definitions use about 1613 tokens (~201/item across 8 items; 8 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management90
  • Stability observed for 27 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage94
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 83% of tool parameters carry a description.Partial
Tool Safety100
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • We read all 8 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
  • An AI judge read all 8 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Install

How do I install the io.github.jdw2111/propraven MCP server?

io.github.jdw2111/propraven runs locally as an npm package, launched with npx -y @propraven/mcp. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

npm · @propraven/mcp

# add to Claude Code
claude mcp add jdw2111-propraven -- npx -y @propraven/mcp
// .cursor/mcp.json
{
  "mcpServers": {
    "jdw2111-propraven": {
      "command": "npx",
      "args": [
        "-y",
        "@propraven/mcp"
      ]
    }
  }
}
// .vscode/mcp.json
{
  "servers": {
    "jdw2111-propraven": {
      "command": "npx",
      "args": [
        "-y",
        "@propraven/mcp"
      ]
    }
  }
}
# add to Codex CLI
codex mcp add jdw2111-propraven -- npx -y @propraven/mcp
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "jdw2111-propraven": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "@propraven/mcp"
      ],
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add jdw2111-propraven --command npx --arg -y --arg @propraven/mcp
# ~/.hermes/config.yaml
mcp_servers:
  jdw2111-propraven:
    command: "npx"
    args: ["-y", "@propraven/mcp"]
// ~/.netclaw/config/netclaw.json
{
  "McpServers": {
    "jdw2111-propraven": {
      "Transport": "stdio",
      "Command": "npx",
      "Arguments": [
        "-y",
        "@propraven/mcp"
      ]
    }
  }
}
# add to Vellum
assistant mcp add jdw2111-propraven -t stdio -c npx -a -y @propraven/mcp
// mcp.json
{
  "mcpServers": {
    "jdw2111-propraven": {
      "command": "npx",
      "args": [
        "-y",
        "@propraven/mcp"
      ]
    }
  }
}
Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 19 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 83 to 87. That category is still filling its 30-day observation window: 25 days of observed history at the previous scan, 26 at this one. The score rises as the window fills, whether or not the server changes.

  • 17 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 77 to 80. That category is still filling its 30-day observation window: 23 days of observed history at the previous scan, 24 at this one. The score rises as the window fills, whether or not the server changes.

  • 16 Sept 26 −3
    • Stability: pass → 0.77 functional
  • 15 Sept 26 0
    • Stability: 0.97 → pass security
  • 14 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 93 to 97. That category is still filling its 30-day observation window: 28 days of observed history at the previous scan, 29 at this one. The score rises as the window fills, whether or not the server changes.

  • 11 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 83 to 87. That category is still filling its 30-day observation window: 25 days of observed history at the previous scan, 26 at this one. The score rises as the window fills, whether or not the server changes.

  • 10 Sept 26 0
    • Security disclosure: unverified → fail functional
  • 9 Sept 26 −2
    • Security disclosure: fail → unverified functional
    • Stability: pass → 0.80 functional
Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 20 Sept 2026 · Analysed npm/@propraven/mcp@0.1.1

Provenance Verified

A signed build attestation was found and verified, binding this exact artifact to the source repository it claims to come from.

Result Verified
Ecosystem npm
Reason Verified
Discovered via Registry attestation endpoint
Source repo jdw2111/propraven-mcp
Certificate issuer https://token.actions.githubusercontent.com
Certificate SAN https://github.com/jdw2111/propraven-mcp/.github/workflows/publish-npm.yml@refs/heads/main
Rekor log index 1554408840
Predicate type https://slsa.dev/provenance/v1
Subject digest sha512:17481dd54d018a7cc0b06d8a9d59a3483d8df1910b8c0eca96771a9b3b48b3302c1967561beb0fe2b1375a1a9391cddb856f74b594f83c61781b6522e

Background: How many MCP packages publish verified provenance →

Dependencies 95 packages
Packages resolved 95
Stale 31
Tree resolution Complete

Background: SBOMs and build attestations, explained →

MCP tools · 8 exposed · ~1,613 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
hazard.score ~194

Composite hazard score for a parcel: flood (FEMA NFIP zone), wildfire (USFS WUI), seismic (USGS ASCE7), windstorm, air quality (EPA AQS), and crime (composite tier). Each sub-score includes source citations. Use when the user asks about a property's risk profile — insurance pricing, underwriting, or due diligence. Do NOT use to compare multiple parcels (use parcel.compare with a hazard criterion). Backed by /api/v1/parcels/{id}/risks. Coverage varies by hazard: flood and crime are widely available; wildfire is strongest in CA/OR/WA/ID/MT/CO; seismic strongest on the West Coast.

NameTypeReqDescription
includearraySubset of hazards to keep in the response. Default: return all.
parcel_idstringyesComposite parcel ID (county_fips:parcel_id). Use parcel.lookup to obtain.

No output schema declared.

No examples provided.

owner.pierce ~254

Resolve an owner name or entity to its full property portfolio. Pierces LLC/Trust veils where PropRaven has linked the entity to its parent (via SEC Ex 21, sponsor parent-rollup, and county-level filings). Returns: canonical owner name, entity type, portfolio summary (count, total value, geographic distribution), and a list of parcels owned. Use when the user names a person, LLC, trust, or public company and wants to see what they own. Do NOT use when starting from a parcel (use parcel.lookup, which returns owner inline). If `ticker` is provided, the tool searches owner records for the company name first (best-effort). Tier-1 portfolios (SEC-tracked public companies — DHI, INVH, AMH, PHM, etc.) have higher confidence on cross-state attribution.

NameTypeReqDescription
namestringOwner name or entity name. Free-form — PropRaven normalizes (trims suffixes, handles trust/LLC variants).
statestringOptional 2-letter state filter to scope the portfolio.
tickerstringPublic-company ticker. The tool attempts to resolve to a company name via owner search first.

No output schema declared.

No examples provided.

parcel.compare ~207

Fetch reports for 2–25 parcels so they can be ranked against criteria. Returns each parcel's full report (identity, owner, valuation, risks, permits, deeds) in a single payload — the calling agent does the per-criterion scoring and final ranking. This is the underwriting / shortlist loop. Use when the user has identified candidate properties (often from parcel.search) and wants them ranked. Do NOT use to discover new candidates (use parcel.search) or for a single property (use parcel.lookup + hazard.score). The `criteria` argument is returned verbatim in the response so the agent can pin its scoring to the user's intent.

NameTypeReqDescription
criteriaarrayyes1–8 ranking criteria, free-form natural language. Echoed back in the response to anchor the agent's scoring.
parcel_idsarrayyesComposite parcel IDs to compare (e.g. "37183:0012345"). 2–25 parcels. Get IDs via parcel.search or parcel.lookup.

No output schema declared.

No examples provided.

parcel.lookup ~183

Resolve a single US parcel by identifier (composite county_fips:parcel_id, street address, or APN). Returns the canonical PropRaven record: identity, current owner, valuation, geography, and source provenance. Use when the user names one specific property. Do NOT use when ranking multiple parcels (use parcel.compare) or when filtering by criteria (use parcel.search). Example: `parcel.lookup({ query: "37183:0012345" })` or `parcel.lookup({ query: "420 S Tryon St, Charlotte NC" })`.

NameTypeReqDescription
querystringyesParcel identifier in any of three forms: (1) composite ID like "37183:0012345" — preferred, direct lookup; (2) full street address with state — uses fuzzy search, top 5 returned; (3) raw APN — search…

No output schema declared.

No examples provided.

parcel.search ~229

Filter US parcels by geography + attributes. Returns a ranked list (default 50, max 200) of matches with summary fields (id, address, owner, assessed value, last sale). Use when the user wants properties matching criteria ("absentee-owned SFR in Mecklenburg County over $400k", "flipped properties in Phoenix since 2024"). Do NOT use when looking up a single known property (use parcel.lookup) or ranking a known set (use parcel.compare). Backed by the /api/v1/search/full text+attribute index; pass `q` as either a city, owner name, or address fragment.

NameTypeReqDescription
citystringCity filter (when q is non-city).
dirstring
fieldstringRestrict the q match to one field.
limitinteger
pageinteger
qstringyesText query — owner name, address fragment, or city. Min 2 chars.
sortstring
statestring2-letter state filter.

No output schema declared.

No examples provided.

permits.history ~174

Timeline of building / construction / demolition permits filed against a parcel. Each permit includes type, status, declared value, issued date, completion date, contractor (where disclosed), and the originating jurisdiction's permit ID. Use when the user asks about construction activity, recent renovations, planned work, or wants to detect a property that's actively changing. Do NOT use to find properties WITH recent permits across a market (use parcel.search). Coverage varies by county: top-100 metros have near-complete permit feeds; smaller jurisdictions may be empty.

NameTypeReqDescription
parcel_idstringyesComposite parcel ID.
sincestringISO date — only return permits issued on or after this date (client-side filter).
typesarrayFilter by permit type substring (e.g. ["Building", "Demolition"]). Case-insensitive.

No output schema declared.

No examples provided.

sales.history ~219

Deed / transaction timeline for a parcel: every recorded sale, transfer, refinance. Each event includes date, sale price (where disclosed; flagged when withheld by state), buyer, seller, and deed type. Use when the user asks about a property's transaction history, flip activity, or holding period. Do NOT use to find properties with recent sales market-wide (use parcel.search with `sold_since`) or to estimate current market value (use valuation.estimate, which incorporates this data plus comps). Note: 13 states do not disclose sale prices on deeds (KS, MS, TX, UT, WY, etc.); PropRaven flags these explicitly. If `include_liens=true`, the tool ALSO fetches UCC liens via the parcel report — two API calls.

NameTypeReqDescription
include_liensbooleanInclude UCC liens. Default false. Adds one extra API call.
parcel_idstringyesComposite parcel ID.
sincestringISO date — only return events on or after this date (client-side filter).

No output schema declared.

No examples provided.

valuation.estimate ~153

Estimated market value for a parcel: market estimate, assessed value, last sale price, and the underlying assessment + improvement breakdown. Use when the user asks for a property's value, market estimate, AVM, or wants to compare assessed vs market. Do NOT use as a substitute for an appraisal — PropRaven AVM has ±10–15% MAE in normal markets, wider in tail. Historical AVM (as_of) is not yet supported in v1; tool returns the current snapshot.

NameTypeReqDescription
as_ofstringISO date — historical AVM. NOT YET SUPPORTED in v1; ignored.
parcel_idstringyesComposite parcel ID (county_fips:parcel_id).

No output schema declared.

No examples provided.

Common questions

What is the io.github.jdw2111/propraven MCP server?

io.github.jdw2111/propraven is an MCP server listed in the public MCP registry as io.github.jdw2111/propraven. Property intelligence: 180M+ US parcels, lookup, search, owners, hazards, permits, deeds. This page covers its npm package (@propraven/mcp).

Is the io.github.jdw2111/propraven MCP server safe to use?

io.github.jdw2111/propraven scores 91 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 20 September 2026. It declares no install or post-install scripts. Its build provenance is signed and verified. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the io.github.jdw2111/propraven MCP server expose?

io.github.jdw2111/propraven exposes 8 tools: parcel.lookup, parcel.search, parcel.compare, owner.pierce, hazard.score, and 3 more. Their descriptions and schemas cost roughly 1,613 tokens of context every time the server is loaded.

Is the io.github.jdw2111/propraven MCP server still maintained?

io.github.jdw2111/propraven is still listed as active in the MCP registry. We last reached this channel on 20 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

What licence is the io.github.jdw2111/propraven MCP server under?

io.github.jdw2111/propraven declares the Apache-2.0 licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.