Server Grf
БесплатноНе проверенMCP server for managing Git reference repositories, enabling AI assistants to add, load, and sync reference code from any Git repository.
Описание
MCP server for managing Git reference repositories, enabling AI assistants to add, load, and sync reference code from any Git repository.
README
npm version License: MIT Node.js Version
MCP server for managing Git reference repositories - add, load, and sync reference code from any Git repository.
Overview
mcp-server-grf (Git Reference) is a Model Context Protocol (MCP) server that enables AI assistants to manage Git reference repositories. It allows you to:
- Add any Git repository as a reference code source
- Load reference code into your current project
- Sync loaded reference code to the latest version
- Manage globally cached repositories
Primary Use Case
When an AI assistant needs to reference code implementations from open-source projects, this tool enables quick loading of reference code into the current working directory for the AI to read and learn from.
Features
- Smart URL Parsing - Supports both HTTPS and SSH Git URL formats
- Flexible Repository Matching - Match by full name,
owner/repo, or just repo name - Shallow Clone Optimization - Uses shallow clones by default to save disk space and download time
- Automatic .gitignore Management - Automatically adds loaded reference code to
.gitignore - Subdirectory Loading - Load only specific subdirectories from a repository
- Multi-Workspace Support - Independently manage loading state across different projects
- Sync Status Tracking - Track commit ID changes and support incremental sync
Installation
Using npx (Recommended)
No installation required - run directly with npx:
npx mcp-server-grf
Global Installation
npm install -g mcp-server-grf
Then run:
mcp-server-grf
Configuration
Claude Desktop
Add the following to your Claude Desktop configuration file:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"grf": {
"command": "npx",
"args": ["-y", "mcp-server-grf"]
}
}
}
Other MCP Clients
For other MCP-compatible clients, configure the server command as:
npx -y mcp-server-grf
Tools Reference
Repository Management
grf_add
Add a reference repository to the global cache.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
url |
string | Yes | - | Git repository URL (HTTPS or SSH format) |
name |
string | No | - | Custom repository name |
branch |
string | No | - | Specify branch |
shallow |
boolean | No | true |
Use shallow clone |
depth |
number | No | 1 |
Shallow clone depth |
grf_list
List all cached repositories.
No parameters required.
grf_get
Get detailed information about a repository.
| Parameter | Type | Required | Description |
|---|---|---|---|
name |
string | Yes | Repository name (supports full name or short name) |
grf_update
Update cached repositories.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
name |
string | No | - | Repository name (updates all if not specified) |
checkOnly |
boolean | No | false |
Only check for updates, don't pull |
grf_clean
Clean cached repositories.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
name |
string | No | - | Repository name to delete |
all |
boolean | No | false |
Delete all cached repositories |
grf_switch_branch
Switch repository branch.
| Parameter | Type | Required | Description |
|---|---|---|---|
name |
string | Yes | Repository name |
branch |
string | Yes | Target branch |
Loading/Unloading
grf_load
Copy reference repository to the current directory.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
name |
string | Yes | - | Repository name, short name, or Git URL |
targetPath |
string | No | .gitreference/<repo-path> |
Target path |
subdir |
string | No | - | Only copy specified subdirectory |
updateGitignore |
boolean | No | true |
Update .gitignore |
branch |
string | No | - | Specify branch (only for Git URL) |
workingDirectory |
string | No | Current directory | Working directory |
grf_unload
Remove reference code from the project.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
name |
string | No | - | Repository name |
all |
boolean | No | false |
Remove all reference code |
workingDirectory |
string | No | Current directory | Working directory |
grf_loaded
List loaded reference code.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
workingDirectory |
string | No | Current directory | Working directory (returns all if not specified) |
all |
boolean | No | false |
Return loading entries for all working directories |
Synchronization
grf_sync
Sync loaded reference code to the latest version.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
entryId |
string | No | - | Entry ID (specify entry to sync) |
all |
boolean | No | false |
Sync all entries |
force |
boolean | No | false |
Force sync (ignore version check) |
workingDirectory |
string | No | Current directory | Working directory |
grf_sync_status
Get sync status of loaded reference code.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
workingDirectory |
string | No | Current directory | Working directory |
Configuration
grf_config
Manage global configuration.
| Parameter | Type | Required | Description |
|---|---|---|---|
action |
string | Yes | Operation type: get, set, or list |
key |
string | No | Configuration key (required for get/set) |
value |
string/number/boolean | No | Configuration value (required for set) |
Usage Examples
Basic Workflow
Add a reference repository:
grf_add url="https://github.com/expressjs/express"Load reference code into your project:
grf_load name="express"Check loaded references:
grf_loadedSync to latest version:
grf_sync all=trueRemove reference code when done:
grf_unload name="express"
Load Specific Subdirectory
Load only the lib directory from a repository:
grf_load name="express" subdir="lib"
Quick Load from URL
Load directly from a Git URL without pre-adding:
grf_load name="https://github.com/lodash/lodash" subdir="src"
Check for Updates
Check if updates are available without pulling:
grf_update checkOnly=true
Configuration Options
| Key | Type | Default | Description |
|---|---|---|---|
defaultBranch |
string | "main" |
Default branch name |
shallowClone |
boolean | true |
Use shallow clone |
shallowDepth |
number | 1 |
Shallow clone depth |
View/Modify Configuration
# List all configuration
grf_config action="list"
# Get specific configuration
grf_config action="get" key="shallowClone"
# Set configuration
grf_config action="set" key="shallowDepth" value=5
Data Storage
Global Storage
~/.gitreference/
├── config.json # Global configuration
├── repos-index.json # Repository index
├── loading-state.json # Loading state records
└── repos/ # Cached repositories
Project Local Storage
<project>/
├── .gitreference/ # Default loading directory
└── .gitignore # Automatically adds .gitreference/ entry
Requirements
- Node.js >= 18.0.0
- Git installed and available in PATH
License
MIT
Установка Server Grf
У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.
▸ github.com/haiyewei/mcp-server-grfFAQ
Server Grf MCP бесплатный?
Да, Server Grf MCP бесплатный — установка в пару кликов через Unyly без оплаты.
Нужен ли API-ключ для Server Grf?
Нет, Server Grf работает без API-ключей и переменных окружения.
Server Grf — hosted или self-hosted?
Self-hosted: сервер запускается локально на твоей машине командой из раздела установки.
Как установить Server Grf в Claude Desktop, Claude Code или Cursor?
Открой Server Grf на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.
Похожие MCP
GitHub
PRs, issues, code search, CI status
автор: GitHubFilesystem
Secure file operations with configurable access controls.
Memory
Knowledge graph-based persistent memory system.
Template MCP Server
A CLI tool to create a new Model Context Protocol server project with TypeScript support, dual transport options, and an extensible structure
автор: mcpdotdirectCompare Server Grf with
Не уверен что выбрать?
Найди свой стек за 60 секунд
Автор?
Embed-бейдж для README
Похожее
Все в категории development
