Skip to main content
Glama
revenant20
by revenant20

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
GITFLIC_TOKENYesТокен доступа GitFlic API
GITFLIC_API_URLNoБазовый URL API (по умолчанию https://api.gitflic.ru)https://api.gitflic.ru

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
get_meA

Get the currently authenticated GitFlic user's profile, including username, full name, email, and avatar URL. Use this to verify the current user identity or to get the user alias needed for other API calls.

get_userA

Get a GitFlic user's public profile by their alias (username). Returns name, avatar, and cover image. Does not return email — use get_me for the authenticated user's email.

list_user_projectsA

List public projects owned by a specific GitFlic user. Only returns projects visible to the public. To list your own projects (including private ones), use list_projects instead.

list_projectsA

List projects owned by the authenticated user, including private ones. Supports filtering by title with the q parameter. To find public projects from other users, use search_projects. To list projects where you are a collaborator, use list_shared_projects.

get_projectA

Get detailed information about a specific GitFlic project by owner and project alias. Returns title, description, default branch, language, topics, transport URLs (HTTP/SSH), and visibility settings. Use this to get project metadata before performing other operations.

search_projectsA

Search for public projects across all of GitFlic by title. Returns paginated results with project alias, title, and owner. Only finds public projects — use list_projects for your own private projects.

list_shared_projectsA

List projects where the authenticated user is a collaborator (not the owner). Supports filtering by title. To list projects you own, use list_projects instead.

update_projectA

Update a project's settings including title, description, programming language, and topics. Only the provided fields will be changed. Requires owner or admin permissions on the project.

list_project_membersA

List members (collaborators) of a project with their roles. Supports search by username. Internally resolves the project UUID from owner/alias before querying members.

list_issuesA

List issues (tasks) of a GitFlic project with pagination. Returns issue local ID, title, status, and creation date. Issues are the GitFlic equivalent of GitHub Issues. Use get_issue to fetch full details including description and labels.

get_issueA

Get full details of a specific issue by its local numeric ID. Returns title, description, status (OPEN/IN_PROGRESS/CLOSED/COMPLETED), assigned users, labels, and timestamps. Use list_issues first to discover available issue IDs.

create_issueA

Create a new issue in a GitFlic project. Requires title and description. Status defaults to OPEN but can be set to IN_PROGRESS, CLOSED, or COMPLETED. Labels and assignees are not supported through this tool.

update_issueA

Update an existing issue's title, description, or status. Only provided fields will be changed. The issue is identified by its local numeric ID (not UUID). Use get_issue first to see current values.

list_issue_commentsA

List comments on a specific issue with pagination. Returns comment ID, author, truncated text (120 chars), and timestamp. Use get_issue to see the issue description itself — this tool only returns discussion comments.

add_issue_commentA

Add a text comment to an issue discussion thread. The comment will appear as posted by the authenticated user. Use list_issue_comments to see existing comments first.

get_file_contentA

Read the contents of a single file from a GitFlic repository as plain text. Supports files up to 15 MB. Cannot read binary files (images, archives) — returns 400 for those. The commitHash parameter is required and accepts a branch name (e.g. 'main') or a specific commit hash.

list_filesA

List files and directories at a specific path in a repository with last commit metadata. Defaults to root directory if filepath is omitted. Shows one directory level only — use list_files_recursive for a full tree view.

list_files_recursiveA

List all files in a repository recursively as a flat tree. Returns file paths, extensions, and sizes. The commitHash parameter is required (use a branch name like 'main') — without it the API returns 400. Use the depth parameter (0-10) to limit recursion. For browsing a single directory, use list_files instead.

list_merge_requestsA

List merge requests of a GitFlic project with pagination. Returns MR local ID, title, status (OPEN/MERGED/CLOSED/CANCELLED), and source/target branches. Merge requests are the GitFlic equivalent of GitHub Pull Requests. Use get_merge_request for full details.

get_merge_requestA

Get full details of a merge request by its local numeric ID. Returns title, description, source/target branches, status, reviewers, conflict info, and the MR UUID needed for update_merge_request. Use this to inspect an MR before approving or merging.

create_merge_requestA

Create a new merge request to merge one branch into another. Both branches must exist in the project. Optionally enable squash commits or auto-delete of the source branch after merge. Internally resolves the project UUID.

update_merge_requestA

Update a merge request's title, description, target branch, or squash/remove-branch settings. Requires the MR UUID (not local ID) — get it from get_merge_request response field 'id'. Title and targetBranch are always required.

approve_merge_requestA

Toggle approval on a merge request. If not yet approved by the authenticated user, this adds approval; if already approved, this removes it. Use get_merge_request to check the current approval state first.

merge_merge_requestA

Perform the actual merge of a merge request into its target branch. The MR must be in OPEN status and have no conflicts. Optionally provide custom commit messages for the merge commit and/or squash commit. This is irreversible.

close_merge_requestA

Close a merge request without merging. The source branch is preserved. Use this when proposed changes are no longer needed or were rejected. To withdraw your own MR, use cancel_merge_request instead.

cancel_merge_requestA

Cancel a merge request (withdraw it). The MR status changes to CANCELLED, indicating it was withdrawn by the author. Use close_merge_request instead if the MR was reviewed and rejected by others.

list_branchesA

List all branches of a GitFlic project with pagination. Returns branch names and last commit messages. Use get_branch for detailed info about a specific branch, or get_default_branch to find the main branch.

get_branchA

Get detailed information about a specific branch by name, including the last commit hash, message, author, and timestamps. Use this before creating a merge request to verify the branch exists.

get_default_branchA

Get the default (main) branch of a project with full details including last commit info. Use this when you need the base branch name for comparisons or merge requests.

create_branchA

Create a new branch from an existing one. The new branch will point to the same commit as the origin branch's HEAD. Use list_branches to verify existing branches first.

delete_branchA

Delete a branch from a GitFlic project. WARNING: this endpoint currently returns 405 on api.gitflic.ru due to a GitFlic API limitation — this is not an MCP server bug. Do not use until GitFlic fixes the API.

compare_branchesA

Compare two branches and list files that differ between them. Returns changed files with added/removed line counts. If base is omitted, compares against the default branch. For a detailed line-by-line diff, use diff_commits instead.

list_commitsA

List commits of a branch with pagination. Defaults to the project's default branch if no branch is specified. Returns short commit hash, message, author, and date. Use get_commit for full details of a specific commit.

get_commitA

Get detailed information about a specific commit by its hash (full or short). Returns full commit message, author/committer identities, timestamps, parent commit IDs, and verification status.

get_commit_filesA

List all files changed in a specific commit. Returns file paths, change types (ADD/MODIFY/DELETE), and added/removed line counts. Does not return the actual diff content — use diff_commits for that.

diff_commitsA

Get a full line-by-line diff between two commits. Returns detailed file changes with diff hunks. Can produce very large output for commits with many changes. Use get_commit_files for a lightweight summary of changed files instead.

list_tagsA

List all tags of a GitFlic project with pagination. Returns tag names and messages. Tags mark specific points in commit history, typically used for releases. Use get_tag for detailed info including the tagged commit.

get_tagA

Get detailed information about a specific tag by name. Returns the tag name, tagged commit ID, message, creation date, and whether it's lightweight or annotated. Use this to find the commit associated with a release version.

create_tagA

Create a new Git tag in a GitFlic project. Provide either commitId (specific commit hash) or branchName (tags the branch HEAD) — at least one is required. Include a message to create an annotated tag; omit it for a lightweight tag.

list_releasesA

List releases of a GitFlic project with pagination. Returns release titles, tag names, pre-release flags, and creation dates. Releases are distribution snapshots tied to Git tags, similar to GitHub Releases. Use get_release or get_latest_release for full details.

get_releaseA

Get full details of a release by its UUID (not tag name). Returns title, description, tag name, attached files with download links, and checksums. Use list_releases to find release UUIDs first.

get_latest_releaseA

Get the most recent release of a project with full details including description, attached files, and download links. Use this when you need the current version without browsing all releases.

create_releaseA

Create a new release tied to an existing Git tag. Requires title, description, and tag name. The tag must already exist — use create_tag first if needed. Can optionally attach a project archive in various formats (zip, tar.gz, etc.).

update_releaseA

Update an existing release's title, description, tag association, or pre-release flag. The releaseUuid and tagName are always required — omitting tagName causes a 500 error. Use get_release to fetch current values before updating.

delete_releaseA

Permanently delete a release and its attached files. Identified by release UUID. This does not delete the associated Git tag. This action cannot be undone.

list_mr_discussionsA

List discussion threads on a merge request with pagination. Returns discussion UUID, author, message preview, and resolved status. Discussions can be general comments or line-level code comments. Use get_mr_discussion for full thread details.

get_mr_discussionA

Get a specific discussion thread by UUID, including all replies. Returns full message, author, file/line references for code comments, and all reply messages. Use list_mr_discussions to find discussion UUIDs.

create_mr_discussionA

Start a new discussion on a merge request. For a general comment, only provide the message. For a line-level code comment, also provide newLine, oldLine, newPath, and oldPath — all four fields are required together for code comments.

reply_mr_discussionA

Add a reply to an existing discussion thread on a merge request. Requires the discussion UUID from list_mr_discussions or get_mr_discussion. The reply appears as posted by the authenticated user.

resolve_mr_discussionA

Mark a discussion thread as resolved (closed), indicating the topic has been addressed. Resolved discussions are typically collapsed in the GitFlic UI. Use list_mr_discussions to check which discussions are still open.

delete_mr_discussionA

Permanently delete a discussion thread and all its replies from a merge request. This action cannot be undone. Use resolve_mr_discussion to mark a discussion as resolved without deleting it.

list_webhooksA

List webhooks configured for a GitFlic project with pagination. Returns webhook IDs, callback URLs, and subscribed event types. Webhooks send HTTP POST requests to external URLs when project events occur (pushes, issues, MRs, etc.).

get_webhookA

Get full details of a specific webhook by its UUID, including callback URL, secret, and all subscribed events. Use list_webhooks to find webhook UUIDs first.

create_webhookA

Create a new webhook for a GitFlic project. Requires a callback URL, secret key for signature verification, and a list of events to subscribe to (e.g. ISSUE_CREATE, MERGE_REQUEST_CREATE, PUSH, PIPELINE_SUCCESS).

update_webhookA

Update an existing webhook's URL, secret, and event subscriptions. All fields are required — this replaces the entire webhook configuration. Use get_webhook first to get current values, then modify what you need.

delete_webhookA

Permanently delete a webhook from a project. The webhook will stop receiving events immediately. This action cannot be undone.

list_pipelinesA

List CI/CD pipelines of a GitFlic project with pagination. Returns pipeline IDs, statuses, branch/tag names, and creation dates. Requires .gitflic-ci.yaml and a registered runner in the project. Use list_pipeline_jobs to see individual jobs within a pipeline.

list_pipeline_jobsA

List individual jobs within a specific CI/CD pipeline. Returns job IDs, names, statuses, and stages. Use get_job for detailed info about a specific job, or list_job_artifacts to see build artifacts.

start_pipelineA

Start a new CI/CD pipeline execution. Defaults to the project's default branch. Specify refName for a different branch or tag (set isTag=true for tags). Can pass custom variables. Requires .gitflic-ci.yaml and a registered runner.

restart_pipelineA

Restart a previously completed or failed CI/CD pipeline. Re-runs all jobs from the beginning. The pipeline is identified by its local numeric ID from list_pipelines.

cancel_pipelineA

Cancel a currently running CI/CD pipeline and all its active jobs. The pipeline must be in a running state. Use this to stop a pipeline that is no longer needed.

get_jobA

Get detailed information about a specific CI/CD job by its local ID. Returns job name, status, stage, duration, and runner info. Use list_pipeline_jobs to find job IDs first.

list_job_artifactsA

List build artifacts produced by a CI/CD job. Returns artifact file names, UUIDs, and sizes. Artifacts are files generated during job execution (binaries, test reports, etc.).

restart_jobA

Restart a specific CI/CD job without re-running the entire pipeline. Useful for retrying a single failed job while keeping other completed jobs intact.

cancel_jobA

Cancel a specific running CI/CD job without affecting other jobs in the pipeline. Use this to stop a single job that is hanging or no longer needed.

list_cicd_variablesA

List CI/CD environment variables configured for a project. These variables are available to all pipelines during execution. Variable values may be masked for security.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/revenant20/gitflic-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server