使用说明
Minecraft插件文档MCP服务器
MCP(模型上下文协议)服务器,帮助Minecraft Java插件开发人员检查最新文档和常见依赖项的版本。
特性
- 依赖关系文档查找 -获取流行的Minecraft插件依赖项的wiki、javadocs和GitHub链接
- 项目扫描 -扫描Gradle和Maven项目以提取所有依赖关系
- 版本检查 -从Maven Central、JitPack、Paper repo等查看最新版本
- 完整项目分析 -插件工作区综合分析及建议
- API 参考 -复杂插件(EdTools、SkinsRestorer等)的详细子API文档
支持的依赖关系
| 依赖关系 | 存储库 | 描述 |
|---|---|---|
| SnLib | 本地(.m2) | Sn多功能库:yml、菜单、项目、db、papi、lang、全息图、econ等(独立硬依赖) |
| 纸张API | 纸张 | 纸张Minecraft服务器API |
| Spiget API | Spiget | Spiget Minecraft服务器API |
| Bukkit | Spigot | Bukkit API |
| LuckPerms | Maven Central | 权限插件API |
| Vault | JitPack | 经济/权限/聊天API(SnLib通过 sn.economy()) |
| HikariCP | Maven Central | JDBC连接池(SnLib通过 sn.db()) |
| 项目-NBT-API | CodeMC | NBT操作,无NMS(SnLib通过 sn.items()) |
| PacketEvents | Maven Central | 数据包操作库 |
| DecentHolograms | JitPack | Hologram插件API(SnLib通过 sn.holograms()) |
| CoreProtect | Maven Central | 块日志记录API |
| 占位符API | 自定义 | 占位符系统(SnLib通过以下方式覆盖开发钩子 sn.papi()) |
| WorldEdit | 自定义 | 世界编辑API |
| WorldGuard | 自定义 | 区域保护API |
| 皮肤恢复程序 | 代码MC | 皮肤管理API |
| EdTools API | 手册(JAR) | 自定义附魔、区域、货币等 |
快速入门-在项目中使用
选项1:全局安装(推荐)
全局安装MCP一次,然后在任何项目中使用它:
# Clone and setup (one time only)
git clone https://github.com/ValentinTarnovsky/MCP-MCP.git
cd MCP-MCP
npm install
npm run build
npm link
然后在 任何项目,将此添加到您的MCP配置中:
Claude 代码 (.claude/mcp.json):
{
"mcpServers": {
"minecraft-plugin-docs": {
"command": "npx",
"args": ["minecraft-plugin-docs-mcp"]
}
}
}
克劳德桌面版 (%APPDATA%\Claude\claude_desktop_config.json):
{
"mcpServers": {
"minecraft-plugin-docs": {
"command": "npx",
"args": ["minecraft-plugin-docs-mcp"]
}
}
}
选项2:直接路径
如果你不想使用npm链接:
{
"mcpServers": {
"minecraft-plugin-docs": {
"command": "node",
"args": ["C:\\path\\to\\MCP-MCP\\dist\\index.js"]
}
}
}
使用示例
配置后,您可以向Claude询问以下问题:
获取依赖关系文档
"Get documentation for paper-api"
"Look up luckperms docs"
"What's the Maven coordinate for hikaricp?"
"Show me EdTools API reference"
"How do I use SkinsRestorer API?"
扫描您的项目
"Scan dependencies in my project"
"What dependencies does this plugin use?"
检查更新
"Check for updates in this project"
"What's the latest version of paper-api?"
"Are my dependencies up to date?"
全面分析
"Analyze my plugin workspace"
"Full dependency report"
工具参考
get_dependency_docs
获取特定依赖关系的文档。
| 参数 | 必填 | 说明 |
|---|---|---|
dependency |
是 | 依赖项的名称(例如,“paper api”、“edtools”) |
fetch_version |
否 | 是否获取最新版本(默认值:true) |
退货: Wiki URL、Javadocs、GitHub、Maven坐标、快速启动片段和API参考(如果可用)。
scan_project_dependencies
扫描项目目录中的所有依赖项。
| 参数 | 必填 | 说明 |
|---|---|---|
project_path |
是 | 项目目录的路径 |
check_latest_versions
检查依赖项的最新版本。
| 参数 | 必填 | 说明 |
|---|---|---|
project_path |
否 | 扫描当前版本的路径 |
dependencies |
否 | 要检查的特定依赖关系列表 |
check_all |
否 | 检查所有已知的依赖关系 |
analyze_plugin_project
全面的项目分析和建议。
| 参数 | 必填 | 说明 |
|---|---|---|
project_path |
否 | 要分析的路径 |
check_versions |
否 | 是否检查更新(默认值:true) |
添加自定义依赖项
编辑 src/registry/dependencies.ts:
标准Maven依赖
'my-plugin-api': {
name: 'My Plugin API',
description: 'Description here',
documentation: {
wiki: 'https://...',
javadocs: 'https://...',
github: 'https://github.com/...',
},
maven: {
groupId: 'com.example',
artifactId: 'my-plugin-api',
repository: 'maven-central', // or 'jitpack', 'paper', 'codemc', 'custom'
repositoryUrl: 'https://...', // required for 'custom' repos
},
aliases: ['myplugin', 'my-plugin'],
},
手动JAR依赖(无Maven仓库)
'local-plugin-api': {
name: 'Local Plugin API',
description: 'A plugin that distributes JAR manually',
documentation: {
wiki: 'https://...',
github: 'https://...',
downloadUrl: 'https://download-link...', // Where to get the JAR
},
maven: {
groupId: 'com.example',
artifactId: 'LocalPlugin-API',
repository: 'manual', // Special type for local JARs
},
aliases: ['localplugin'],
// Optional: Document sub-APIs
apiReference: {
mainClass: 'LocalPluginAPI',
importPackage: 'com.example.api',
subApis: [
{
name: 'FeatureAPI',
getter: 'getFeatureAPI()',
description: 'Manage features',
methods: ['doSomething()', 'getSomething() -> String'],
},
],
},
},
添加后,重建: npm run build
发展
项目结构
MCP-MCP/
├── src/
│ ├── index.ts # Main server entry point
│ ├── registry/
│ │ └── dependencies.ts # Dependency information registry
│ ├── parsers/
│ │ ├── gradle.ts # Gradle build file parser
│ │ └── maven.ts # Maven POM parser
│ ├── tools/
│ │ ├── getDependencyDocs.ts
│ │ ├── scanProjectDependencies.ts
│ │ ├── checkLatestVersions.ts
│ │ └── analyzePluginProject.ts
│ └── utils/
│ ├── cache.ts # Caching utilities
│ └── versionFetcher.ts # Version fetching from repos
├── dist/ # Compiled output
├── package.json
├── tsconfig.json
└── README.md
命令
npm install # Install dependencies
npm run build # Compile TypeScript
npm run dev # Watch mode for development
npm run clean # Remove dist/
npm link # Make available globally via npx
测试
# Run the server manually
node dist/index.js
# Test with MCP Inspector
npx @modelcontextprotocol/inspector node dist/index.js
故障排除
服务器未启动
- 确保已安装Node.js 18+:
node --version - 检查构建是否完成:
npm run build - 验证
dist/index.js存在
未找到依赖项
- 检查依赖项名称的拼写
- 尝试使用别名(例如,“paper”而不是“paper-api”)
- 使用Maven坐标(例如,“io.papemc.pape:pape-api”)
未找到npx命令
- 跑
npm link在MCP-MCP目录中 - 证实
npm list -g minecraft-plugin-docs-mcp
许可证
麻省理工学院
贡献
- 分叉存储库
- 创建要素分支
- 添加您的更改
- 提交拉取请求