Skip to content

Commit 8a6e49d

Browse files
committed
refactor(mcp): remove web-mcp package and update dependencies
1 parent e87b0a2 commit 8a6e49d

File tree

21 files changed

+243
-1184
lines changed

21 files changed

+243
-1184
lines changed

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
"dev": "nx run-many --target=build:watch --exclude=android-playground,chrome-extension,@midscene/report,doc --verbose --parallel=6",
77
"build": "nx run-many --target=build --exclude=doc --verbose",
88
"build:skip-cache": "nx run-many --target=build --exclude=doc --verbose --skip-nx-cache",
9-
"test": "nx run-many --target=test --projects=@midscene/core,@midscene/shared,@midscene/visualizer,@midscene/web,@midscene/cli,@midscene/android,@midscene/ios,@midscene/mcp,@midscene/android-mcp,@midscene/ios-mcp,@midscene/web-mcp,@midscene/playground --verbose",
9+
"test": "nx run-many --target=test --projects=@midscene/core,@midscene/shared,@midscene/visualizer,@midscene/web,@midscene/cli,@midscene/android,@midscene/ios,@midscene/mcp,@midscene/android-mcp,@midscene/ios-mcp,@midscene/web-bridge-mcp,@midscene/playground --verbose",
1010
"test:ai": "nx run-many --target=test:ai --projects=@midscene/core,@midscene/web,@midscene/cli --verbose",
1111
"e2e": "nx run @midscene/web:e2e --verbose --exclude-task-dependencies",
1212
"e2e:cache": "nx run @midscene/web:e2e:cache --verbose --exclude-task-dependencies",

packages/android-mcp/src/index.ts

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,20 @@
11
#!/usr/bin/env node
22
import { parseArgs } from 'node:util';
3-
import {
4-
type CLIArgs,
5-
CLI_ARGS_CONFIG,
6-
launchMCPServer,
7-
} from '@midscene/shared/mcp';
3+
import { type CLIArgs, CLI_ARGS_CONFIG } from '@midscene/shared/mcp';
84
import { AndroidMCPServer } from './server.js';
95

106
const { values } = parseArgs({ options: CLI_ARGS_CONFIG });
7+
const args = values as CLIArgs;
118

12-
launchMCPServer(new AndroidMCPServer(), values as CLIArgs).catch(console.error);
9+
const server = new AndroidMCPServer();
10+
11+
if (args.mode === 'http') {
12+
server
13+
.launchHttp({
14+
port: Number.parseInt(args.port || '3000', 10),
15+
host: args.host || 'localhost',
16+
})
17+
.catch(console.error);
18+
} else {
19+
server.launch().catch(console.error);
20+
}

packages/ios-mcp/src/index.ts

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,20 @@
11
#!/usr/bin/env node
22
import { parseArgs } from 'node:util';
3-
import {
4-
type CLIArgs,
5-
CLI_ARGS_CONFIG,
6-
launchMCPServer,
7-
} from '@midscene/shared/mcp';
3+
import { type CLIArgs, CLI_ARGS_CONFIG } from '@midscene/shared/mcp';
84
import { IOSMCPServer } from './server.js';
95

106
const { values } = parseArgs({ options: CLI_ARGS_CONFIG });
7+
const args = values as CLIArgs;
118

12-
launchMCPServer(new IOSMCPServer(), values as CLIArgs).catch(console.error);
9+
const server = new IOSMCPServer();
10+
11+
if (args.mode === 'http') {
12+
server
13+
.launchHttp({
14+
port: Number.parseInt(args.port || '3000', 10),
15+
host: args.host || 'localhost',
16+
})
17+
.catch(console.error);
18+
} else {
19+
server.launch().catch(console.error);
20+
}

packages/mcp/package.json

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "@midscene/mcp",
33
"version": "1.0.0",
4-
"description": "Midscene MCP Server for Web automation (alias for @midscene/web-mcp)",
4+
"description": "Deprecated - Use @midscene/web-bridge-mcp, @midscene/android-mcp, or @midscene/ios-mcp",
55
"bin": "dist/index.js",
66
"files": ["dist"],
77
"main": "./dist/server.js",
@@ -23,9 +23,7 @@
2323
"mcp-playground": "npx @modelcontextprotocol/inspector node ./dist/index.js",
2424
"inspect": "node scripts/inspect.mjs"
2525
},
26-
"dependencies": {
27-
"@midscene/web-mcp": "workspace:*"
28-
},
26+
"dependencies": {},
2927
"devDependencies": {
3028
"@midscene/android": "workspace:*",
3129
"@midscene/core": "workspace:*",

packages/mcp/rslib.config.ts

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,6 @@ export default defineConfig({
1111
server: './src/server.ts',
1212
},
1313
},
14-
output: {
15-
externals: ['@midscene/web-mcp'],
16-
},
1714
lib: [
1815
{
1916
format: 'cjs',

packages/mcp/src/index.ts

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,20 @@
11
#!/usr/bin/env node
2+
import { parseArgs } from 'node:util';
3+
import { type CLIArgs, CLI_ARGS_CONFIG } from '@midscene/shared/mcp';
4+
import { DeprecatedMCPServer } from './server.js';
25

3-
// This package is an alias for @midscene/web-mcp
4-
// Delegate to the web-mcp package which contains the actual implementation
5-
// with full HTTP transport support and CLI argument parsing
6+
const { values } = parseArgs({ options: CLI_ARGS_CONFIG });
7+
const args = values as CLIArgs;
68

7-
require('@midscene/web-mcp');
9+
const server = new DeprecatedMCPServer();
10+
11+
if (args.mode === 'http') {
12+
server
13+
.launchHttp({
14+
port: Number.parseInt(args.port || '3000', 10),
15+
host: args.host || 'localhost',
16+
})
17+
.catch(console.error);
18+
} else {
19+
server.launch().catch(console.error);
20+
}

packages/mcp/src/server.ts

Lines changed: 26 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,26 @@
1-
// Re-export WebMCPServer from @midscene/web-mcp
2-
export { WebMCPServer } from '@midscene/web-mcp/server';
1+
import { BaseMCPServer } from '@midscene/shared/mcp';
2+
import { DeprecationMidsceneTools } from './deprecation-tools.js';
3+
4+
declare const __VERSION__: string;
5+
6+
/**
7+
* Deprecated MCP Server class
8+
* This package is deprecated. Please use platform-specific packages instead:
9+
* - @midscene/web-bridge-mcp for web automation
10+
* - @midscene/android-mcp for Android automation
11+
* - @midscene/ios-mcp for iOS automation
12+
*/
13+
export class DeprecatedMCPServer extends BaseMCPServer {
14+
constructor() {
15+
super({
16+
name: '@midscene/mcp',
17+
version: __VERSION__,
18+
description:
19+
'Deprecated - Use @midscene/web-bridge-mcp, @midscene/android-mcp, or @midscene/ios-mcp',
20+
});
21+
}
22+
23+
protected createToolsManager(): DeprecationMidsceneTools {
24+
return new DeprecationMidsceneTools();
25+
}
26+
}

packages/web-mcp/README.md

Lines changed: 0 additions & 3 deletions
This file was deleted.

packages/web-mcp/package.json

Lines changed: 0 additions & 49 deletions
This file was deleted.

packages/web-mcp/rslib.config.ts

Lines changed: 0 additions & 45 deletions
This file was deleted.

0 commit comments

Comments
 (0)