# ImagePay MCP (remote · making-absurd-felt-tip.ngrok-free.dev)

ImagePay MCP: 40 x402 paid API tools (OCR, PDF, image, QR, tabular, web). Pay per call on Base.

- Trust score: 23/100 (low)
- Change this week: 0
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-11-05

## Components

- remote · `making-absurd-felt-tip.ngrok-free.dev`: 23/100 (this document), [markdown](https://verifymcp.io/servers/neuralmint-imagepay-mcp/making-absurd-felt-tip.md), [page](https://verifymcp.io/servers/neuralmint-imagepay-mcp/making-absurd-felt-tip)

## Channel facts

- Endpoint: `https://making-absurd-felt-tip.ngrok-free.dev/mcp`
- Transports: `streamable-http`
- Auth: `none`
- Version: `1.0.0`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, 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-11-05.

- **Endpoint Security**: 57/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - Authorisation not yet verified: we couldn't confirm whether this endpoint requires it.
  - HTTPS is enforced; there's no plaintext access path.
  - HSTS check failed: the Strict-Transport-Security header is absent.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
- **Transport & Reachability**: 0/100
  - Transport check failed: declared streamable-http, but the endpoint returned HTTP 404.
- **Schema Quality & AI Usability**: 0/100
  - Schema not yet verified: we couldn't read the endpoint's schema, or could read only part of its tool list.
- **Stability & Change Management**: 0/100
  - Stability not yet verified: not enough scan history yet (needs a 30-day window).
- **Tool Coverage**: 0/100
  - Tool coverage not yet verified: we couldn't read the endpoint's tools, or could read only part of the list.
- **Tool Safety**: 0/100
  - Tool safety not yet verified: we couldn't read the endpoint's tools, or could read only part of the list.
- **Capabilities**: 0/100
  - Capabilities not yet verified: we couldn't read the endpoint's capabilities.

**Unverified: 5 categories.** Categories scored 0 because we could not verify them: authentication we do not have, an unreachable endpoint, or not enough scan history. We only credit what we can confirm.

## Install

### How do I install the ImagePay MCP server?

ImagePay MCP is a hosted endpoint at https://making-absurd-felt-tip.ngrok-free.dev/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add --transport http neuralmint-imagepay-mcp 'https://making-absurd-felt-tip.ngrok-free.dev/mcp'
```

### Cursor

```json
{
  "mcpServers": {
    "neuralmint-imagepay-mcp": {
      "url": "https://making-absurd-felt-tip.ngrok-free.dev/mcp"
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "neuralmint-imagepay-mcp": {
      "type": "http",
      "url": "https://making-absurd-felt-tip.ngrok-free.dev/mcp"
    }
  }
}
```

### Codex

```toml
[mcp_servers.neuralmint-imagepay-mcp]
url = "https://making-absurd-felt-tip.ngrok-free.dev/mcp"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "neuralmint-imagepay-mcp": {
      "type": "remote",
      "url": "https://making-absurd-felt-tip.ngrok-free.dev/mcp",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add neuralmint-imagepay-mcp --url 'https://making-absurd-felt-tip.ngrok-free.dev/mcp' --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  neuralmint-imagepay-mcp:
    url: "https://making-absurd-felt-tip.ngrok-free.dev/mcp"
```

### Netclaw

```json
{
  "McpServers": {
    "neuralmint-imagepay-mcp": {
      "Transport": "http",
      "Url": "https://making-absurd-felt-tip.ngrok-free.dev/mcp"
    }
  }
}
```

### Vellum

```bash
assistant mcp add neuralmint-imagepay-mcp -t streamable-http -u 'https://making-absurd-felt-tip.ngrok-free.dev/mcp'
```

### Other

```json
{
  "mcpServers": {
    "neuralmint-imagepay-mcp": {
      "type": "http",
      "url": "https://making-absurd-felt-tip.ngrok-free.dev/mcp"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## 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-09-28 (score 0)

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

### 2026-09-25 (score 0)

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

### 2026-08-28 (score 0)

- [security regression] Endpoint reachability: reachable → not serving MCP
- [security regression] Tool safety: pass → unverified
- [security regression] Stability: 0.03 → unverified
- [security regression] Transport: pass → fail
- [security] Authorization: Authorisation not fully verified: no authorisation is required to connect, but we couldn't read the whole tool list to see what that exposes.
- [functional regression] Capabilities: pass → unverified
- [functional regression] Tool coverage: 100 → unverified
- [functional] First check of Schema quality: unverified

### 2026-08-27 (score 0)

- [functional improvement] Stability: unverified → 0.03

### 2026-08-26 (score 0)

First indexed and scored.

## MCP tools (44)

### `get_catalog` (~43 tokens)

ImagePay catalog

Free. Full ImagePay machine catalog: every paid endpoint with its USDC price, parameters and x402 payment settings (facilitator, networks, payTo discovery link).

### `get_docs` (~33 tokens)

ImagePay docs

Free. Human/agent-readable documentation (llms.txt) describing how to call ImagePay endpoints and settle x402 payments.

### `removebg` (~167 tokens)

Background removal -> transparent PNG

Background removal -> transparent PNG. PAID via x402: $0.002 USDC (facilitator https://facilitator.payai.network). First call without payment returns the 402 terms; sign them and retry passing the signed payload in _meta['x402/payment']. Upstream: POST /v1/removebg. Params: model=general|hd|person|anime, matte=0|1, backdrop=transparent|white|black|blur.

Input parameters:

- `backdrop` (string): backdrop: transparent|white|black|blur
- `image_b64` (string, required): image_b64: base64-encoded image bytes
- `matte` (string): matte: 0|1
- `model` (string): model: general|hd|person|anime

### `upscale` (~119 tokens)

RealESR-general super-resolution x4v3

RealESR-general super-resolution x4v3. PAID via x402: $0.003 USDC (facilitator https://facilitator.payai.network). First call without payment returns the 402 terms; sign them and retry passing the signed payload in _meta['x402/payment']. Upstream: POST /v1/upscale. Params: scale=2|4.

Input parameters:

- `image_b64` (string, required): image_b64: base64-encoded image bytes
- `scale` (string): scale: 2|4

### `sticker` (~99 tokens)

Cutout + 512px fit -> sticker-ready PNG

Cutout + 512px fit -> sticker-ready PNG. PAID via x402: $0.002 USDC (facilitator https://facilitator.payai.network). First call without payment returns the 402 terms; sign them and retry passing the signed payload in _meta['x402/payment']. Upstream: POST /v1/sticker.

Input parameters:

- `image_b64` (string, required): image_b64: base64-encoded image bytes

### `compress` (~135 tokens)

Re-encode image smaller

Re-encode image smaller. PAID via x402: $0.0005 USDC (facilitator https://facilitator.payai.network). First call without payment returns the 402 terms; sign them and retry passing the signed payload in _meta['x402/payment']. Upstream: POST /v1/compress. Params: q=1..100, fmt=jpeg|webp.

Input parameters:

- `fmt` (string): fmt: jpeg|webp
- `image_b64` (string, required): image_b64: base64-encoded image bytes
- `q` (string): q: 1..100

### `thumb` (~110 tokens)

Thumbnail fit-to-width PNG

Thumbnail fit-to-width PNG. PAID via x402: $0.0005 USDC (facilitator https://facilitator.payai.network). First call without payment returns the 402 terms; sign them and retry passing the signed payload in _meta['x402/payment']. Upstream: POST /v1/thumb. Params: w=<px>.

Input parameters:

- `image_b64` (string, required): image_b64: base64-encoded image bytes
- `w` (string): w: <px>

### `filter` (~162 tokens)

Creative filter

Creative filter. PAID via x402: $0.001 USDC (facilitator https://facilitator.payai.network). First call without payment returns the 402 terms; sign them and retry passing the signed payload in _meta['x402/payment']. Upstream: POST /v1/filter. Params: style=grayscale|sepia|noir|warm|cool|sharpen|denoise|hdr|cartoon|vintage|pixelate.

Input parameters:

- `image_b64` (string, required): image_b64: base64-encoded image bytes
- `style` (string): style: grayscale|sepia|noir|warm|cool|sharpen|denoise|hdr|cartoon|vintage|pixelate

### `rotate` (~122 tokens)

Rotate image by degrees

Rotate image by degrees. PAID via x402: $0.0005 USDC (facilitator https://facilitator.payai.network). First call without payment returns the 402 terms; sign them and retry passing the signed payload in _meta['x402/payment']. Upstream: POST /v1/rotate. Params: deg=90|180|270|any.

Input parameters:

- `deg` (string): deg: 90|180|270|any
- `image_b64` (string, required): image_b64: base64-encoded image bytes

### `flip` (~113 tokens)

Mirror image horizontally or vertically

Mirror image horizontally or vertically. PAID via x402: $0.0005 USDC (facilitator https://facilitator.payai.network). First call without payment returns the 402 terms; sign them and retry passing the signed payload in _meta['x402/payment']. Upstream: POST /v1/flip. Params: dir=h|v.

Input parameters:

- `dir` (string): dir: h|v
- `image_b64` (string, required): image_b64: base64-encoded image bytes

### `adjust` (~179 tokens)

Brightness / contrast / saturation / gamma correction

Brightness / contrast / saturation / gamma correction. PAID via x402: $0.001 USDC (facilitator https://facilitator.payai.network). First call without payment returns the 402 terms; sign them and retry passing the signed payload in _meta['x402/payment']. Upstream: POST /v1/adjust. Params: b=-100..100, c=0..3, s=0..3, g=0.1..3.

Input parameters:

- `b` (string): b: -100..100
- `c` (string): c: 0..3
- `g` (string): g: 0.1..3
- `image_b64` (string, required): image_b64: base64-encoded image bytes
- `s` (string): s: 0..3

### `meme` (~125 tokens)

Caption an image meme-style (Impact font, top/bottom text)

Caption an image meme-style (Impact font, top/bottom text). PAID via x402: $0.001 USDC (facilitator https://facilitator.payai.network). First call without payment returns the 402 terms; sign them and retry passing the signed payload in _meta['x402/payment']. Upstream: POST /v1/meme. Params: text=top text|bottom text.

Input parameters:

- `image_b64` (string, required): image_b64: base64-encoded image bytes
- `text` (string): text: top text|bottom text

### `qr` (~135 tokens)

Generate QR code PNG from text

Generate QR code PNG from text. PAID via x402: $0.0003 USDC (facilitator https://facilitator.payai.network). First call without payment returns the 402 terms; sign them and retry passing the signed payload in _meta['x402/payment']. Upstream: POST /v1/qr. Params: text=required, box_size=px (default 10), border=default 2.

Input parameters:

- `border` (string): border: default 2
- `box_size` (string): box_size: px (default 10)
- `text` (string, required): text: required

### `qr_decode` (~103 tokens)

Decode all QR codes found in an image

Decode all QR codes found in an image. PAID via x402: $0.0005 USDC (facilitator https://facilitator.payai.network). First call without payment returns the 402 terms; sign them and retry passing the signed payload in _meta['x402/payment']. Upstream: POST /v1/qr/decode. Params: image_b64=required.

Input parameters:

- `image_b64` (string, required): image_b64: required

### `palette` (~124 tokens)

Dominant color palette of an image (k-means)

Dominant color palette of an image (k-means). PAID via x402: $0.0005 USDC (facilitator https://facilitator.payai.network). First call without payment returns the 402 terms; sign them and retry passing the signed payload in _meta['x402/payment']. Upstream: POST /v1/palette. Params: image_b64=required, n=2..10 colors.

Input parameters:

- `image_b64` (string, required): image_b64: required
- `n` (string): n: 2..10 colors

### `faces` (~101 tokens)

Detect faces in an image (count + bounding boxes)

Detect faces in an image (count + bounding boxes). PAID via x402: $0.001 USDC (facilitator https://facilitator.payai.network). First call without payment returns the 402 terms; sign them and retry passing the signed payload in _meta['x402/payment']. Upstream: POST /v1/faces. Params: image_b64=required.

Input parameters:

- `image_b64` (string, required): image_b64: required

### `phash` (~109 tokens)

Perceptual hash (dHash) of an image for similarity/dedupe

Perceptual hash (dHash) of an image for similarity/dedupe. PAID via x402: $0.0003 USDC (facilitator https://facilitator.payai.network). First call without payment returns the 402 terms; sign them and retry passing the signed payload in _meta['x402/payment']. Upstream: POST /v1/phash. Params: image_b64=required.

Input parameters:

- `image_b64` (string, required): image_b64: required

### `phash_compare` (~120 tokens)

Hamming distance between two phashes (+similar verdict)

Hamming distance between two phashes (+similar verdict). PAID via x402: $0.0003 USDC (facilitator https://facilitator.payai.network). First call without payment returns the 402 terms; sign them and retry passing the signed payload in _meta['x402/payment']. Upstream: POST /v1/phash/compare. Params: h1=hash, h2=hash.

Input parameters:

- `h1` (string): h1: hash
- `h2` (string): h2: hash

### `hash` (~125 tokens)

Hash text or bytes (md5/sha1/sha256/sha512)

Hash text or bytes (md5/sha1/sha256/sha512). PAID via x402: $0.0002 USDC (facilitator https://facilitator.payai.network). First call without payment returns the 402 terms; sign them and retry passing the signed payload in _meta['x402/payment']. Upstream: POST /v1/hash. Params: text=or data_b64, algo=default sha256.

Input parameters:

- `algo` (string): algo: default sha256
- `text` (string): text: or data_b64

### `tokens` (~132 tokens)

Generate uuid4 / hex32 / base64url tokens

Generate uuid4 / hex32 / base64url tokens. PAID via x402: $0.0002 USDC (facilitator https://facilitator.payai.network). First call without payment returns the 402 terms; sign them and retry passing the signed payload in _meta['x402/payment']. Upstream: POST /v1/tokens. Params: kind=uuid4|hex32|b64url, n=1..100.

Input parameters:

- `kind` (string): kind: uuid4|hex32|b64url
- `n` (string): n: 1..100

### `fake-user` (~98 tokens)

Deterministic fake user identity for testing

Deterministic fake user identity for testing. PAID via x402: $0.0003 USDC (facilitator https://facilitator.payai.network). First call without payment returns the 402 terms; sign them and retry passing the signed payload in _meta['x402/payment']. Upstream: POST /v1/fake-user. Params: seed=optional int.

Input parameters:

- `seed` (string): seed: optional int

### `tz` (~137 tokens)

Convert a timestamp between IANA timezones

Convert a timestamp between IANA timezones. PAID via x402: $0.0003 USDC (facilitator https://facilitator.payai.network). First call without payment returns the 402 terms; sign them and retry passing the signed payload in _meta['x402/payment']. Upstream: POST /v1/tz. Params: iso_time=required, from_tz=required, to_tz=required.

Input parameters:

- `from_tz` (string, required): from_tz: required
- `iso_time` (string, required): iso_time: required
- `to_tz` (string, required): to_tz: required

### `md2html` (~98 tokens)

Markdown to HTML (fenced code + tables)

Markdown to HTML (fenced code + tables). PAID via x402: $0.0005 USDC (facilitator https://facilitator.payai.network). First call without payment returns the 402 terms; sign them and retry passing the signed payload in _meta['x402/payment']. Upstream: POST /v1/md2html. Params: md=required.

Input parameters:

- `md` (string, required): md: required

### `ocr` (~146 tokens)

Text extraction from images (Tesseract OCR)

Text extraction from images (Tesseract OCR). PAID via x402: $0.002 USDC (facilitator https://facilitator.payai.network). First call without payment returns the 402 terms; sign them and retry passing the signed payload in _meta['x402/payment']. Upstream: POST /v1/ocr. Params: image_b64=required, lang=default eng, psm=page segmentation mode 0..13.

Input parameters:

- `image_b64` (string, required): image_b64: required
- `lang` (string): lang: default eng
- `psm` (string): psm: page segmentation mode 0..13

### `pdf_text` (~122 tokens)

Extract text from a PDF (first N pages)

Extract text from a PDF (first N pages). PAID via x402: $0.001 USDC (facilitator https://facilitator.payai.network). First call without payment returns the 402 terms; sign them and retry passing the signed payload in _meta['x402/payment']. Upstream: POST /v1/pdf/text. Params: pdf_b64=required, max_pages=default 20.

Input parameters:

- `max_pages` (string): max_pages: default 20
- `pdf_b64` (string, required): pdf_b64: required

### `pdf_meta` (~103 tokens)

PDF metadata: pages, encrypted flag, producer, title

PDF metadata: pages, encrypted flag, producer, title. PAID via x402: $0.001 USDC (facilitator https://facilitator.payai.network). First call without payment returns the 402 terms; sign them and retry passing the signed payload in _meta['x402/payment']. Upstream: POST /v1/pdf/meta. Params: pdf_b64=required.

Input parameters:

- `pdf_b64` (string, required): pdf_b64: required

### `pdf_split` (~105 tokens)

Split a PDF into single-page PDFs (b64 list back)

Split a PDF into single-page PDFs (b64 list back). PAID via x402: $0.002 USDC (facilitator https://facilitator.payai.network). First call without payment returns the 402 terms; sign them and retry passing the signed payload in _meta['x402/payment']. Upstream: POST /v1/pdf/split. Params: pdf_b64=required.

Input parameters:

- `pdf_b64` (string, required): pdf_b64: required

### `pdf_merge` (~112 tokens)

Merge multiple PDFs -> application/pdf response

Merge multiple PDFs -> application/pdf response. PAID via x402: $0.002 USDC (facilitator https://facilitator.payai.network). First call without payment returns the 402 terms; sign them and retry passing the signed payload in _meta['x402/payment']. Upstream: POST /v1/pdf/merge. Params: pdfs_b64=list of b64, required.

Input parameters:

- `pdfs_b64` (string, required): pdfs_b64: list of b64, required

### `exif` (~106 tokens)

EXIF metadata of an image (incl. GPS IFDs)

EXIF metadata of an image (incl. GPS IFDs). PAID via x402: $0.0005 USDC (facilitator https://facilitator.payai.network). First call without payment returns the 402 terms; sign them and retry passing the signed payload in _meta['x402/payment']. Upstream: POST /v1/exif. Params: image_b64=required.

Input parameters:

- `image_b64` (string, required): image_b64: required

### `exif_strip` (~104 tokens)

Strip all EXIF metadata -> clean PNG

Strip all EXIF metadata -> clean PNG. PAID via x402: $0.0005 USDC (facilitator https://facilitator.payai.network). First call without payment returns the 402 terms; sign them and retry passing the signed payload in _meta['x402/payment']. Upstream: POST /v1/exif/strip. Params: image_b64=required.

Input parameters:

- `image_b64` (string, required): image_b64: required

### `resize` (~133 tokens)

Resize image (aspect-preserving when h omitted)

Resize image (aspect-preserving when h omitted). PAID via x402: $0.0005 USDC (facilitator https://facilitator.payai.network). First call without payment returns the 402 terms; sign them and retry passing the signed payload in _meta['x402/payment']. Upstream: POST /v1/resize. Params: image_b64=required, w=px required, h=optional px.

Input parameters:

- `h` (string): h: optional px
- `image_b64` (string, required): image_b64: required
- `w` (string, required): w: px required

### `crop` (~154 tokens)

Crop a region from an image

Crop a region from an image. PAID via x402: $0.0005 USDC (facilitator https://facilitator.payai.network). First call without payment returns the 402 terms; sign them and retry passing the signed payload in _meta['x402/payment']. Upstream: POST /v1/crop. Params: image_b64=required, x=px, y=px, w=px, h=px.

Input parameters:

- `h` (string): h: px
- `image_b64` (string, required): image_b64: required
- `w` (string): w: px
- `x` (string): x: px
- `y` (string): y: px

### `watermark` (~164 tokens)

Text watermark overlaid on an image

Text watermark overlaid on an image. PAID via x402: $0.001 USDC (facilitator https://facilitator.payai.network). First call without payment returns the 402 terms; sign them and retry passing the signed payload in _meta['x402/payment']. Upstream: POST /v1/watermark. Params: image_b64=required, text=required, opacity=0..1 (default 0.6), pos=preset or x,y.

Input parameters:

- `image_b64` (string, required): image_b64: required
- `opacity` (string): opacity: 0..1 (default 0.6)
- `pos` (string): pos: preset or x,y
- `text` (string, required): text: required

### `csv2json` (~101 tokens)

CSV -> JSON rows

CSV -> JSON rows. PAID via x402: $0.0005 USDC (facilitator https://facilitator.payai.network). First call without payment returns the 402 terms; sign them and retry passing the signed payload in _meta['x402/payment']. Upstream: POST /v1/csv2json. Params: csv=text or csv_b64.

Input parameters:

- `csv` (string): csv: text or csv_b64

### `json2csv` (~105 tokens)

JSON rows -> CSV (text/csv response)

JSON rows -> CSV (text/csv response). PAID via x402: $0.0005 USDC (facilitator https://facilitator.payai.network). First call without payment returns the 402 terms; sign them and retry passing the signed payload in _meta['x402/payment']. Upstream: POST /v1/json2csv. Params: rows=array of objects, required.

Input parameters:

- `rows` (string, required): rows: array of objects, required

### `xml2json` (~99 tokens)

XML -> JSON

XML -> JSON. PAID via x402: $0.0005 USDC (facilitator https://facilitator.payai.network). First call without payment returns the 402 terms; sign them and retry passing the signed payload in _meta['x402/payment']. Upstream: POST /v1/xml2json. Params: xml=text or xml_b64.

Input parameters:

- `xml` (string): xml: text or xml_b64

### `yaml2json` (~100 tokens)

YAML -> JSON

YAML -> JSON. PAID via x402: $0.0005 USDC (facilitator https://facilitator.payai.network). First call without payment returns the 402 terms; sign them and retry passing the signed payload in _meta['x402/payment']. Upstream: POST /v1/yaml2json. Params: yaml=text or yaml_b64.

Input parameters:

- `yaml` (string): yaml: text or yaml_b64

### `url-meta` (~109 tokens)

Fetch URL title/description/OpenGraph metadata (SSRF-guarded)

Fetch URL title/description/OpenGraph metadata (SSRF-guarded). PAID via x402: $0.001 USDC (facilitator https://facilitator.payai.network). First call without payment returns the 402 terms; sign them and retry passing the signed payload in _meta['x402/payment']. Upstream: POST /v1/url-meta. Params: url=http(s) URL, required.

Input parameters:

- `url` (string, required): url: http(s) URL, required

### `jwt-decode` (~105 tokens)

Decode JWT header+payload (NO signature verification)

Decode JWT header+payload (NO signature verification). PAID via x402: $0.0003 USDC (facilitator https://facilitator.payai.network). First call without payment returns the 402 terms; sign them and retry passing the signed payload in _meta['x402/payment']. Upstream: POST /v1/jwt-decode. Params: token=jwt string, required.

Input parameters:

- `token` (string, required): token: jwt string, required

### `cron-next` (~118 tokens)

Next N fire times of a cron expression

Next N fire times of a cron expression. PAID via x402: $0.0003 USDC (facilitator https://facilitator.payai.network). First call without payment returns the 402 terms; sign them and retry passing the signed payload in _meta['x402/payment']. Upstream: POST /v1/cron-next. Params: expr=cron expr required, n=default 5.

Input parameters:

- `expr` (string, required): expr: cron expr required
- `n` (string): n: default 5

### `slugify` (~93 tokens)

URL-slugify text

URL-slugify text. PAID via x402: $0.0002 USDC (facilitator https://facilitator.payai.network). First call without payment returns the 402 terms; sign them and retry passing the signed payload in _meta['x402/payment']. Upstream: POST /v1/slugify. Params: text=required.

Input parameters:

- `text` (string, required): text: required

### `units` (~121 tokens)

Unit conversion (length/mass/temp)

Unit conversion (length/mass/temp). PAID via x402: $0.0003 USDC (facilitator https://facilitator.payai.network). First call without payment returns the 402 terms; sign them and retry passing the signed payload in _meta['x402/payment']. Upstream: POST /v1/units. Params: value=number, frm=unit, to=unit.

Input parameters:

- `frm` (string): frm: unit
- `to` (string): to: unit
- `value` (string): value: number

### `pdf-struct` (~132 tokens)

PDF -> structured JSON (text + headings/outline + metadata) or Markdown

PDF -> structured JSON (text + headings/outline + metadata) or Markdown. PAID via x402: $0.01 USDC (facilitator https://facilitator.payai.network). First call without payment returns the 402 terms; sign them and retry passing the signed payload in _meta['x402/payment']. Upstream: POST /v1/pdf-struct. Params: pdf_b64=required, fmt=json|markdown (default json).

Input parameters:

- `fmt` (string): fmt: json|markdown (default json)
- `pdf_b64` (string, required): pdf_b64: required

### `article` (~134 tokens)

URL -> clean article markdown/text/json (fetch + main-content extract)

URL -> clean article markdown/text/json (fetch + main-content extract). PAID via x402: $0.005 USDC (facilitator https://facilitator.payai.network). First call without payment returns the 402 terms; sign them and retry passing the signed payload in _meta['x402/payment']. Upstream: POST /v1/article. Params: url=http(s) URL, required, fmt=markdown|text|json (default markdown).

Input parameters:

- `fmt` (string): fmt: markdown|text|json (default markdown)
- `url` (string, required): url: http(s) URL, required

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/neuralmint-imagepay-mcp/making-absurd-felt-tip#diagnostics

## Score history

- 2026-11-05: 23
- 2026-11-04: 23
- 2026-11-03: 23
- 2026-11-02: 23
- 2026-11-01: 23
- 2026-10-31: 23
- 2026-10-30: 23
- 2026-10-29: 23
- 2026-10-28: 23
- 2026-10-27: 23
- 2026-10-26: 23
- 2026-10-25: 23
- 2026-10-24: 23
- 2026-10-23: 23
- 2026-10-22: 23
- 2026-10-21: 23
- 2026-10-20: 23
- 2026-10-19: 23
- 2026-10-18: 23
- 2026-10-17: 23
- 2026-10-16: 23
- 2026-10-15: 23
- 2026-10-14: 23
- 2026-10-13: 23
- 2026-10-12: 23
- 2026-10-10: 23
- 2026-10-07: 23
- 2026-10-04: 23
- 2026-10-03: 23
- 2026-10-02: 23

## Common questions

### What is the ImagePay MCP server?

ImagePay MCP is listed in the public MCP registry as io.github.neuralmint/imagepay-mcp. ImagePay MCP: 40 x402 paid API tools (OCR, PDF, image, QR, tabular, web). Pay per call on Base. This page covers its hosted endpoint (https://making-absurd-felt-tip.ngrok-free.dev/mcp).

### Is the ImagePay MCP server safe to use?

ImagePay MCP scores 23 out of 100 on VerifyMCP. 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 ImagePay MCP server expose?

ImagePay MCP exposes 44 tools: get_catalog, get_docs, removebg, upscale, sticker, and 39 more. Their descriptions and schemas cost roughly 5,155 tokens of context every time the server is loaded.

### Does the ImagePay MCP server require authentication?

Its publisher declares no required credentials for ImagePay MCP. We have not been able to confirm that against the live endpoint, and a server can require authorisation without declaring it here.

### Is the ImagePay MCP server still maintained?

ImagePay MCP is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

### What did VerifyMCP test on the ImagePay MCP server?

VerifyMCP ran 5 checks on ImagePay MCP, covering TLS certificate, HTTPS, HSTS header, DNSSEC and 1 more. 6 items could not be completed, a gap on our side rather than a finding about ImagePay MCP: Authorization, Schema quality, Stability, Tool coverage and 2 more. 5 categories score 0 for that reason, because we only credit what we can confirm. Supply Chain Security and Provenance & Transparency do not apply to a hosted endpoint, so they were not tested. The score does not measure everything, and the scoring documentation lists what it leaves out.

## Links

- Remote endpoint: https://making-absurd-felt-tip.ngrok-free.dev/mcp
- Repository: https://github.com/neuralmint/imagepay-mcp
- Website: https://making-absurd-felt-tip.ngrok-free.dev/
- Changelog RSS feed: https://verifymcp.io/servers/neuralmint-imagepay-mcp/making-absurd-felt-tip.xml
- Changelog JSON feed: https://verifymcp.io/servers/neuralmint-imagepay-mcp/making-absurd-felt-tip/changelog.json
- Trust report (JSON): https://verifymcp.io/servers/neuralmint-imagepay-mcp/making-absurd-felt-tip.json
- HTML version of this page: https://verifymcp.io/servers/neuralmint-imagepay-mcp/making-absurd-felt-tip
