@adhisang/minecraft-modding-mcp 1.2.0 → 1.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -5,6 +5,15 @@ All notable changes to this project are documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6
6
  and this project aims to follow [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [1.2.1] - 2026-03-05
9
+
10
+ ### Fixed
11
+ - MCP startup regression: removed eager `SourceService` pre-initialization during server startup so `tools/list` handshakes are not blocked by SQLite initialization on slower environments.
12
+ - Decompiler: skip Java/Vineflower availability checks when decompiled source is already cached, avoiding unnecessary startup errors on systems without Java.
13
+
14
+ ### Documentation
15
+ - Clarified startup behavior in README (`SourceService` remains lazy and is not pre-initialized before tool discovery).
16
+
8
17
  ## [1.2.0] - 2026-03-05
9
18
 
10
19
  ### Added
@@ -48,7 +57,6 @@ and this project aims to follow [Semantic Versioning](https://semver.org/spec/v2
48
57
  ### Changed
49
58
  - Lazy `SourceService` initialization — deferred until first tool/resource access, reducing cold-start latency during MCP handshake.
50
59
  - Eagerly init `SourceService` during MCP handshake idle time for faster first-request response.
51
- - Codecov workflow temporarily disabled.
52
60
 
53
61
  ### Performance
54
62
  - Avoid duplicate UTF-8 decode during truncation.
package/README.md CHANGED
@@ -58,6 +58,7 @@ codex mcp list
58
58
  The stdio transport auto-detects both newline-delimited and `Content-Length` framing, so Codex and newline-based MCP clients can use the same server command.
59
59
 
60
60
  The server now lazily initializes heavyweight source/index services on first MCP request, reducing initial process startup latency for clients that only perform handshake/tool discovery.
61
+ To preserve handshake reliability across clients, startup does not eagerly pre-initialize `SourceService` before tool discovery.
61
62
 
62
63
  #### Gemini CLI
63
64
 
@@ -131,8 +131,6 @@ export async function decompileBinaryJar(binaryJarPath, cacheDir, options) {
131
131
  const outputDir = decompileOutputDir(cacheDir, normalizedBinaryJarPath, signature).replace(/[/\\]$/, "");
132
132
  try {
133
133
  mkdirSync(outputDir, { recursive: true });
134
- await assertVineflowerAvailable(options.vineflowerJarPath);
135
- await assertJavaAvailable();
136
134
  if (statSync(outputDir, { throwIfNoEntry: false })) {
137
135
  const existingJavaFiles = await collectJavaFiles(outputDir);
138
136
  if (existingJavaFiles.length > 0) {
@@ -154,6 +152,8 @@ export async function decompileBinaryJar(binaryJarPath, cacheDir, options) {
154
152
  };
155
153
  }
156
154
  }
155
+ await assertVineflowerAvailable(options.vineflowerJarPath);
156
+ await assertJavaAvailable();
157
157
  const profilesAttempted = [];
158
158
  let lastDecompileError;
159
159
  for (const profile of VINEFLOWER_FLAG_PROFILES) {
package/dist/index.js CHANGED
@@ -1182,7 +1182,6 @@ export async function startServer() {
1182
1182
  // In stdio mode, explicitly resume stdin so JSON-RPC lines are consumed.
1183
1183
  process.stdin.resume();
1184
1184
  serverStarted = true;
1185
- setImmediate(getSourceService); // Eagerly init SourceService during MCP handshake
1186
1185
  }
1187
1186
  export { server, sourceService, config, SERVER_VERSION };
1188
1187
  //# sourceMappingURL=index.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adhisang/minecraft-modding-mcp",
3
- "version": "1.2.0",
3
+ "version": "1.2.1",
4
4
  "description": "MCP server with utilities for Minecraft modding workflows",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",