@morphllm/morphmcp 0.8.34 → 0.8.36
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/dist/index.js +14 -15
- package/package.json +3 -2
package/dist/index.js
CHANGED
|
@@ -704,9 +704,9 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
|
704
704
|
toolCalls.push(`read ${readMatch[1]}`);
|
|
705
705
|
continue;
|
|
706
706
|
}
|
|
707
|
-
const
|
|
708
|
-
if (
|
|
709
|
-
toolCalls.push(`
|
|
707
|
+
const listDirMatch = line.match(/^list_directory\s+(.+)$/);
|
|
708
|
+
if (listDirMatch) {
|
|
709
|
+
toolCalls.push(`list_directory ${listDirMatch[1]}`);
|
|
710
710
|
continue;
|
|
711
711
|
}
|
|
712
712
|
}
|
|
@@ -720,8 +720,7 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
|
720
720
|
const result = await runWarpGrep({
|
|
721
721
|
query: parsed.data.search_string,
|
|
722
722
|
repoRoot,
|
|
723
|
-
|
|
724
|
-
apiKey: MORPH_API_KEY,
|
|
723
|
+
morphApiKey: MORPH_API_KEY,
|
|
725
724
|
provider,
|
|
726
725
|
});
|
|
727
726
|
// Format response with tool calls summary, file list, and XML content
|
|
@@ -751,9 +750,9 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
|
751
750
|
toolCallLines.push(`- Read file \`${readMatch[1]}\``);
|
|
752
751
|
continue;
|
|
753
752
|
}
|
|
754
|
-
const
|
|
755
|
-
if (
|
|
756
|
-
toolCallLines.push(`-
|
|
753
|
+
const listDirMatch = line.match(/^list_directory\s+(.+)$/);
|
|
754
|
+
if (listDirMatch) {
|
|
755
|
+
toolCallLines.push(`- Listed directory \`${listDirMatch[1]}\``);
|
|
757
756
|
continue;
|
|
758
757
|
}
|
|
759
758
|
}
|
|
@@ -812,7 +811,7 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
|
812
811
|
tool: 'warpgrep_codebase_search',
|
|
813
812
|
repo_path: parsed.data.repo_path,
|
|
814
813
|
query: parsed.data.search_string,
|
|
815
|
-
model: 'morph-warp-grep',
|
|
814
|
+
model: 'morph-warp-grep-v1',
|
|
816
815
|
termination_reason: 'completed_with_file_errors',
|
|
817
816
|
error_count: fileReadErrors.length,
|
|
818
817
|
is_timeout: false,
|
|
@@ -828,7 +827,7 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
|
828
827
|
query: parsed.data.search_string,
|
|
829
828
|
repo_path: parsed.data.repo_path,
|
|
830
829
|
repoRoot: path.resolve(parsed.data.repo_path),
|
|
831
|
-
model: 'morph-warp-grep'
|
|
830
|
+
model: 'morph-warp-grep-v1'
|
|
832
831
|
}
|
|
833
832
|
},
|
|
834
833
|
source: 'mcp-filesystem'
|
|
@@ -854,7 +853,7 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
|
854
853
|
tool: 'warpgrep_codebase_search',
|
|
855
854
|
repo_path: parsed.data.repo_path,
|
|
856
855
|
query: parsed.data.search_string,
|
|
857
|
-
model: 'morph-warp-grep',
|
|
856
|
+
model: 'morph-warp-grep-v1',
|
|
858
857
|
termination_reason: result.terminationReason,
|
|
859
858
|
error_count: result.errors.length,
|
|
860
859
|
is_timeout: isTimeout,
|
|
@@ -870,7 +869,7 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
|
870
869
|
query: parsed.data.search_string,
|
|
871
870
|
repo_path: parsed.data.repo_path,
|
|
872
871
|
repoRoot: path.resolve(parsed.data.repo_path),
|
|
873
|
-
model: 'morph-warp-grep'
|
|
872
|
+
model: 'morph-warp-grep-v1'
|
|
874
873
|
}
|
|
875
874
|
},
|
|
876
875
|
stack_trace: firstError?.stack || undefined,
|
|
@@ -900,7 +899,7 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
|
900
899
|
tool: 'warpgrep_codebase_search',
|
|
901
900
|
repo_path: parsed.data.repo_path,
|
|
902
901
|
query: parsed.data.search_string,
|
|
903
|
-
model: 'morph-warp-grep',
|
|
902
|
+
model: 'morph-warp-grep-v1',
|
|
904
903
|
is_timeout: isTimeout,
|
|
905
904
|
// Note: Exception thrown before we got result, so no messages/files available
|
|
906
905
|
exception_phase: 'runWarpGrep_call',
|
|
@@ -908,7 +907,7 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
|
908
907
|
query: parsed.data.search_string,
|
|
909
908
|
repo_path: parsed.data.repo_path,
|
|
910
909
|
repoRoot: path.resolve(parsed.data.repo_path),
|
|
911
|
-
model: 'morph-warp-grep'
|
|
910
|
+
model: 'morph-warp-grep-v1'
|
|
912
911
|
}
|
|
913
912
|
},
|
|
914
913
|
stack_trace: error instanceof Error ? error.stack : undefined,
|
|
@@ -916,7 +915,7 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
|
916
915
|
}).catch(() => { }); // Silently ignore reporting failures
|
|
917
916
|
return {
|
|
918
917
|
content: [{ type: "text", text: `Error running fast context search: ${errorMessage}` }],
|
|
919
|
-
isError:
|
|
918
|
+
isError: false, // Return gracefully - let the model see and handle the error
|
|
920
919
|
};
|
|
921
920
|
}
|
|
922
921
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@morphllm/morphmcp",
|
|
3
|
-
"version": "0.8.
|
|
3
|
+
"version": "0.8.36",
|
|
4
4
|
"description": "Fast & accurate MCP server with AI-powered file editing and intelligent code search. Prevents context pollution and saves time for a better user experience.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "Morph (https://morphllm.com)",
|
|
@@ -33,9 +33,10 @@
|
|
|
33
33
|
"test": "jest --config=jest.config.cjs --coverage"
|
|
34
34
|
},
|
|
35
35
|
"dependencies": {
|
|
36
|
+
"@google/generative-ai": "^0.21.0",
|
|
36
37
|
"@modelcontextprotocol/sdk": "^1.12.3",
|
|
37
|
-
"@vscode/ripgrep": "^1.15.14",
|
|
38
38
|
"@morphllm/morphsdk": "*",
|
|
39
|
+
"@vscode/ripgrep": "^1.15.14",
|
|
39
40
|
"axios": "^1.6.0",
|
|
40
41
|
"chalk": "^5.3.0",
|
|
41
42
|
"diff": "^5.1.0",
|