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

io.github.vicseeai/vicsee-mcp-server

mcp:vicseeai/vicsee-mcp-server

Generate, edit and upscale AI video and images from any agent via VicSee.

Verdict
No issues found

No suspicious or malicious behavior was found.

Analyzed Oct 26, 2026, 12:22 UTC at e070654

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
17
files scanned
325/325
checks satisfied
0
package advisories

Why this verdict

  • benign: 325 checks satisfied, no findings for mcp-server:.

Security findings 0

No security findings

No suspicious or malicious behavior was found; 3 candidate findings were refuted on review.

Execution chain 31

What it calls, runs, installs, reads and writes, with the line that does it.

Environment variables 2

VICSEE_API_KEY
VICSEE_BASE_URL

Files read 2

<dynamic>
<dynamic>

GitHub repositories 4

vicseeai/vicsee-mcp-server
vicseeai/vicsee-mcp-server
vicseeai/vicsee-mcp-server
vicseeai/vicsee-mcp-server

Network calls 6

<dynamic>
<dynamic>
<dynamic>
<dynamic>
src/worker.ts:160 · via:resolveUserKey
<dynamic>
vicsee.com
src/vicsee-client.ts:8 · url_literal

Packages 1

npm:@vicsee/mcp-server@0.3.3
server.json:14 · launch:server.json

URLs 16

https://github.com/vicseeai/vicsee-mcp-server
https://github.com/vicseeai/vicsee-mcp-server.git
https://github.com/vicseeai/vicsee-mcp-server/issues
https://github.com/vicseeai/vicsee-mcp-server#readme
https://mcp.vicsee.com
https://mcp.vicsee.com
https://mcp.vicsee.com/mcp
https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json
https://vicsee.com
https://vicsee.com
https://vicsee.com/api/v1
https://vicsee.com/api/v1
https://vicsee.com/api/v1
https://vicsee.com/api/v1/internal/mcp/resolve-user-key
https://vicsee.com/connect/authorize
https://vicsee.com/mcp
Refuted findings 3

Candidates the review stage examined and rejected, kept for transparency.

Data exfiltration

criticalRefutedlow confidence

The vicsee_upload tool reads an agent-supplied local file path and uploads its bytes to VicSee's remote storage, returning a public URL, so an agent could be steered into publishing local media files; the extension allowlist and the declared purpose limit this.

Upload a LOCAL file (image, video, or audio) from this machine and get back a public https URL.
Why it was refuted

Uploading a local file to get a public URL is the tool's declared core purpose, stated in its own metadata. It is limited by an extension allowlist and size caps, and it exposes nothing beyond what the description says.

Data exfiltration

criticalRefutedlow confidence

vicsee_upload reads any agent-supplied local file path (image/video/audio extensions) and PUTs it to a presigned storage URL returning a public URL; this is the declared core purpose, but the tool could upload sensitive local media to a public CDN if an agent is prompted to, with no path restriction.

bytes = await readFile(file_path);
Why it was refuted

The readFile call is the implementation of the declared upload capability. The tool description discloses it, and it sits behind an extension allowlist and size caps.

Data exfiltration

criticalRefutedlow confidence

Any tool taking image inputs (resolveImageInput) reads an arbitrary agent-supplied local path (restricted to image extensions) and inlines it as base64 into API requests to VicSee; the local-file inlining is mentioned only in code comments, not in tool metadata, so it is a lightly disclosed capability that allows any local image file to be sent off-host.

bytes = await readFile(value);
Why it was refuted

Inlining a local image as base64 is a disclosed feature of the wrapper, needed because the API accepts only public URLs or data: URIs. Only image extensions are read, and the data goes to the wrapped VicSee service, which is the declared core function.