sayseven7
frameseven
Go✨ New

Offensive web security scanner — OWASP Top 10 · MCP server · CLI · Go

Last updated Aug 1, 2026
11
Stars
4
Forks
0
Issues
0
Stars/day
Attention Score
40
Language breakdown
Go 95.1%
Python 4.9%
Files click to expand
README

frameseven

A CLI-first offensive web security scanner for authorized security testing.

frameseven maps a target's attack surface and runs active checks for common web vulnerabilities and misconfigurations, then produces structured reports. It also ships an MCP server so AI agents can drive the same Framework v1 tooling.

Go License Version

[!WARNING]
Only scan systems that you own or have explicit permission to test. Framework
v1 performs active requests and may send methods or payloads that affect a
target application.

Highlights

  • Attack-surface mapping — recon, crawling, port and banner discovery, and
subdomain enumeration before any active probing.
  • Active vulnerability checks — XSS, SQL injection, LFI, SSRF, SSTI, XXE,
command injection, open redirect, access control, and rate-limit testing.
  • Misconfiguration and content audits — security headers, exposed content,
and external resource review.
  • Structured reporting — generates reports under a configurable output
directory, with optional PDF rendering.
  • Authenticated scans-auth-browser opens a browser to log in before the
scan so authenticated surface is covered.
  • MCP server — exposes versioned Framework v1 tools to AI agents over stdio
or Streamable HTTP.
  • Standard-library focused — a small, explicit Go codebase that is easy to
read and extend.

Video Demo

Watch a walkthrough and demonstration of frameseven in action:

Watch the frameseven demo on YouTube

Recommended: frameseven demo on YouTube

Get Frameseven

frameseven is distributed through three clear paths:

  • GitHub Releases and pre-releases are the recommended option for most
users who want a packaged binary without building from source.
  • Docker is the easiest way to run the scanner with a self-contained
runtime and the external tooling bundled in the image.
  • Source builds are best for development, local changes, or when you need
to work directly from the repository.

See Installation v1 for the full distribution matrix and platform-specific instructions.

Source Build Requirements

  • Go 1.26.5 or later in the Go 1.26 release line
  • Python 3 with fpdf2 for PDF report generation
  • Git
  • Network access to the authorized target
  • Linux, macOS, or another environment supported by Go

Quick Start

git clone https://github.com/sayseven7/frameseven.git
cd frameseven

Optional: enable PDF report generation for local builds

python3 -m venv .venv .venv/bin/python -m pip install "fpdf2>=2.8"

Verify the build

go test ./...

Run a scan against an authorized target from source

go run cmd/cli/v1/main.go -url https://target.example

If you prefer a packaged release, download a stable release or pre-release artifact from GitHub Releases and run the installed frameseven command.

To run the published Docker image:

docker pull ghcr.io/sayseven7/frameseven:<version>

mkdir -p reports docker run --rm \ -v "$PWD/reports:/workspace/reports" \ ghcr.io/sayseven7/frameseven:<version> \ -url https://target.example \ -out /workspace/reports

Run without -url in a terminal to open the interactive setup wizard:

go run cmd/cli/v1/main.go

Build an installable binary from source:

go build -o bin/frameseven/cli/v1 cmd/cli/v1/main.go
./bin/frameseven/cli/v1 -url https://target.example

Usage

frameseven -url https://target.example [flags]

| Flag | Default | Description | |---|---|---| | -url | required | Absolute HTTP or HTTPS target URL | | -tools | default | Comma-separated Framework v1 tools to run, default, or all | | -timeout | 10s | Timeout applied to each HTTP request | | -tool-timeout | 30s | Maximum runtime for each scanner tool | | -concurrency | 1 | Scanner tools to run in parallel after recon | | -rate | 50 | Requests sent by the rate-limit tool | | -ua | random agent | User-Agent header sent by the scanner | | -out, -o | reports | Directory for generated reports and the scan log | | -interactive, -i | disabled | Configure the scan with an interactive wizard | | -yes, -y | disabled | Skip the wizard's final confirmation | | -auth-browser | disabled | Open a browser to log in before the scan | | -quiet, -q | disabled | Hide banner and progress messages | | -verbose, -v | disabled | Show HTTP request and response debug logs | | -list-tools | disabled | List all Framework v1 scanner tools | | -version | disabled | Print the installed build version |

See CLI v1 for the complete flag reference and environment variables.

Scanner tools

recon, crawler, ports, bannergrab, subdomain, external, content, misconfig, access, auth, xss, sqli, lfi, ssrf, ssti, xxe, cmdi, redirect, ratelimit.

List them at any time:

frameseven -list-tools

Reports

PDF reports are rendered by the Go wrapper through Python. The wrapper uses FRAMESEVEN_PYTHON when set, otherwise it looks for .venv/bin/python, then falls back to python3. If Python or fpdf2 is missing, PDF generation returns a clear error instead of silently producing a broken report.

See Report Format v1 for the output contract.

MCP Server

frameseven includes an MCP server at cmd/mcp that exposes versioned Framework v1 tools to AI agents.

# stdio transport
go run ./cmd/mcp -transport stdio

Streamable HTTP transport

go run ./cmd/mcp -transport http -addr 127.0.0.1:8080
[!CAUTION]
Scanner tools send active security probes. Do not expose the HTTP MCP endpoint
openly to the internet; place it behind an access-controlled network, reverse
proxy, tunnel, or firewall rule.

See MCP Server and MCP configuration for client setup.

Documentation

Contributing

Contributions are welcome. Please read CONTRIBUTING.md and the Code of Conduct before opening a pull request. Project conventions and agent rules live in AGENTS.md.

License

Released under the MIT License.

🔗 More in this category

© 2026 GitRepoTrend · sayseven7/frameseven · Updated daily from GitHub