github Python analyzed 401de6c

Vijay-Duke/mcp-gitlab

github

MCP (Model Context Protocol) server for GitLab - AI-powered GitLab integration

maintainer
Vijay-Duke
licence
Apache-2.0
first seen
2026-09-05
last seen
2026-09-07
releases · 30d
0
short id

Drift inferred · capture-to-capture

  1. HIGH code analysis flagged committed secret in Vijay-Duke/mcp-gitlab
  2. HIGH code analysis flagged committed secret in Vijay-Duke/mcp-gitlab
  3. HIGH code analysis flagged committed secret in Vijay-Duke/mcp-gitlab
capabilities 3 tools
transport stdio counts 3 tools · 0 res · 0 prompts permission surface via code analysis

tools

  • gitlab_get_file_content
  • gitlab_get_issue
  • gitlab_get_merge_request
skills & danger signals github-tarball
prompt-surface shipped agent-instruction files + hidden-content / dangerous-code findings — quoted from the analyzed source

analyzed commit 401de6c · analyzer v33 · 3d ago

danger signals1

code evidence vHEAD · github-tarball
evidence-backed findings quoted directly from the published source artifact — not inferred

code files: 47

filesystem 7

  • fs Vijay-Duke-mcp-gitlab-401de6c/audit_handlers.py :7 from pathlib import Path
  • fs Vijay-Duke-mcp-gitlab-401de6c/mcp_gitlab/__init__.py :17 from pathlib import Path
  • fs Vijay-Duke-mcp-gitlab-401de6c/src/mcp_gitlab/git_detector.py :108 with open(config_file, 'r', encoding='utf-8') as f:
  • fs Vijay-Duke-mcp-gitlab-401de6c/src/mcp_gitlab/server.py :53 from pathlib import Path
  • fs Vijay-Duke-mcp-gitlab-401de6c/src/mcp_gitlab/version.py :4 from pathlib import Path
  • fs Vijay-Duke-mcp-gitlab-401de6c/test_gitlab_connection.py :6 from pathlib import Path
  • fs (weak) Vijay-Duke-mcp-gitlab-401de6c/tests/test_tool_registration.py :7 from pathlib import Path

network 3

  • net Vijay-Duke-mcp-gitlab-401de6c/src/mcp_gitlab/git_detector.py :4 from urllib.parse import urlparse
  • net Vijay-Duke-mcp-gitlab-401de6c/src/mcp_gitlab/security.py :99 from urllib.parse import urlparse
  • net Vijay-Duke-mcp-gitlab-401de6c/src/mcp_gitlab/validators.py :8 from urllib.parse import urlparse

secrets 4

  • secrets Vijay-Duke-mcp-gitlab-401de6c/src/mcp_gitlab/constants.py :43 ERROR_NO_TOKEN = os.getenv("GITLAB_ERROR_NO_TOKEN", """No GitLab authentication token found.
  • secrets Vijay-Duke-mcp-gitlab-401de6c/src/mcp_gitlab/server.py :153 private_token=os.getenv("GITLAB_PRIVATE_TOKEN"),
  • secrets Vijay-Duke-mcp-gitlab-401de6c/test_gitlab_connection.py :20 private_token = os.getenv("GITLAB_PRIVATE_TOKEN")
  • secrets (weak) Vijay-Duke-mcp-gitlab-401de6c/tests/test_integration.py :14 not os.getenv("GITLAB_PRIVATE_TOKEN"),

tool registrations 3

  • gitlab_get_issue Vijay-Duke-mcp-gitlab-401de6c/src/mcp_gitlab/server.py :278
  • gitlab_get_merge_request Vijay-Duke-mcp-gitlab-401de6c/src/mcp_gitlab/server.py :305
  • gitlab_get_file_content Vijay-Duke-mcp-gitlab-401de6c/src/mcp_gitlab/server.py :336

declared dependencies 22

  • mcp@>=0.1.0
  • python-gitlab@>=8.2.0
  • pydantic@>=2.13.5
  • python-dotenv@>=1.0.0
  • python-json-logger@>=4.1.0
  • tomli@>=2.0.0; python_version<
  • pytest@>=9.1.1
  • pytest-asyncio@>=0.21.0
  • pytest-cov@>=4.0.0
  • pytest-mock@>=3.15.1
  • ruff@>=0.15.10
  • black@>=23.0.0
show 10 more
  • mypy@>=1.0.0
  • isort@>=8.0.1
  • pre-commit@>=3.0.0
  • sphinx@>=7.0.0
  • sphinx-rtd-theme@>=2.0.0
  • sphinx-autodoc-typehints@>=2.0.0
  • sphinx-copybutton@>=0.5.2
  • myst-parser@>=2.0.0
  • sphinxcontrib-mermaid@>=2.1.1
  • sphinx-tabs@>=3.0.0