Token导航 LogoToken导航TokenDH.com
Guitar Pro MCP logo
音视频未说明官方级别未说明来源级核验

Guitar Pro MCP

MCP Server

一个用于编程生成Guitar Pro 6文件的模型上下文协议(MCP)服务器,提供对音轨、小节、节拍和音符的完全控制。

工具数

0

提示词数

0

GitHub Stars

1

资源数

0
TypeScript语音音频视频

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

quinnjr

提供方

quinnjr

最后核验

2026/5/17 20:21

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

Guitar Pro MCP服务器

![CI](https://github.com/quinnjr/guitar-pro-mcp/actions/workflows/ci.yml) ![codecov](https://codecov.io/gh/quinnjr/guitar-pro-mcp) ](https://www.npmjs.com/package/guitar-pro-mcp) ![License: ISC](https://opensource.org/licenses/ISC) ](https://nodejs.org) ](https://pnpm.io/) ![Code Style: Prettier](https://github.com/prettier/prettier)

用于以编程方式生成Guitar Pro 6文件的模型上下文协议(MCP)服务器。此服务器提供创建制表文件的工具,可以完全控制曲目、度量、节拍和音符。

特性

  • 🎸 生成Guitar Pro 6(.gp6)文件
  • 🎵 支持多种曲目和乐器
  • 📝 完全控制度量、节拍和音符
  • 🎼 时间特征、节奏变化和关键特征
  • 🎹 注意效果(手掌静音、颤音、和声等)
  • 🔧 为任何弦乐器定制调音
  • 📊 97%以上的测试覆盖率,包括全面的单元测试
  • 🚀 用TypeScript构建,用esbuild编译
  • 🔒 Git与Husky挂钩以实现代码质量强制
  • 🧪 带有GitHub操作的CI/CD管道
  • 📐 ESLint+预处理以实现一致的代码风格
  • 🌳 分支保护,防止直接承诺主/开发

安装

作为一个包裹

# Using pnpm
pnpm add guitar-pro-mcp

# Using npm
npm install guitar-pro-mcp

# Using yarn
yarn add guitar-pro-mcp

为了发展

# Clone the repository
git clone https://github.com/quinnjr/guitar-pro-mcp.git
cd guitar-pro-mcp

# Install dependencies
pnpm install

# Build the project
pnpm build

# Run tests
pnpm test

# Check coverage
pnpm test:coverage

# Lint code
pnpm lint

# Fix lint issues
pnpm lint:fix

用法

这是一个可以与MCP客户端集成的MCP服务器。服务器提供两个主要工具:

1.create_guitar_pro_file

创建一个Guitar Pro 6文件,完全控制构图的各个方面。

参数:

  • filename (string,必填):输出文件的名称(例如,“my song.gp6”)
  • outputDirectory (字符串,可选):自定义输出目录。默认为“音乐”文件夹
  • title (字符串,必填):歌曲标题
  • artist (字符串,可选):艺术家名称
  • tempo (数字,可选):BPM中的速度(默认值:120)
  • tracks (array,必填):轨迹对象数组

轨道结构:

{
  name: string;           // Track name
  strings?: number;       // Number of strings (default: 6)
  tuning?: number[];      // MIDI note values for tuning
  measures: [{            // Array of measures
    timeSignature?: {     // Optional time signature
      numerator: number;
      denominator: number;
    };
    beats: [{             // Array of beats
      duration: number;   // 1=whole, 2=half, 4=quarter, 8=eighth, etc.
      dotted?: boolean;
      rest?: boolean;
      notes: [{           // Array of notes
        string: number;   // String number (1-based)
        fret: number;     // Fret number
        velocity?: number; // 0-127 (default: 95)
      }]
    }]
  }]
}

例子:

{
  filename: "my-song.gp6",
  title: "My Guitar Song",
  artist: "Me",
  tempo: 120,
  tracks: [
    {
      name: "Lead Guitar",
      measures: [
        {
          timeSignature: { numerator: 4, denominator: 4 },
          beats: [
            {
              duration: 4,
              notes: [
                { string: 1, fret: 0 },
                { string: 2, fret: 2 },
                { string: 3, fret: 2 }
              ]
            }
          ]
        }
      ]
    }
  ]
}

2.创建_简单_吉他_文件

使用简单的制表格式创建一个简单的Guitar Pro 6文件。

参数:

  • filename (string,必填):输出文件的名称
  • outputDirectory (字符串,可选):自定义输出目录。默认为“音乐”文件夹
  • title (字符串,必填):歌曲标题
  • artist (字符串,可选):艺术家名称
  • tempo (数字,可选):BPM中的速度(默认值:120)
  • tablature (字符串数组,必填):“fret-fret-fret”格式的制表符字符串

例子:

{
  filename: "simple-riff.gp6",
  title: "Simple Riff",
  tempo: 140,
  tablature: [
    "0-2-2",  // First measure: open, 2nd fret, 2nd fret
    "3-3-3",  // Second measure: three notes on 3rd fret
    "5-5-7"   // Third measure
  ]
}

输出目录

默认情况下,文件保存到:

  • 视窗: C:\Users\\Music
  • 苹果电脑: /Users//Music
  • Linux: /home//Music

您可以通过提供自定义选项来覆盖此设置 outputDirectory 参数。

发展

项目结构

src/
├── models/          # Data models (Song, Track, Measure, Beat, Note)
├── writers/         # GP6 file writer
├── utils/           # Binary writer utilities
├── handlers/        # MCP tool handlers
└── index.ts         # MCP server entry point

tests/
├── models/          # Model tests
├── writers/         # Writer tests
├── utils/           # Utility tests
└── handlers/        # Handler tests

.github/
└── workflows/       # CI/CD pipelines
    ├── ci.yml       # Continuous integration
    ├── release.yml  # Release automation
    └── codeql.yml   # Security scanning

运行测试

# Run all tests
pnpm test

# Run tests in watch mode
pnpm test:watch

# Generate coverage report
pnpm test:coverage

建筑

该项目使用esbuild进行快速编译:

# Build once
pnpm build

# Build and watch for changes
node build.mjs --watch

代码质量

该项目通过以下方式提高代码质量:

ESLint+Pretier

# Run linter
pnpm lint

# Auto-fix linting issues
pnpm lint:fix

Git挂钩(哈士奇)

该项目使用赫斯基来执行质量标准:

  • 预承诺:防止直接承诺 maindevelop 分支
  • 提交消息:强制执行常规承诺格式
  • 预推:在推送之前运行linting、测试和构建

分支命名约定:

  • feature/* -新功能
  • bugfix/* -Bug修复
  • hotfix/* -生产关键修复
  • refactor/* -代码重构
  • docs/* -文档更新

提交消息格式:

[optional scope]: 

[optional body]

[optional footer]

类型: feat, fix, docs, style, refactor, perf, test, build, ci, chore, revert

示例:

feat: add support for custom time signatures
fix(parser): handle empty measures correctly
docs: update installation instructions

CI/CD管道

持续集成(ci.yml)

  • 运行方式:Push to main/develop,拉取请求
  • 测试对象:Node.js 18.x、20.x、22.x
  • 平台:Ubuntu、Windows、macOS
  • 步骤:

1. 棉绒检查 1. 运行覆盖率测试 1. 将覆盖范围上传到Codecov 1. 构建验证

发布工作流(Release.yml)

  • 触发器:Git标签(v*.*.*)
  • 步骤:

1. 运行完整的测试套件 1. 生成项目 1. 创建GitHub版本 1. 发布到NPM

安全扫描(codeql.yml)

  • 每周运行,推送/PR
  • 漏洞的CodeQL分析

贡献

  1. 分叉存储库
  2. 创建要素分支: git checkout -b feature/amazing-feature
  3. 进行更改
  4. 使用常规提交进行提交: git commit -m "feat: add amazing feature"
  5. 推到您的分支: git push origin feature/amazing-feature
  6. 打开拉取请求

注: 直接承诺 maindevelop 被git钩子挡住了。

技术细节

吉他Pro 6格式

此实现侧重于Guitar Pro 6(.gp6)兼容性。格式包括:

  • 带标头标识的二进制文件结构
  • 歌曲元数据(标题、艺术家、专辑等)
  • 曲目信息(名称、调音、MIDI设置)
  • 测量数据(时间特征、节奏、标记)
  • 节拍信息(持续时间、元组、效果)
  • 注释数据(弦、音柱、速度、发音)

注释持续时间

  • 1 -整篇笔记
  • 2 -半音符
  • 4 -季度报告
  • 8 -第八条注释
  • 16 -第十六条注释
  • 32 -第三十二条注释

标准吉他调音(MIDI值)

  • 字符串1(高E):64
  • 字符串2(B):59
  • 字符串3(G):55
  • 字符串4(D):50
  • 字符串5(A):45
  • 弦6(低E):40

测试

该项目包括覆盖率超过97%的综合单元测试:

  • 147测试 跨越9个测试套件
  • 所有测试型号(音符、节拍、测量、曲目、歌曲)
  • 二进制编写器经过全面测试
  • GP6作家测试了各种歌曲结构
  • 处理程序集成测试
  • 文件I/O和错误处理测试

需求

  • Node.js 18+(已在18.x、20.x、22.x上测试)
  • 晚上10点19分+

徽章说明

  • 持续集成:持续集成状态-显示是否所有测试都通过
  • codecov:代码覆盖率-我们保持97%以上的覆盖率
  • npm版本:NPM上最新发布的版本
  • 许可证:ISC许可证
  • Node.js版本:最低要求的Node.js版本
  • pnpm:用于此项目的包管理器
  • 代码的风格:用Prettier格式化

支持

  • 问题:
  • 讨论:

许可证

国际学生委员会

吉他Pro兼容性

此服务器生成Guitar Pro 6文件。这些文件与以下内容兼容:

  • Guitar Pro 6及更高版本
  • Guitar Pro的Windows和macOS版本

注:Guitar Pro是Arobas Music的专有应用程序。此服务器生成Guitar Pro格式的文件,但不包括Guitar Pro本身。

目录标签

目录标签

TypeScript语音音频视频音乐制作本地部署吉他谱生成MCP服务器音乐编程GuitarPro

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明none部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP