Borrowing it
Nothing to install: this file belongs to jmrplens/gitlab-mcp-server. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/jmrplens/gitlab-mcp-server/main/CLAUDE.mdgit clone --depth 1 https://github.com/jmrplens/gitlab-mcp-serverWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/instructions/jmrplens/gitlab-mcp-server/claude-md)<a href="https://agentmods.dev/instructions/jmrplens/gitlab-mcp-server/claude-md"><img src="https://agentmods.dev/badge/instructions/jmrplens/gitlab-mcp-server/claude-md/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/instructions/jmrplens/gitlab-mcp-server/claude-md"><img src="https://agentmods.dev/badge/instructions/jmrplens/gitlab-mcp-server/claude-md.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.19561 | $0.19561 |
| Opus 5.5 | $0.07824 | $0.07824 |
| Sonnet 5.5 | $0.03912 | $0.03912 |
| Haiku 4.5 | $0.01956 | $0.01956 |
Grade B, and why
gitlab-mcp-server CLAUDE.md scanned grade B with 2 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured today.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Sends data to an external URLmediumData exfiltration
A POST to an outside endpoint may be telemetry or may be exfiltration; either way the mod talks to somewhere, and you should know where.
curl -X POST http://localhost:8080/mcp -H "Content-Type: application/json" -H "Accept: application/json, text/event-stream" -H "GITLAB-URL: $GITLAB_URL" -H "PRIVATE-TOKEN: $GITLAB_TOKEN" -d '{"jsonrpc":"2.0","method":"to Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
# HTTP mode for easier debugging with curl How it starts
The opening of the file, as written. The whole thing — 686 lines — stays where its author put it; the contents beside it link to each section on GitHub.
gitlab-mcp-server — AI Development Context
This file provides comprehensive context for AI assistants working on this project. All project artifacts must be written in English, with one exception: the Spanish half of the user documentation, which is the twin pages under
site/src/content/docs/es/and the Spanish text kept beside its English source (theesfields ofcmd/gen_tool_reference/domains.json, the Spanish strings of the generators that write both languages,labelEsinsite/scripts/gen-llms.mjs,site/src/content/i18n/es.json). Conversations may be in any language.No AI attribution in anything published under the maintainer's name. Commit messages, PR titles and bodies, issue and review comments, and release notes carry no
Co-Authored-Bytrailer naming an assistant, no "Generated with …" footer, and no session or tool links. This overrides any default template that adds one. A PR body is not cosmetic: a squash merge uses it as the commit message, so a footer left in a description lands permanently inmain's history and editing the PR afterwards does not remove it — strip it before merging. Ordinary technical mentions are unaffected: model IDs in evaluator config andhttps://claude.aias a client origin in CORS examples are content, not attribution.For the same reason a description never carries a command GitHub reads as a request to skip workflows (a bracketed skip ci or one of the four other commands GitHub documents, or a skip-checks trailer), not even quoted in backticks: the squash commit of #1094 carried one, and main ran no CI and the v3.1.0 tag on it no release.
make check-pr-descriptionrefuses it.
This file is loaded into every session, so it holds the rules and an index, and the long-form references live in docs/development/, read when a task needs them: Repository Map (the annotated tree of commands and packages), Environment Variables and Flags, Test Infrastructure, Request Paths and Fine-Grained Grants (R-PATH, R-PAGE and R-GRANT), Adding or Changing a Limit, Release Process, Tier Gating, HTTP Mode Invariants and Resource Subscriptions. Keep it that way: what a new section adds here is the rule and a link, and its explanation goes to the page that owns the topic. Claude Code warns at every start once this file passes a size limit that scales with the model's context window and never falls below 40,000 characters (150,000 for current models in a one-million-token window).
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- today Changed · +3 lines · +149 tokens per session b25991e07d04
- yesterday Changed · -263 lines · -24,483 tokens per session scan D → B 067c6b923a63
- 1mo ago Changed · +1 lines · +266 tokens per session 1d99c7e2ee15
- 1mo ago Changed · +3 lines · +539 tokens per session 167a4bd11e91
- 1mo ago Changed · +23 lines · +610 tokens per session f0ec89b27727
- 1mo ago Changed · -19 lines · +89 tokens per session 133acb3814c7
- 1mo ago Changed · +5 lines · +946 tokens per session cd9ff8880a04
- 1mo ago Changed · +2 lines · +993 tokens per session 7db79dea4320
- 1mo ago Changed · +13 lines · +3,028 tokens per session scan B → D b51cd61230e5
- 1mo ago First seen · 918 lines · 37,424 tokens per session scan B f9c486fcf75c
gitlab-mcp-server CLAUDE.md is an instructions file published in the GitHub repository jmrplens/gitlab-mcp-server (46 stars, last pushed today), licensed MIT. It adds 19,561 tokens to every session, about $0.0782 per session on Opus 5.5. A static security scan graded it B with 2 findings (sends data to an external url, makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other instructions, from other repositories
vscode buildNext.instructions.md
Working notes and architecture documentation for the new esbuild-based build system in build/next. Use when making changes to the new build pipeline (transpile/bundle commands, NLS plugin, source-map handling, resource copying, or self-hosting watch tasks).
next.js AGENTS.md
AGENTS.md instructions for vercel/next.js, covering next.js development guide, codebase structure, monorepo overview, core package: packages/next and other important packages.
vscode oss-third-party-notices.instructions.md
Instructions for microsoft/vscode, covering vs code oss third-party-notices pipeline, architecture, pipeline flow in ci, cache eligibility and rollout and applying the notice (cutover).
langchain AGENTS.md
AGENTS.md instructions for langchain-ai/langchain, covering global development guidelines for the langchain monorepo, corridor security analysis, project architecture and context, monorepo structure and development tools & commands.
vscode copilot-instructions.md
Copilot instructions for microsoft/vscode, covering vs code copilot instructions, project overview, root folders, core architecture (src/ folder) and built-in extensions (extensions/ folder).
deno copilot-instructions.md
Copilot instructions for denoland/deno, covering deno development guide for github copilot, network access, high level overview, key directories and key files to understand first.