gitlab-mcp-server: Instructions file for GitHub Copilot

.github/instructions/go-mcp-server.instructions.md

gitlab-mcp-server go-mcp-server.instructions.md is an instructions file for GitHub Copilot from jmrplens/gitlab-mcp-server. It costs 4,689 tokens per session, scanned A, original, MIT.

Development guidance for building MCP servers in Go with the official Go SDK. MCP servers let AI tools call clearly defined functions provided by another program.

In plain words
What is it for?
Use it when creating or updating Go-based MCP tools, especially tools that work with GitLab projects, issues, or other resources.
Why use it?
It helps keep server setup, tool names, and API handlers consistent and understandable when several tools work together.

Instructions file for GitHub Copilot

Written for GitHub Copilot: a Copilot instructions file.

This is jmrplens/gitlab-mcp-server's own configuration. It tells GitHub Copilot how to work on gitlab-mcp-server itself, so it is not a mod to install elsewhere. Copy it as a starting point and replace the rules that are about this project. Everything gitlab-mcp-server configures →

Reuse

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.

Copy the file
curl -O https://raw.githubusercontent.com/jmrplens/gitlab-mcp-server/main/.github/instructions/go-mcp-server.instructions.md
Clone the repo
git clone --depth 1 https://github.com/jmrplens/gitlab-mcp-server

Made for: GitHub Copilot.

Wrote 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.

agentmods badge for gitlab-mcp-server go-mcp-server.instructions.md

README.md
[![agentmods](https://agentmods.dev/badge/instructions/jmrplens/gitlab-mcp-server/go-mcp-server/github.svg)](https://agentmods.dev/instructions/jmrplens/gitlab-mcp-server/go-mcp-server)
Your own site
<a href="https://agentmods.dev/instructions/jmrplens/gitlab-mcp-server/go-mcp-server"><img src="https://agentmods.dev/badge/instructions/jmrplens/gitlab-mcp-server/go-mcp-server/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.

agentmods 80×15 button for gitlab-mcp-server go-mcp-server.instructions.md

Your own site · 80×15
<a href="https://agentmods.dev/instructions/jmrplens/gitlab-mcp-server/go-mcp-server"><img src="https://agentmods.dev/badge/instructions/jmrplens/gitlab-mcp-server/go-mcp-server.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 4,689 This file is loaded in full into every session.
When invoked 4,689 The same file — it is already loaded in full.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5.1 $0.04689 $0.04689
Opus 5.5 $0.01876 $0.01876
Sonnet 5.5 $0.00938 $0.00938
Haiku 4.5 $0.00469 $0.00469

Measured 9d ago against content hash 1d5fecab7156, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

gitlab-mcp-server go-mcp-server.instructions.md scanned grade A with 0 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 9d ago.

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.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

.github/instructions/go-mcp-server.instructions.md · 589 lines

How it starts

The opening of the file, as written. The whole thing — 589 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Go MCP Server Development Guidelines

When building MCP servers in Go, follow these best practices and patterns using the official Go SDK (v1.8.0+).

Server Setup

Create an MCP server using mcp.NewServer:

import "github.com/modelcontextprotocol/go-sdk/mcp"

server := mcp.NewServer(
    &mcp.Implementation{
        Name:    "my-server",
        Version: "v1.8.0",
    },
    nil, // or provide *mcp.ServerOptions
)

Tool Naming Conventions

Use snake_case with a service prefix to avoid conflicts when multiple MCP servers run together:

  • Format for this project: catalog action IDs are {domain}.{action} (issue.create, project.list); on the individual surface the declared name is domain-first, gitlab_{domain}_{action} (gitlab_issue_create, gitlab_project_list), with a legacy verb-first set (gitlab_list_issue_discussions) that stays as declared. New actions take the domain-first form; the name is IndividualTool.Name in the ActionSpec, never derived by formula. Meta-tools are the bare domain (gitlab_issue) with the operation in the action argument
  • The action segment is a verb: get, list, search, create, update, delete
  • Be specific: Avoid generic names that could conflict with other servers
  • Descriptions: Must narrowly and unambiguously describe functionality, matching actual behavior

Adding Tools

For ordinary GitLab API actions in this repository, add or update domain-local ActionSpecs and handlers. Do not add package-local RegisterTools functions or ad hoc mcp.AddTool calls; shared projection layers consume the canonical action catalog for meta-tools, dynamic find/execute, gitlab://tools, audits, docs, and individual tool registration.

Each ActionSpec declares a minimum edition (free, premium, or ultimate). Edition gating flows through GITLAB_MCP_TIER / --tier and pruneSchemaFieldsByTier in internal/tools/action_catalog.go, which removes premium/ultimate-only actions and prunes per-field schema entries once the active tier resolves. Set the lowest edition that exposes the endpoint correctly and add tier hints in ParameterGuidance when a field is edition-gated. Run go run ./cmd/audit_discovery_completeness/ to confirm each new action has aliases, usage, parameter guidance, and related actions.

Read the full file on GitHub · 589 lines

Changes

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.

  1. 9d ago Changed 1d5fecab7156
  2. 25d ago Changed · +15 lines · +262 tokens per session 1aa234bd5cec
  3. 27d ago Changed · +11 lines · +169 tokens per session 196ac0b2f937
  4. 1mo ago Changed 176398e284ad
  5. 1mo ago Changed · +2 lines · +350 tokens per session a516b778a3e5
  6. 1mo ago First seen · 561 lines · 3,908 tokens per session scan A be5fbd334489

Subscribe to this mod's changes

gitlab-mcp-server go-mcp-server.instructions.md is an instructions file published in the GitHub repository jmrplens/gitlab-mcp-server (46 stars, last pushed today), licensed MIT. It adds 4,689 tokens to every session, about $0.0188 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

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).

microsoft/vscode · 9,649 tokens

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.

vercel/next.js · 7,384 tokens

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).

microsoft/vscode · 5,262 tokens

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.

langchain-ai/langchain · 4,680 tokens

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).

microsoft/vscode · 2,731 tokens

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.

denoland/deno · 3,077 tokens