74 lines
3.5 KiB
Markdown
74 lines
3.5 KiB
Markdown
---
|
|
name: gitlab
|
|
description: >
|
|
This skill should be used whenever the user asks about code in the MPM GitLab
|
|
repository, including questions about "the codebase", "the repo", "RDMC code",
|
|
"middleware code", "APK code", "Visual Applications", "how does X work in the
|
|
code", "find where Y is defined", "search the repo for", "look at the source",
|
|
"what does this function do", "show me the code for", "check the backend",
|
|
"how is X implemented", or any question that requires reading or searching
|
|
source code. Also triggers on "GitLab", "the repository", "our codebase",
|
|
"the source", or any request to understand, audit, or trace code in the
|
|
MPM system. Also triggers on "setup gitlab credentials", "store my token",
|
|
"update my PAT", or "rotate my gitlab token".
|
|
metadata:
|
|
version: "0.2.0"
|
|
author: "Message Point Media"
|
|
---
|
|
|
|
## MPM GitLab Repository Access
|
|
|
|
The `gitlab-mpm` MCP server provides read-only access to MPM's GitLab account at gitlab.com. Use it to answer code questions, trace functionality, find implementation details, and understand system architecture across MPM's repositories.
|
|
|
|
## First-Time Setup
|
|
|
|
After installing this plugin, credentials must be stored before any repository access will work. Run:
|
|
|
|
```
|
|
setup_credentials("<your-gitlab-pat>")
|
|
```
|
|
|
|
The PAT is stored in macOS Keychain — never in the plugin files. To verify the connection is working, run `check_credentials()`. To rotate a token, just run `setup_credentials()` again with the new value.
|
|
|
|
## MPM Repository Groups
|
|
|
|
| Group | Contents |
|
|
|-------|----------|
|
|
| `mpmedia-andriod` | APK code: launchers, TDM apps, ITxPT, RDMC monitoring, IoT |
|
|
| `mpmedia-transit-apps` | Visual Applications (HTML): wayside and on-vehicle display apps, plugins |
|
|
| `MPMedia` | Middleware, agency GTFS projects, backend tools |
|
|
| `mpm-backend-refactors` | RDMC-Mono, shared backend services |
|
|
| `mpmprojects` | Web apps, GTFS integrations, customer-specific projects |
|
|
|
|
Use `list_group_projects("<group>")` to see all repos in a group.
|
|
|
|
## How to Use the GitLab MCP Tools
|
|
|
|
When a user asks a code-related question:
|
|
|
|
1. **Start with project discovery** — use `list_group_projects` or `list_projects` to identify the right repository before reading files
|
|
2. **Search before you read** — use `search_code` to locate specific symbols, functions, or patterns rather than reading entire files
|
|
3. **Follow the thread** — when you find a relevant file, check imports and references to understand the full call chain
|
|
4. **Summarize with precision** — report file paths, line numbers, and function names; don't paraphrase code logic without citing the source
|
|
|
|
## Tool Reference
|
|
|
|
| Tool | Purpose |
|
|
|------|---------|
|
|
| `setup_credentials` | Store PAT in Keychain (run once after install) |
|
|
| `check_credentials` | Verify token is stored and working |
|
|
| `clear_credentials` | Remove token from Keychain |
|
|
| `list_projects` | List all accessible repos (membership-scoped) |
|
|
| `list_group_projects` | List all repos in a specific group |
|
|
| `get_project` | Get details for a project by ID or path |
|
|
| `list_repository_tree` | Browse files and directories |
|
|
| `get_file_contents` | Read a specific file |
|
|
| `search_code` | Search for code within a project |
|
|
| `list_branches` | List branches |
|
|
| `list_commits` | List recent commits |
|
|
| `get_commit` | Get commit details and stats |
|
|
|
|
## Access Scope
|
|
|
|
Read-only. The `read_api` PAT scope allows listing projects, searching code, reading file contents, and browsing repository structure. No write operations are possible.
|