Porefind

io.github.CloudCorpRecordsPublished by GitHub account CloudCorpRecordsv0.1.0Updated Nov 7, 2026

Search lab-filtration products by specification, with prices and lead times.

VerifiedSTDIODesktop onlyData & AnalyticsBusiness & Commerce

Overview

AI-generated overview

Local stdio bridge to the Filtrous lab-filtration catalog, letting an assistant search products, open product details, and check price and lead time by SKU.

What you can do
  • Search the catalog by free text or spec terms, with field filters and a result limit
  • Open one product by handle for variants, SKUs, options, prices, images and spec metafields
  • Look up current price, availability and, when permitted, stock for a single SKU
  • Pass every call through to the hosted upstream endpoint and return its results unchanged
When to use it
Useful when you need to find laboratory filtration items such as syringe filters, membranes or filter paper by specification and compare prices or availability while drafting a purchase or spec decision. It is read-only catalog lookup, not ordering or quoting.
Requirements
Runs locally as a Node.js process via npx, or as a Docker container. Network access to the upstream catalog endpoint is required. Optionally set FILTROUS_MCP_URL to override the endpoint and FILTROUS_API_KEY to send a bearer token; the keyed price tool needs a valid key upstream.
Before you install
The price and lead-time tool requires an API key, which is forwarded to the upstream service as a bearer token. Tier pricing and lead time are placeholders until the vendor's sync ships, so figures may be incomplete. The vendor's quote-request tool is deliberately omitted, so no contact details are submitted. Catalog data comes from a third party.

Installation

In SourceWeft

  1. Open Porefind in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

porefind

porefind is a thin local bridge to Filtrous' hosted catalog of laboratory filtration products: syringe filters, membranes, filter paper and the like, each with its pore size, material, SKU, price and stock position. The bridge stores nothing. It presents the upstream server's tool list locally, exactly as captured, and passes each tool call through to the remote endpoint, handing back whatever comes back untouched.

Catalog work here is read-only. You can search the catalog by free text or by specification terms, open one product for its full detail — variants, options, images and spec metafields — and ask for the current price and lead time on a single SKU. Pricing for the last of these sits behind the upstream's API key, as its own description says.

Labelled subset: 3 of 4 tools

The live capture of the upstream server listed four tools. This build serves three. The fourth, request_quote, took a list of items plus a contact object and submitted them to the vendor as a quote request — personal contact details routed into a sales pipeline. That is out of scope for this program under its safety rule, so the tool is omitted entirely: it is not registered, it does not appear in tools/list, calls to it are rejected like any unknown name, and the test suite asserts its absence at both the registry and the served MCP layer.

Tools

  • search_products — search the catalog by free text and/or spec terms (for example 0.22 micron PES syringe filter); field filters such as product_type:... or tag:... are also honoured. Returns matching products with title, handle, SKU, product type, tags, price and availability. Required: query. Optional: limit (1-50, default 10).
  • get_product_details — full detail for one product by its handle (the slug a search returns): variants, SKUs, options, prices, images and spec metafields. Required: handle.
  • get_price_and_lead_time — current price, availability and, when permitted, stock for one exact SKU. Required: sku. This is the keyed tool: it needs a valid API key upstream.

Configuration

  • FILTROUS_MCP_URL (optional) — override the upstream endpoint. Defaults to https://filtrous-mcp-catalog.filtrous.workers.dev/mcp. (The override hook is this rebuild's own labelled reconstruction.)
  • FILTROUS_API_KEY (optional) — when set, every upstream request carries an Authorization: Bearer <key> header; when it is not set, no auth header is sent. (This forwarding is also a labelled reconstruction; the original surface was captured keyless.)

Forwarding mechanics

The first tool call opens a streamable HTTP session with the upstream: a JSON-RPC initialize request (protocolVersion 2025-03-26, clientInfo name porefind), then a notifications/initialized notification, then the tools/call request carrying the caller's arguments unchanged. If the upstream's initialize reply carries an Mcp-Session-Id header, that value rides on every later request of the session, which is reused for the life of the process. Replies may arrive as plain JSON or as server-sent events; both are read.

Successful upstream results pass through verbatim, including any isError flag the upstream sets. Failures — a JSON-RPC error, a non-2xx status, an unreadable response, or a request that cannot be completed — come back as an isError result whose text starts with porefind error: (this rendering is this rebuild's own labelled reconstruction).

CLI

Each kept tool is also a subcommand taking one JSON argument string:

bash
npx @reneturcios/porefind search_products '{"query":"0.22 micron PES syringe filter","limit":5}'npx @reneturcios/porefind get_product_details '{"handle":"pes-syringe-filter-022"}'npx @reneturcios/porefind get_price_and_lead_time '{"sku":"SF-PES-022-25"}'npx @reneturcios/porefind --version

Exit codes: 0 on success, 1 on an isError result, 2 on a usage error.

MCP server

bash
npx -y @reneturcios/porefind mcp

MCP client config:

json
{  "mcpServers": {    "porefind": {      "command": "npx",      "args": ["-y", "@reneturcios/porefind", "mcp"]    }  }}

Docker

bash
docker run -i ghcr.io/cloudcorprecords/porefinddocker run --rm ghcr.io/cloudcorprecords/porefind --version

The container's default command is mcp, so the first form is a stdio MCP server; any other arguments reach the CLI normally.

Development

bash
npm installnpm run buildnpm testnpm run dev

The test suite runs entirely against a stubbed JSON-RPC upstream — no live network calls.

License

MIT — see LICENSE.

Source: README.md at commit 246298f

Tools

3

search_products

Search the Filtrous catalog by free text and/or spec terms (e.g. '0.22 micron PES syringe filter'). Returns matching products with title, handle, SKU, product_type, tags, price, and availability. Open tool — no API key required.

Parameterslimitqueryrequired

get_product_details

Get full details for one product by its handle: variants, SKUs, options, prices, images, and spec metafields. Open tool — no API key required.

Parametershandlerequired

get_price_and_lead_time

Get current price, availability, and (when permitted) stock for a SKU. KEYED tool — requires a valid API key. Tier pricing and lead time are placeholders until the Acumatica sync ships.

Parametersskurequired

Version history

1
  1. v0.1.0LatestNov 4, 2026

Score

90% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts
  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts