Skip to main content
Scans/github/xieyuschen/gopls-mcp

xieyuschen/gopls-mcp

github

Share

Summary

xieyuschen/gopls-mcp v2026-03-05 was classified as CRITICAL RISK with a risk score of 3612. Sigil detected 235 findings across 2961 files, covering phases including provenance, code patterns, install hooks, obfuscation. Review the findings below before installing this package.

Package description: MCP server for golang projects development: Expand AI Code Agent ability boundary to have a semantic understanding and determinisic information for golang projects.

CRITICAL RISK(3612)

v2026-03-05

6 March 2026, 21:08 UTC

by Sigil Bot

Risk Score

3612

Findings

235

Files Scanned

2961

Provenance

Findings by Phase

Phase Ordering

Phases are ordered by criticality, with the most dangerous at the top. Click any phase header to expand or collapse its findings. Critical phases are expanded by default.

install-makefile-curl

HIGH

Makefile/script pipes remote content to shell

repo/server.json:19

      "linux_macos": {
        "command": "curl -sSL https://gopls-mcp.org/install.sh | bash"
      },
Why was this flagged?

A script or Makefile pipes content from a remote URL directly into a shell (curl | sh or wget | bash). This is inherently dangerous because the remote content can change at any time, and the command runs with the current user's permissions. Rated HIGH because it requires manual execution (unlike install hooks) but still executes arbitrary remote code.

install-makefile-curl

HIGH

Makefile/script pipes remote content to shell

repo/site/public/install.sh:3

# gopls-mcp installer for Linux and macOS
# Usage: curl -sSL https://gopls-mcp.org/install.sh | bash
#        GOPLS_MCP_VERSION=v1.0.0 curl -sSL https://gopls-mcp.org/install.sh | bash
Why was this flagged?

A script or Makefile pipes content from a remote URL directly into a shell (curl | sh or wget | bash). This is inherently dangerous because the remote content can change at any time, and the command runs with the current user's permissions. Rated HIGH because it requires manual execution (unlike install hooks) but still executes arbitrary remote code.

install-makefile-curl

HIGH

Makefile/script pipes remote content to shell

repo/site/public/install.sh:4

# Usage: curl -sSL https://gopls-mcp.org/install.sh | bash
#        GOPLS_MCP_VERSION=v1.0.0 curl -sSL https://gopls-mcp.org/install.sh | bash
Why was this flagged?

A script or Makefile pipes content from a remote URL directly into a shell (curl | sh or wget | bash). This is inherently dangerous because the remote content can change at any time, and the command runs with the current user's permissions. Rated HIGH because it requires manual execution (unlike install hooks) but still executes arbitrary remote code.

install-makefile-curl

HIGH

Makefile/script pipes remote content to shell

repo/site/public/install.sh:76

    if echo "$response" | grep -q "API rate limit exceeded"; then
        error "GitHub API rate limit exceeded. Try: GOPLS_MCP_VERSION=v1.0.0 curl -sSL https://gopls-mcp.org/install.sh | bash"
    fi
Why was this flagged?

A script or Makefile pipes content from a remote URL directly into a shell (curl | sh or wget | bash). This is inherently dangerous because the remote content can change at any time, and the command runs with the current user's permissions. Rated HIGH because it requires manual execution (unlike install hooks) but still executes arbitrary remote code.

install-makefile-curl

HIGH

Makefile/script pipes remote content to shell

repo/site/src/content/docs/quick-start/index.md:13

```bash
curl -sSL https://gopls-mcp.org/install.sh | bash
```
Why was this flagged?

A script or Makefile pipes content from a remote URL directly into a shell (curl | sh or wget | bash). This is inherently dangerous because the remote content can change at any time, and the command runs with the current user's permissions. Rated HIGH because it requires manual execution (unlike install hooks) but still executes arbitrary remote code.

install-pip-setup-exec

CRITICAL

setup.py executes code at install time

repo/tools/cmd/present/static/jquery.js:2

/*! jQuery v1.8.2 jquery.com | jquery.org/license */
(function(a,b){function G(a){var b=F[a]={};return p.each(a.split(s),function(a,c){b[c]=!0}),b}function J(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(I,"-$1").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:+d+""===d?+d:H.test(d)?p.parseJSON(d):d}catch(f){}p.data(a,c,d)}else d=b}return d}function K(a){var b;for(b in a){if(b==="data"&&p.isEmptyObject(a[b]))continue;if(b!=="
Why was this flagged?

This setup.py calls subprocess, os.system, exec, or eval during package installation. Legitimate packages rarely need to execute arbitrary commands at install time. This pattern is commonly used by malicious packages to download and run payloads, exfiltrate environment variables, or establish persistence. Rated CRITICAL because it runs with the installer's full permissions.

install-pip-setup-exec

CRITICAL

setup.py executes code at install time

repo/tools/cmd/present/static/jquery.js:2

/*! jQuery v1.8.2 jquery.com | jquery.org/license */
(function(a,b){function G(a){var b=F[a]={};return p.each(a.split(s),function(a,c){b[c]=!0}),b}function J(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(I,"-$1").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:+d+""===d?+d:H.test(d)?p.parseJSON(d):d}catch(f){}p.data(a,c,d)}else d=b}return d}function K(a){var b;for(b in a){if(b==="data"&&p.isEmptyObject(a[b]))continue;if(b!=="
Why was this flagged?

This setup.py calls subprocess, os.system, exec, or eval during package installation. Legitimate packages rarely need to execute arbitrary commands at install time. This pattern is commonly used by malicious packages to download and run payloads, exfiltrate environment variables, or establish persistence. Rated CRITICAL because it runs with the installer's full permissions.

Badge

Sigil scan badge for github/xieyuschen/gopls-mcp

Markdown

[![Sigil Scan](https://sigilsec.ai/badge/github/xieyuschen/gopls-mcp)](https://sigilsec.ai/scans/12E22DD0-E14C-4688-955D-03C783A3F5CB)

HTML

<a href="https://sigilsec.ai/scans/12E22DD0-E14C-4688-955D-03C783A3F5CB"><img src="https://sigilsec.ai/badge/github/xieyuschen/gopls-mcp" alt="Sigil Scan"></a>

Run This Scan Yourself

Scan your own packages

Run Sigil locally to audit any package before it touches your codebase.

curl -sSL https://sigilsec.ai/install.sh | sh
Read the docs →Free. Apache 2.0.

Early Access

Get cloud scanning, threat intel, and CI/CD integration.

Join 150+ developers on the waitlist.

Get threat intelligence and product updates

Security research, new threat signatures, and product updates. No spam.

Other github scans

Believe this result is incorrect? Request a review or see our Terms of Service and Methodology.

Scanned bySigil Bot