Port Scanner API

Scan the open TCP ports of your own public IP. Fast (32) or deep (65535). No key, no signup.

¿Debería usar esto?

Calidad y seguridad

A
Calidad de la descripción
100%
Integridad del esquema
90%
Calidad de los nombres
80%
Riesgo de envenenamiento
100%
Coincidencia de permisos
100%
Cumplimiento del protocolo
100%

Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.

Costo de contexto

~954Tokens (definiciones de herramientas)
~4.0 KBTamaño de respuesta típico
Impacto moderado en la atención (0.75% del contexto de 128k)

Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.

Instalar

Instalación con un clic

Agrega esto a tu archivo `claude_desktop_config.json`:

{
  "mcpServers": {
    "port-scanner": {
      "url": "https://api.portscan.com/mcp"
    }
  }
}

Puntos de conexión remotos

https://api.portscan.com/mcpstreamable-http

Qué puede hacer

Inventario de herramientas

Herramientas (2)

🟢 Solo lectura🟡 Escritura🔴 Eliminación⚪ Desconocido
⚪fast_scan(rescan)

Scan the 32 most common TCP ports (~20s) of YOUR OWN public IP address - the egress IP of the machine running this MCP client. There is no target argument: by policy portscan only scans the requester's own IP. The call is non-blocking and keyed by your IP: it starts a scan if none is running, otherwise returns the current state. Call fast_scan repeatedly to poll until status is "complete" (or "incomplete"/"failed"); open ports and service banners are in the result. Pass rescan:true to force a fresh scan when a previous result already exists.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "rescan": {
      "default": false,
      "description": "Force a new scan even if a recent result exists for your IP. Default false: reuse the in-flight or last result.",
      "type": "boolean"
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "ip": {
      "type": "string"
    },
    "scan_type": {
      "type": "string",
      "enum": [
        "fast",
        "deep"
      ]
    },
    "status": {
      "type": "string",
      "enum": [
        "queued",
        "running",
        "complete",
        "incomplete",
        "failed"
      ]
    },
    "message": {
      "type": "string"
    },
    "percent": {
      "type": "number"
    },
    "chunks_complete": {
      "type": "number"
    },
    "total_chunks": {
      "type": "number"
    },
    "poll_after_seconds": {
      "type": "number"
    },
    "ports_open": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "port": {
            "type": "number"
          },
          "service": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "banner": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "required": [
          "port",
          "service",
          "banner"
        ],
        "additionalProperties": false
      }
    },
    "ports_filtered": {
      "type": "array",
      "items": {
        "type": "number"
      }
    },
    "service_banners": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {
        "type": "string"
      }
    },
    "ptr_record": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ]
    },
    "duration_ms": {
      "anyOf": [
        {
          "type": "number"
        },
        {
          "type": "null"
        }
      ]
    },
    "partial": {
      "type": "boolean"
    },
    "fail_reason": {
      "type": "string"
    }
  },
  "required": [
    "ip",
    "scan_type",
    "status",
    "message"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
⚪deep_scan(rescan)

Scan all 65535 TCP ports (~1-5 min) of YOUR OWN public IP address - the egress IP of the machine running this MCP client. There is no target argument: by policy portscan only scans the requester's own IP. The call is non-blocking and keyed by your IP: it starts a scan if none is running, otherwise returns the current state. Call deep_scan repeatedly to poll until status is "complete" (or "incomplete"/"failed"); open ports and service banners are in the result. Pass rescan:true to force a fresh scan when a previous result already exists.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "rescan": {
      "default": false,
      "description": "Force a new scan even if a recent result exists for your IP. Default false: reuse the in-flight or last result.",
      "type": "boolean"
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Esquema de salida

{
  "type": "object",
  "properties": {
    "ip": {
      "type": "string"
    },
    "scan_type": {
      "type": "string",
      "enum": [
        "fast",
        "deep"
      ]
    },
    "status": {
      "type": "string",
      "enum": [
        "queued",
        "running",
        "complete",
        "incomplete",
        "failed"
      ]
    },
    "message": {
      "type": "string"
    },
    "percent": {
      "type": "number"
    },
    "chunks_complete": {
      "type": "number"
    },
    "total_chunks": {
      "type": "number"
    },
    "poll_after_seconds": {
      "type": "number"
    },
    "ports_open": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "port": {
            "type": "number"
          },
          "service": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          },
          "banner": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "required": [
          "port",
          "service",
          "banner"
        ],
        "additionalProperties": false
      }
    },
    "ports_filtered": {
      "type": "array",
      "items": {
        "type": "number"
      }
    },
    "service_banners": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {
        "type": "string"
      }
    },
    "ptr_record": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ]
    },
    "duration_ms": {
      "anyOf": [
        {
          "type": "number"
        },
        {
          "type": "null"
        }
      ]
    },
    "partial": {
      "type": "boolean"
    },
    "fail_reason": {
      "type": "string"
    }
  },
  "required": [
    "ip",
    "scan_type",
    "status",
    "message"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}

Comunidad

Califica este servidor

Evidencia

Observaciones recientes

verificadoversión no registrada2 herramientas
verificadoversión no registrada2 herramientas