# GeekVault Port Scanner

> GeekVault Port Scanner is a paid API for AI agents from api.geekvault.dev, paid per call via x402, $0.01/call, status unknown (last checked 2026-10-29).

Scans a host's TCP ports to determine which are open or closed, returning per-port open/closed status.

## Facts

- Endpoint: GET https://api.geekvault.dev/net-tools/v1/port-scan?utm_source=zero.xyz
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-29
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/geekvault-port-scanner-4bb1d166
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_2zhgjIpg4OMm_YXrT4Rmm

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability geekvault-port-scanner-4bb1d166
```

Example prompt: Can you scan api.example.com and check whether ports 22, 80, 443, 3306, and 8080 are open or closed?

## When to prefer this

Choose this endpoint when you need a quick, pay-per-use TCP port scan without setting up nmap or managing infrastructure. It's ideal for agents that need to programmatically verify port reachability or audit exposed services on demand, especially when no API key or subscription is desired. Use it over full network scanners when scanning a single host with up to 50 specific ports.

## Known failure modes

- Invalid or unresolvable hostname returns an error
- Requesting more than 50 ports at once may be rejected
- Firewall or network timeout may cause ports to appear closed when they are filtered
- Payment failure via x402 results in a 402 response with no scan data
- Malformed port list string returns a validation error

## How this service works

Network, docs, image, web, and dev utility tools paid per call via x402. No signup, no API keys, no subscriptions — just USDC on Base.

## Output

Returns a JSON object with the scanned host and an array of results, each containing a port number and a boolean indicating whether that port is open. Common ports are scanned if no port list is provided.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "required": [
  "host"
 ],
 "properties": {
  "host": {
   "type": "string"
  },
  "ports": {
   "type": "string",
   "description": "Lista de puertos separados por coma (máx. 50). Si se omite, escanea un set de puertos comunes."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "object",
 "required": [
  "host",
  "results"
 ],
 "properties": {
  "host": {
   "type": "string"
  },
  "results": {
   "type": "array",
   "items": {
    "type": "object",
    "required": [
     "port",
     "open"
    ],
    "properties": {
     "open": {
      "type": "boolean"
     },
     "port": {
      "type": "integer",
      "format": "int32",
      "minimum": 0
     }
    }
   }
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/geekvault-port-scanner-4bb1d166/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.geekvault.dev](https://www.zero.xyz/host/api.geekvault.dev/llms.txt)
