protogrid

Search / io.github.cyanheads/pentest-mcp-server

pentest-mcp-server

R0· no sign-in

Offline methodology engine for authorized penetration testing, CTF, and security research.

v0.2.0 · active · repository · descriptor JSON · versions

An agent can connect right now, no human step.Remote endpoint, no authentication, reachable on the last probe.
Quality84good
Trust94of 100
Uptime, 30 days100%
Latency p50195 ms

Connect

8 clients · secrets stay placeholders
{
  "mcpServers": {
    "pentest-mcp-server": {
      "type": "http",
      "url": "https://pentest.caseyjhand.com/mcp"
    }
  }
}
claude mcp add --transport http pentest-mcp-server https://pentest.caseyjhand.com/mcp
[mcp_servers.pentest-mcp-server]
url = "https://pentest.caseyjhand.com/mcp"
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "pentest-mcp-server": {
      "type": "remote",
      "url": "https://pentest.caseyjhand.com/mcp",
      "enabled": true
    }
  }
}
{
  "mcpServers": {
    "pentest-mcp-server": {
      "type": "http",
      "url": "https://pentest.caseyjhand.com/mcp"
    }
  },
  "deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=pentest-mcp-server&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vcGVudGVzdC5jYXNleWpoYW5kLmNvbS9tY3AifQ%3D%3D"
}
{
  "servers": {
    "pentest-mcp-server": {
      "type": "http",
      "url": "https://pentest.caseyjhand.com/mcp"
    }
  }
}
{
  "mcpServers": {
    "pentest-mcp-server": {
      "httpUrl": "https://pentest.caseyjhand.com/mcp"
    }
  }
}
extensions:
  "pentest-mcp-server":
    enabled: true
    name: "pentest-mcp-server"
    type: streamable_http
    uri: "https://pentest.caseyjhand.com/mcp"
    timeout: 300

Quality 84 / 100good

protocol88 · weight 25
  • pass
    protocol.modernsupports 2026-07-28 (server/discover)
  • pass
    protocol.statelessanswers without a session
  • pass
    protocol.transportstreamable HTTP
  • warn
    protocol.list_ttltools/list declares ttlMs 0, so clients re-fetch it on every use
authorizationn/a · weight 15
  • n/a
    auth.prm, auth.as_metadata, auth.cimdno remote uses OAuth
  • n/a
    auth.secret_in_urlno templated URL
tool hygiene86 · weight 30
  • pass
    tools.descriptionsevery tool has a description
  • pass
    tools.description_lengthdescriptions are concise
  • pass
    tools.schemasevery tool has an object input schema
  • pass
    tools.annotations7 of 7 tools declare readOnlyHint or destructiveHint
  • fail
    tools.directory_hintsno tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: pentest_get_guide (destructiveHint); pentest_analyze_response (destructiveHint); pentest_lookup_group (destructiveHint); …
  • pass
    tools.token_costabout 2,392 tokens to load every tool
  • pass
    tools.api_dumptools are not a one-to-one API dump
stability75 · weight 15
  • warn
    stability.changes6 tool changes in 30 days
  • pass
    stability.rug_pullno tool changed its meaning under the same name
dependenciesn/a · weight 15

7 tools, about 2,392 tokens to load them all · tool set 8a8b7659a999 · tools last changed 2026-10-15 · checked 2026-10-19 10:52 UTC

Tool changes

  • pentest_encoderemoved

    Transform a payload string through an ordered encoding chain for authorized filter research. Results include the final value, intermediate values, optional decode path and rationale, and detection guidance. All transforms are local; no live probing occurs.

  • pentest_guideremoved

    Return an authorized-testing methodology for a selected vector and optional target context. The playbook covers reconnaissance, enumeration, exploitation, and post-exploitation phases with objectives, techniques, detection signals, mitigations, common pitfalls, references, and context-derived tool suggestions across 15 vectors.

  • pentest_encode_payloadadded

    Transform a payload string through an ordered encoding chain for authorized filter research. Results include the final value, intermediate values, optional decode path and rationale, and detection guidance. All transforms are local; no live probing occurs.

  • pentest_map_techniqueschangedoutput schema
  • pentest_analyze_responsechangedoutput schema
  • pentest_get_guideadded

    Return an authorized-testing methodology for a selected vector and optional target context. The playbook covers reconnaissance, enumeration, exploitation, and post-exploitation phases with objectives, techniques, detection signals, mitigations, common pitfalls, references, and context-derived tool suggestions across 15 vectors.

Full history: list_changes · trend: quality JSON.

Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.

Trust 94 / 100

provenance80
liveness100
freshness100
hygiene100

+repository +namespace-matches-repo +reachable +uptime-100% +updated-4d-ago

Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.

Dependencies

@cyanheads/[email protected] npmthis version is not known to the dependency resolver

@cyanheads/[email protected] npmthis version is not known to the dependency resolver

Dependency graphs from deps.dev; advisories from OSV.dev, including the GitHub Advisory Database and the PyPI Advisory Database; all CC BY 4.0. The graph is what a clean install of this version resolves today; nothing was installed or run. How it is checked.

Endpoints

remoteauthreachableuptime 30dp50protocollast ok
https://pentest.caseyjhand.com/mcp streamable-httpnoneyes100%195 ms2026-07-282026-10-19
packageregistryversionruntimesecrets
@cyanheads/pentest-mcp-servernpm0.2.0npx
@cyanheads/pentest-mcp-servernpm0.2.0npx

Tools (7)

pentest_analyze_responseread-onlyAnalyze an HTTP response from authorized probing for information leakage, fingerprinting signals, and related exposure. Structured findings cover version disclosures, stack traces, debug headers, internal paths, authentication patterns, CORS configuration, detection signals, remediation, and associated methodology vectors.
pentest_encode_payloadread-onlyTransform a payload string through an ordered encoding chain for authorized filter research. Results include the final value, intermediate values, optional decode path and rationale, and detection guidance. All transforms are local; no live probing occurs.
pentest_generate_payloadsread-onlyGenerate context-specific payload templates for authorized systems. Each template includes its vulnerability category, context rationale, WAF/IDS detection signature, mitigation, optional WAF research note, and optional encoded variant.
pentest_get_guideread-onlyReturn an authorized-testing methodology for a selected vector and optional target context. The playbook covers reconnaissance, enumeration, exploitation, and post-exploitation phases with objectives, techniques, detection signals, mitigations, common pitfalls, references, and context-derived tool suggestions across 15 vectors.
pentest_lookup_groupread-onlyLook up a MITRE ATT&CK threat group or software entry by ID, name, or keyword. Results include ATT&CK identity, aliases, type, description, and associated techniques with procedure-level context from public ATT&CK reporting.
pentest_lookup_techniqueread-onlyLook up a MITRE ATT&CK technique by exact ID or keyword. Results include tactics, platforms, description, detection data, public procedure examples, mitigations, related sub-techniques, and dataset version.
pentest_map_techniquesread-onlyRank ATT&CK techniques and OWASP test cases against an authorized target profile of technology stack, exposed services, authentication type, and operating system. Results include profile-specific relevance, detection opportunities, mitigations, and associated methodology vectors.

Schemas: list_tools.

Similar MCP servers

More from io.github.cyanheads

And 136 more from this publisher.

Official server.json
{
  "name": "io.github.cyanheads/pentest-mcp-server",
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
  "remotes": [
    {
      "url": "https://pentest.caseyjhand.com/mcp",
      "type": "streamable-http"
    }
  ],
  "version": "0.2.0",
  "packages": [
    {
      "version": "0.2.0",
      "transport": {
        "type": "stdio"
      },
      "identifier": "@cyanheads/pentest-mcp-server",
      "runtimeHint": "npx",
      "registryType": "npm",
      "registryBaseUrl": "https://registry.npmjs.org",
      "environmentVariables": [
        {
          "name": "PENTEST_ENABLE_PAYLOAD_GENERATION",
          "format": "boolean",
          "default": "true",
          "description": "Enable payload generation and encoding. Set false to retain the five reference tools only."
        },
        {
          "name": "MCP_LOG_LEVEL",
          "format": "string",
          "default": "info",
          "description": "Sets the minimum log level for output (e.g., 'debug', 'info', 'warn')."
        }
      ]
    },
    {
      "version": "0.2.0",
      "transport": {
        "url": "http://localhost:3010/mcp",
        "type": "streamable-http"
      },
      "identifier": "@cyanheads/pentest-mcp-server",
      "runtimeHint": "npx",
      "registryType": "npm",
      "registryBaseUrl": "https://registry.npmjs.org",
      "environmentVariables": [
        {
          "name": "PENTEST_ENABLE_PAYLOAD_GENERATION",
          "format": "boolean",
          "default": "true",
          "description": "Enable payload generation and encoding. Set false to retain the five reference tools only."
        },
        {
          "name": "MCP_TRANSPORT_TYPE",
          "value": "http",
          "format": "string",
          "description": "Selects the HTTP transport."
        },
        {
          "name": "MCP_HTTP_HOST",
          "format": "string",
          "default": "127.0.0.1",
          "description": "The hostname for the HTTP server."
        },
        {
          "name": "MCP_HTTP_PORT",
          "format": "string",
          "default": "3010",
          "description": "The port to run the HTTP server on."
        },
        {
          "name": "MCP_HTTP_ENDPOINT_PATH",
          "format": "string",
          "default": "/mcp",
          "description": "The endpoint path for the MCP server."
        },
        {
          "name": "MCP_AUTH_MODE",
          "format": "string",
          "default": "none",
          "description": "Authentication mode to use: 'none', 'jwt', or 'oauth'."
        },
        {
          "name": "MCP_LOG_LEVEL",
          "format": "string",
          "default": "info",
          "description": "Sets the minimum log level for output (e.g., 'debug', 'info', 'warn')."
        }
      ]
    }
  ],
  "repository": {
    "url": "https://github.com/cyanheads/pentest-mcp-server",
    "source": "github"
  },
  "description": "Offline methodology engine for authorized penetration testing, CTF, and security research."
}