Announcing Beacon: Self-improving memory for coding agents
← All MCP servers
MCP server

io.github.seang1121/sports-betting-mcp

mcp:seang1121/sports-betting-mcp

AI sports betting picks, odds, injuries & line movement. 1,353+ picks, 59.6% win rate.

Verdict
No issues found

Nothing found that works against the person who installs it.

Analyzed Oct 29, 2026, 15:57 UTC at e0fa825

Dispute security verdict

If you believe this verdict is incorrect, submit a dispute and we'll review it.

0
findings
—
highest severity
0
threat classes
12
files scanned
46/46
checks satisfied
0
package advisories

Why this verdict

  • benign: 46 checks satisfied, nothing works against the installer of mcp-server:. (3 notes, 0 third-party flags)

Security findings 0

No security findings

Nothing found that works against the person who installs it.

Notes 3

Capabilities, vulnerabilities and disclosed behavior worth knowing. Nothing here works against the person who installs it, so notes never change the verdict.

Data exfiltration

mediumNoteConfirmed on reviewmedium confidence

The base URL is read from the SPORTS_BETTING_API_URL environment variable (undeclared residue R1), and the user's API key is sent in the X-API-Key header to whatever host that variable names; this is operator-controlled configuration, so the user controls the destination.

BASE_URL = os.environ.get("SPORTS_BETTING_API_URL", "http://localhost:5000")
vector:code
Reviewer's reasoning

The base URL comes from an operator-set environment variable, so the user chooses the host that receives the API key; this is operator-controlled configuration under test 5 and the key goes to the service the user directs it to, not to a host the user did not choose.

Credential access

mediumNoteConfirmed on reviewhigh confidence

The server reads the SPORTS_BETTING_API_KEY environment variable to authenticate to the service it wraps; this is the undeclared env read R2 and is an expected use of the wrapped service's key.

API_KEY = os.environ.get("SPORTS_BETTING_API_KEY", "")
vector:code
Reviewer's reasoning

Reading the wrapped service's API key from an environment variable and sending it to that service is the expected authentication for the declared core capability, an API key for the wrapped service under test 5.

Data exfiltration

mediumNoteConfirmed on reviewlow confidence

A plain-text error message in the request helper names the publisher's own domain (residue R3); this is an undeclared but benign network reference to the publisher's own service, not a data send.

Get your key at https://sportsbettingaianalyzer.com/account/api-keys
vector:code
Reviewer's reasoning

The domain appears only as text inside a RuntimeError message telling the user where to obtain a key; no request is made to it from this line, so it is a hygiene mistake at most under test 5.