appium-mcp 1.82.0 → 1.82.2

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.
Files changed (44) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/server.d.ts.map +1 -1
  3. package/dist/server.js +4 -1
  4. package/dist/server.js.map +1 -1
  5. package/dist/tests/tools/documentation/appium-skills.test.js +2 -6
  6. package/dist/tests/tools/documentation/appium-skills.test.js.map +1 -1
  7. package/dist/tests/tools/documentation/plugin.test.d.ts +2 -0
  8. package/dist/tests/tools/documentation/plugin.test.d.ts.map +1 -0
  9. package/dist/tests/tools/documentation/plugin.test.js +34 -0
  10. package/dist/tests/tools/documentation/plugin.test.js.map +1 -0
  11. package/dist/tests/tools/llm-wording.test.js +1 -0
  12. package/dist/tests/tools/llm-wording.test.js.map +1 -1
  13. package/dist/tools/documentation/answer-appium.d.ts +7 -1
  14. package/dist/tools/documentation/answer-appium.d.ts.map +1 -1
  15. package/dist/tools/documentation/answer-appium.js +26 -31
  16. package/dist/tools/documentation/answer-appium.js.map +1 -1
  17. package/dist/tools/documentation/appium-skills.d.ts +4 -1
  18. package/dist/tools/documentation/appium-skills.d.ts.map +1 -1
  19. package/dist/tools/documentation/appium-skills.js +70 -72
  20. package/dist/tools/documentation/appium-skills.js.map +1 -1
  21. package/dist/tools/documentation/plugin.d.ts +14 -0
  22. package/dist/tools/documentation/plugin.d.ts.map +1 -0
  23. package/dist/tools/documentation/plugin.js +19 -0
  24. package/dist/tools/documentation/plugin.js.map +1 -0
  25. package/dist/tools/index.d.ts.map +1 -1
  26. package/dist/tools/index.js +0 -5
  27. package/dist/tools/index.js.map +1 -1
  28. package/dist/tools/session/create-session.d.ts +10 -2
  29. package/dist/tools/session/create-session.d.ts.map +1 -1
  30. package/dist/tools/session/create-session.js +9 -1
  31. package/dist/tools/session/create-session.js.map +1 -1
  32. package/dist/tools/session/session.d.ts.map +1 -1
  33. package/dist/tools/session/session.js +2 -2
  34. package/dist/tools/session/session.js.map +1 -1
  35. package/package.json +1 -1
  36. package/server.json +2 -2
  37. package/src/resources/submodules.zip +0 -0
  38. package/src/server.ts +4 -1
  39. package/src/tools/documentation/answer-appium.ts +33 -32
  40. package/src/tools/documentation/appium-skills.ts +98 -103
  41. package/src/tools/documentation/plugin.ts +21 -0
  42. package/src/tools/index.ts +0 -6
  43. package/src/tools/session/create-session.ts +12 -3
  44. package/src/tools/session/session.ts +5 -2
package/CHANGELOG.md CHANGED
@@ -1,3 +1,15 @@
1
+ ## [1.82.2](https://github.com/appium/appium-mcp/compare/v1.82.1...v1.82.2) (2026-06-08)
2
+
3
+ ### Miscellaneous Chores
4
+
5
+ * define driver mode platform ([#388](https://github.com/appium/appium-mcp/issues/388)) ([a86b5ee](https://github.com/appium/appium-mcp/commit/a86b5ee0530fa0b60f27d5ad5121b4e4b6a9be6c))
6
+
7
+ ## [1.82.1](https://github.com/appium/appium-mcp/compare/v1.82.0...v1.82.1) (2026-06-03)
8
+
9
+ ### Miscellaneous Chores
10
+
11
+ * refactor documentation part as a plugin style ([#376](https://github.com/appium/appium-mcp/issues/376)) ([42ab1ed](https://github.com/appium/appium-mcp/commit/42ab1edb3d3e7ab4564f7930112dad9554a4d117))
12
+
1
13
  ## [1.82.0](https://github.com/appium/appium-mcp/compare/v1.81.7...v1.82.0) (2026-06-02)
2
14
 
3
15
  ### Features
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAEA,QAAA,MAAM,MAAM,iEAA0B,CAAC;AACvC,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAGA,QAAA,MAAM,MAAM,iEAEV,CAAC;AACH,eAAe,MAAM,CAAC"}
package/dist/server.js CHANGED
@@ -1,4 +1,7 @@
1
1
  import { createAppiumMcpServer } from './create-server.js';
2
- const server = createAppiumMcpServer();
2
+ import { AppiumDocumentation } from './tools/documentation/plugin.js';
3
+ const server = createAppiumMcpServer({
4
+ plugins: [new AppiumDocumentation()],
5
+ });
3
6
  export default server;
4
7
  //# sourceMappingURL=server.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAE3D,MAAM,MAAM,GAAG,qBAAqB,EAAE,CAAC;AACvC,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAEtE,MAAM,MAAM,GAAG,qBAAqB,CAAC;IACnC,OAAO,EAAE,CAAC,IAAI,mBAAmB,EAAE,CAAC;CACrC,CAAC,CAAC;AACH,eAAe,MAAM,CAAC"}
@@ -11,13 +11,9 @@ jest.unstable_mockModule('webdriver', () => ({ default: {} }));
11
11
  await jest.unstable_mockModule('../../../logger', () => ({
12
12
  default: { debug: () => { }, info: () => { }, warn: () => { }, error: () => { } },
13
13
  }));
14
- const appiumSkills = (await import('../../../tools/documentation/appium-skills.js')).default;
14
+ const { appiumSkillsTool } = await import('../../../tools/documentation/appium-skills.js');
15
15
  function getRegisteredTool() {
16
- const addTool = jest.fn();
17
- const server = { addTool };
18
- appiumSkills(server);
19
- expect(addTool).toHaveBeenCalledTimes(1);
20
- return addTool.mock.calls[0][0];
16
+ return appiumSkillsTool;
21
17
  }
22
18
  async function runTool(args) {
23
19
  const tool = getRegisteredTool();
@@ -1 +1 @@
1
- {"version":3,"file":"appium-skills.test.js","sourceRoot":"","sources":["../../../../src/tests/tools/documentation/appium-skills.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"appium-skills.test.js","sourceRoot":"","sources":["../../../../src/tests/tools/documentation/appium-skills.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=plugin.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin.test.d.ts","sourceRoot":"","sources":["../../../../src/tests/tools/documentation/plugin.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,34 @@
1
+ import { describe, expect, jest, test } from '@jest/globals';
2
+ jest.unstable_mockModule('appium-uiautomator2-driver', () => ({
3
+ AndroidUiautomator2Driver: class {
4
+ },
5
+ }));
6
+ jest.unstable_mockModule('appium-xcuitest-driver', () => ({
7
+ XCUITestDriver: class {
8
+ },
9
+ }));
10
+ jest.unstable_mockModule('webdriver', () => ({ default: {} }));
11
+ await jest.unstable_mockModule('../../../logger', () => ({
12
+ default: { debug: () => { }, info: () => { }, warn: () => { }, error: () => { } },
13
+ }));
14
+ const { AppiumDocumentation } = await import('../../../tools/documentation/plugin.js');
15
+ describe('AppiumDocumentation plugin', () => {
16
+ test('registers documentation query and skills tools', () => {
17
+ const tools = [];
18
+ const registry = {
19
+ addTool(toolDef) {
20
+ tools.push(toolDef);
21
+ },
22
+ };
23
+ new AppiumDocumentation().register(registry);
24
+ expect(tools.map((tool) => tool.name)).toEqual([
25
+ 'appium_documentation_query',
26
+ 'appium_skills',
27
+ ]);
28
+ expect(tools[1].annotations).toEqual({
29
+ readOnlyHint: true,
30
+ openWorldHint: false,
31
+ });
32
+ });
33
+ });
34
+ //# sourceMappingURL=plugin.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin.test.js","sourceRoot":"","sources":["../../../../src/tests/tools/documentation/plugin.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAE7D,IAAI,CAAC,mBAAmB,CAAC,4BAA4B,EAAE,GAAG,EAAE,CAAC,CAAC;IAC5D,yBAAyB,EAAE;KAAQ;CACpC,CAAC,CAAC,CAAC;AACJ,IAAI,CAAC,mBAAmB,CAAC,wBAAwB,EAAE,GAAG,EAAE,CAAC,CAAC;IACxD,cAAc,EAAE;KAAQ;CACzB,CAAC,CAAC,CAAC;AACJ,IAAI,CAAC,mBAAmB,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;AAE/D,MAAM,IAAI,CAAC,mBAAmB,CAAC,iBAAiB,EAAE,GAAG,EAAE,CAAC,CAAC;IACvD,OAAO,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,GAAE,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,GAAE,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,GAAE,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,GAAE,CAAC,EAAE;CAC9E,CAAC,CAAC,CAAC;AAEJ,MAAM,EAAE,mBAAmB,EAAE,GAC3B,MAAM,MAAM,CAAC,wCAAwC,CAAC,CAAC;AAOzD,QAAQ,CAAC,4BAA4B,EAAE,GAAG,EAAE;IAC1C,IAAI,CAAC,gDAAgD,EAAE,GAAG,EAAE;QAC1D,MAAM,KAAK,GAAc,EAAE,CAAC;QAC5B,MAAM,QAAQ,GAAG;YACf,OAAO,CAAC,OAAgB;gBACtB,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACtB,CAAC;SACF,CAAC;QAEF,IAAI,mBAAmB,EAAE,CAAC,QAAQ,CAAC,QAAiB,CAAC,CAAC;QAEtD,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC;YAC7C,4BAA4B;YAC5B,eAAe;SAChB,CAAC,CAAC;QACH,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC;YACnC,YAAY,EAAE,IAAI;YAClB,aAAa,EAAE,KAAK;SACrB,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -17,6 +17,7 @@ jest.unstable_mockModule('../../tools/session/attach-session', () => ({
17
17
  }));
18
18
  jest.unstable_mockModule('../../tools/session/create-session', () => ({
19
19
  createSessionAction: jest.fn(),
20
+ DRIVER_MODE_PLATFORMS: ['ios', 'android', 'general'],
20
21
  }));
21
22
  jest.unstable_mockModule('../../tools/session/delete-session', () => ({
22
23
  deleteSessionAction: jest.fn(),
@@ -1 +1 @@
1
- {"version":3,"file":"llm-wording.test.js","sourceRoot":"","sources":["../../../src/tests/tools/llm-wording.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"llm-wording.test.js","sourceRoot":"","sources":["../../../src/tests/tools/llm-wording.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,8 @@
1
- export default function answerAppium(server: any): void;
1
+ /**
2
+ * Tool to query indexed Appium documentation.
3
+ */
4
+ import type { FastMCP } from 'fastmcp';
5
+ type ToolDef = Parameters<FastMCP['addTool']>[0];
6
+ export declare const appiumDocumentationQueryTool: ToolDef;
7
+ export {};
2
8
  //# sourceMappingURL=answer-appium.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"answer-appium.d.ts","sourceRoot":"","sources":["../../../src/tools/documentation/answer-appium.ts"],"names":[],"mappings":"AAQA,MAAM,CAAC,OAAO,UAAU,YAAY,CAAC,MAAM,EAAE,GAAG,GAAG,IAAI,CAqCtD"}
1
+ {"version":3,"file":"answer-appium.d.ts","sourceRoot":"","sources":["../../../src/tools/documentation/answer-appium.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAMvC,KAAK,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAEjD,eAAO,MAAM,4BAA4B,EAAE,OAmC1C,CAAC"}
@@ -1,43 +1,38 @@
1
- /**
2
- * Tool to select mobile platform before creating a session
3
- */
4
1
  import { z } from 'zod';
5
2
  import { answerAppiumQuery, initializeAppiumDocumentation } from './index.js';
6
3
  import log from '../../logger.js';
7
4
  import { errorResult, textResult } from '../tool-response.js';
8
- export default function answerAppium(server) {
9
- server.addTool({
10
- name: 'appium_documentation_query',
11
- description: `Query Appium documentation using RAG (Retrieval-Augmented Generation).
5
+ export const appiumDocumentationQueryTool = {
6
+ name: 'appium_documentation_query',
7
+ description: `Query Appium documentation using RAG (Retrieval-Augmented Generation).
12
8
  This tool searches through indexed Appium documentation to answer questions about Appium features, setup, configuration, drivers, and usage.
13
9
  `,
14
- parameters: z.object({
15
- query: z
16
- .string()
17
- .describe('The question or query about Appium documentation'),
18
- }),
19
- execute: async (args, _context) => {
20
- const query = args.query;
21
- if (!query) {
22
- return errorResult('Query parameter is required');
23
- }
10
+ parameters: z.object({
11
+ query: z
12
+ .string()
13
+ .describe('The question or query about Appium documentation'),
14
+ }),
15
+ execute: async (args, _context) => {
16
+ const query = args.query;
17
+ if (!query) {
18
+ return errorResult('Query parameter is required');
19
+ }
20
+ try {
21
+ const result = await answerAppiumQuery({ query });
22
+ return textResult(result.answer);
23
+ }
24
+ catch (_docError) {
25
+ // If documentation query fails, try to initialize and retry once
24
26
  try {
27
+ log.info('Documentation not initialized, initializing now...');
28
+ await initializeAppiumDocumentation();
25
29
  const result = await answerAppiumQuery({ query });
26
30
  return textResult(result.answer);
27
31
  }
28
- catch (_docError) {
29
- // If documentation query fails, try to initialize and retry once
30
- try {
31
- log.info('Documentation not initialized, initializing now...');
32
- await initializeAppiumDocumentation();
33
- const result = await answerAppiumQuery({ query });
34
- return textResult(result.answer);
35
- }
36
- catch (retryError) {
37
- return errorResult(`Error querying Appium documentation: ${retryError.message}. Please ensure the documentation is indexed first.`);
38
- }
32
+ catch (retryError) {
33
+ return errorResult(`Error querying Appium documentation: ${retryError.message}. Please ensure the documentation is indexed first.`);
39
34
  }
40
- },
41
- });
42
- }
35
+ }
36
+ },
37
+ };
43
38
  //# sourceMappingURL=answer-appium.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"answer-appium.js","sourceRoot":"","sources":["../../../src/tools/documentation/answer-appium.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,iBAAiB,EAAE,6BAA6B,EAAE,MAAM,YAAY,CAAC;AAC9E,OAAO,GAAG,MAAM,iBAAiB,CAAC;AAClC,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAE9D,MAAM,CAAC,OAAO,UAAU,YAAY,CAAC,MAAW;IAC9C,MAAM,CAAC,OAAO,CAAC;QACb,IAAI,EAAE,4BAA4B;QAClC,WAAW,EAAE;;OAEV;QACH,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC;YACnB,KAAK,EAAE,CAAC;iBACL,MAAM,EAAE;iBACR,QAAQ,CAAC,kDAAkD,CAAC;SAChE,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,IAAS,EAAE,QAAa,EAAgB,EAAE;YACxD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;YACzB,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,OAAO,WAAW,CAAC,6BAA6B,CAAC,CAAC;YACpD,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;gBAClD,OAAO,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACnC,CAAC;YAAC,OAAO,SAAS,EAAE,CAAC;gBACnB,iEAAiE;gBACjE,IAAI,CAAC;oBACH,GAAG,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAC;oBAC/D,MAAM,6BAA6B,EAAE,CAAC;oBACtC,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;oBAClD,OAAO,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBACnC,CAAC;gBAAC,OAAO,UAAU,EAAE,CAAC;oBACpB,OAAO,WAAW,CAChB,wCACG,UAAoB,CAAC,OACxB,qDAAqD,CACtD,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"answer-appium.js","sourceRoot":"","sources":["../../../src/tools/documentation/answer-appium.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,iBAAiB,EAAE,6BAA6B,EAAE,MAAM,YAAY,CAAC;AAC9E,OAAO,GAAG,MAAM,iBAAiB,CAAC;AAClC,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAI9D,MAAM,CAAC,MAAM,4BAA4B,GAAY;IACnD,IAAI,EAAE,4BAA4B;IAClC,WAAW,EAAE;;OAER;IACL,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC;QACnB,KAAK,EAAE,CAAC;aACL,MAAM,EAAE;aACR,QAAQ,CAAC,kDAAkD,CAAC;KAChE,CAAC;IACF,OAAO,EAAE,KAAK,EAAE,IAAS,EAAE,QAAa,EAAgB,EAAE;QACxD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QACzB,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,WAAW,CAAC,6BAA6B,CAAC,CAAC;QACpD,CAAC;QAED,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;YAClD,OAAO,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACnC,CAAC;QAAC,OAAO,SAAS,EAAE,CAAC;YACnB,iEAAiE;YACjE,IAAI,CAAC;gBACH,GAAG,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAC;gBAC/D,MAAM,6BAA6B,EAAE,CAAC;gBACtC,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;gBAClD,OAAO,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACnC,CAAC;YAAC,OAAO,UAAU,EAAE,CAAC;gBACpB,OAAO,WAAW,CAChB,wCACG,UAAoB,CAAC,OACxB,qDAAqD,CACtD,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;CACF,CAAC"}
@@ -1,2 +1,5 @@
1
- export default function appiumSkills(server: any): void;
1
+ import type { FastMCP } from 'fastmcp';
2
+ type ToolDef = Parameters<FastMCP['addTool']>[0];
3
+ export declare const appiumSkillsTool: ToolDef;
4
+ export {};
2
5
  //# sourceMappingURL=appium-skills.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"appium-skills.d.ts","sourceRoot":"","sources":["../../../src/tools/documentation/appium-skills.ts"],"names":[],"mappings":"AA4CA,MAAM,CAAC,OAAO,UAAU,YAAY,CAAC,MAAM,EAAE,GAAG,GAAG,IAAI,CA4GtD"}
1
+ {"version":3,"file":"appium-skills.d.ts","sourceRoot":"","sources":["../../../src/tools/documentation/appium-skills.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAUvC,KAAK,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAkCjD,eAAO,MAAM,gBAAgB,EAAE,OAqG9B,CAAC"}
@@ -32,79 +32,77 @@ const TEMPLATE_HEADINGS = {
32
32
  'troubleshoot:uiautomator2': 'Troubleshooting',
33
33
  'troubleshoot:xcuitest': 'Troubleshooting',
34
34
  };
35
- export default function appiumSkills(server) {
36
- server.addTool({
37
- name: 'appium_skills',
38
- description: `Return ordered Appium setup or troubleshooting skills from the vendored appium/skills repository.
35
+ export const appiumSkillsTool = {
36
+ name: 'appium_skills',
37
+ description: `Return ordered Appium setup or troubleshooting skills from the vendored appium/skills repository.
39
38
  Use this before preparing a LOCAL Appium environment or diagnosing local prerequisite issues.`,
40
- parameters: z.object({
41
- platform: z.enum(['android', 'ios']).describe('Target local platform.'),
42
- driver: z
43
- .enum(['uiautomator2', 'espresso', 'xcuitest'])
44
- .describe('Target Appium automation driver.'),
45
- mode: z
46
- .enum(['setup', 'troubleshoot'])
47
- .optional()
48
- .default('setup')
49
- .describe('Whether to prepare an environment or troubleshoot an existing failure.'),
50
- realDevice: z
51
- .boolean()
52
- .optional()
53
- .default(false)
54
- .describe('For ios + xcuitest only: true for a physical device, false for simulator setup.'),
55
- includeOptional: z
56
- .array(z.enum(['ffmpeg', 'bundletool']))
57
- .optional()
58
- .default([])
59
- .describe('Optional shared skills to include when explicitly requested.'),
60
- }),
61
- annotations: {
62
- readOnlyHint: true,
63
- openWorldHint: false,
64
- },
65
- execute: async (rawArgs) => {
66
- const parsed = (rawArgs ?? {});
67
- const args = {
68
- platform: parsed.platform,
69
- driver: parsed.driver,
70
- mode: parsed.mode ?? 'setup',
71
- realDevice: parsed.realDevice ?? false,
72
- includeOptional: Array.isArray(parsed.includeOptional)
73
- ? parsed.includeOptional
74
- : [],
75
- };
76
- const { skillNames, ignoredOptional } = getSkillNames(args);
77
- log.info(`Loading Appium skills for ${args.platform}/${args.driver} (${args.mode}) from ${ROOT}`);
78
- const agentsMarkdown = await readMarkdown(AGENTS_PATH);
79
- const promptTemplate = getPromptTemplate(agentsMarkdown, getTemplateHeading(args.mode, args.driver, args.realDevice));
80
- const skillContents = await Promise.all(skillNames.map(async (skillName) => ({
81
- name: skillName,
82
- markdown: await readMarkdown(SKILL_PATH(skillName)),
83
- })));
84
- const lines = [
85
- `Appium skills for ${args.platform}/${args.driver}`,
86
- `Mode: ${args.mode}`,
87
- `Real device: ${args.realDevice ? 'yes' : 'no'}`,
88
- '',
89
- 'Recommended skill order:',
90
- ...skillNames.map((skillName, index) => `${index + 1}. ${skillName}`),
91
- ];
92
- if (ignoredOptional.length) {
93
- lines.push('', `Ignored optional skills: ${ignoredOptional.join(', ')}`);
94
- }
95
- lines.push('', 'Source files:', '- AGENTS.md');
96
- lines.push(...skillNames.map((skillName) => `- skills/${skillName}/SKILL.md`));
97
- if (promptTemplate) {
98
- lines.push('', 'Prompt template:', '```text', promptTemplate, '```');
99
- }
100
- lines.push('', '--- AGENTS.md ---', agentsMarkdown.trim());
101
- for (const skill of skillContents) {
102
- lines.push('', `--- skills/${skill.name}/SKILL.md ---`, skill.markdown.trim());
103
- }
104
- return textResult(lines.join('\n'));
105
- },
106
- });
107
- }
39
+ parameters: z.object({
40
+ platform: z.enum(['android', 'ios']).describe('Target local platform.'),
41
+ driver: z
42
+ .enum(['uiautomator2', 'espresso', 'xcuitest'])
43
+ .describe('Target Appium automation driver.'),
44
+ mode: z
45
+ .enum(['setup', 'troubleshoot'])
46
+ .optional()
47
+ .default('setup')
48
+ .describe('Whether to prepare an environment or troubleshoot an existing failure.'),
49
+ realDevice: z
50
+ .boolean()
51
+ .optional()
52
+ .default(false)
53
+ .describe('For ios + xcuitest only: true for a physical device, false for simulator setup.'),
54
+ includeOptional: z
55
+ .array(z.enum(['ffmpeg', 'bundletool']))
56
+ .optional()
57
+ .default([])
58
+ .describe('Optional shared skills to include when explicitly requested.'),
59
+ }),
60
+ annotations: {
61
+ readOnlyHint: true,
62
+ openWorldHint: false,
63
+ },
64
+ execute: async (rawArgs) => {
65
+ const parsed = (rawArgs ?? {});
66
+ const args = {
67
+ platform: parsed.platform,
68
+ driver: parsed.driver,
69
+ mode: parsed.mode ?? 'setup',
70
+ realDevice: parsed.realDevice ?? false,
71
+ includeOptional: Array.isArray(parsed.includeOptional)
72
+ ? parsed.includeOptional
73
+ : [],
74
+ };
75
+ const { skillNames, ignoredOptional } = getSkillNames(args);
76
+ log.info(`Loading Appium skills for ${args.platform}/${args.driver} (${args.mode}) from ${ROOT}`);
77
+ const agentsMarkdown = await readMarkdown(AGENTS_PATH);
78
+ const promptTemplate = getPromptTemplate(agentsMarkdown, getTemplateHeading(args.mode, args.driver, args.realDevice));
79
+ const skillContents = await Promise.all(skillNames.map(async (skillName) => ({
80
+ name: skillName,
81
+ markdown: await readMarkdown(SKILL_PATH(skillName)),
82
+ })));
83
+ const lines = [
84
+ `Appium skills for ${args.platform}/${args.driver}`,
85
+ `Mode: ${args.mode}`,
86
+ `Real device: ${args.realDevice ? 'yes' : 'no'}`,
87
+ '',
88
+ 'Recommended skill order:',
89
+ ...skillNames.map((skillName, index) => `${index + 1}. ${skillName}`),
90
+ ];
91
+ if (ignoredOptional.length) {
92
+ lines.push('', `Ignored optional skills: ${ignoredOptional.join(', ')}`);
93
+ }
94
+ lines.push('', 'Source files:', '- AGENTS.md');
95
+ lines.push(...skillNames.map((skillName) => `- skills/${skillName}/SKILL.md`));
96
+ if (promptTemplate) {
97
+ lines.push('', 'Prompt template:', '```text', promptTemplate, '```');
98
+ }
99
+ lines.push('', '--- AGENTS.md ---', agentsMarkdown.trim());
100
+ for (const skill of skillContents) {
101
+ lines.push('', `--- skills/${skill.name}/SKILL.md ---`, skill.markdown.trim());
102
+ }
103
+ return textResult(lines.join('\n'));
104
+ },
105
+ };
108
106
  /**
109
107
  * Get the list of skill names to return based on the input arguments,
110
108
  * and determine which optional skills were ignored.
@@ -1 +1 @@
1
- {"version":3,"file":"appium-skills.js","sourceRoot":"","sources":["../../../src/tools/documentation/appium-skills.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"appium-skills.js","sourceRoot":"","sources":["../../../src/tools/documentation/appium-skills.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import type { AppiumMcpPlugin, McpRegistry } from '../../plugin.js';
2
+ /**
3
+ * Appium documentation plugin.
4
+ *
5
+ * Registers the documentation-focused tools:
6
+ * - appium_documentation_query
7
+ * - appium_skills
8
+ */
9
+ export declare class AppiumDocumentation implements AppiumMcpPlugin {
10
+ readonly name = "appium-documentation";
11
+ readonly version: string;
12
+ register(registry: McpRegistry): void;
13
+ }
14
+ //# sourceMappingURL=plugin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../../src/tools/documentation/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAKpE;;;;;;GAMG;AACH,qBAAa,mBAAoB,YAAW,eAAe;IACzD,QAAQ,CAAC,IAAI,0BAA0B;IACvC,QAAQ,CAAC,OAAO,SAAe;IAE/B,QAAQ,CAAC,QAAQ,EAAE,WAAW,GAAG,IAAI;CAItC"}
@@ -0,0 +1,19 @@
1
+ import { appiumDocumentationQueryTool } from './answer-appium.js';
2
+ import { appiumSkillsTool } from './appium-skills.js';
3
+ import pkg from '../../../package.json' with { type: 'json' };
4
+ /**
5
+ * Appium documentation plugin.
6
+ *
7
+ * Registers the documentation-focused tools:
8
+ * - appium_documentation_query
9
+ * - appium_skills
10
+ */
11
+ export class AppiumDocumentation {
12
+ name = 'appium-documentation';
13
+ version = pkg.version;
14
+ register(registry) {
15
+ registry.addTool(appiumDocumentationQueryTool);
16
+ registry.addTool(appiumSkillsTool);
17
+ }
18
+ }
19
+ //# sourceMappingURL=plugin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../../src/tools/documentation/plugin.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,4BAA4B,EAAE,MAAM,oBAAoB,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,GAAG,MAAM,uBAAuB,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAC;AAE9D;;;;;;GAMG;AACH,MAAM,OAAO,mBAAmB;IACrB,IAAI,GAAG,sBAAsB,CAAC;IAC9B,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;IAE/B,QAAQ,CAAC,QAAqB;QAC5B,QAAQ,CAAC,OAAO,CAAC,4BAA4B,CAAC,CAAC;QAC/C,QAAQ,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACrC,CAAC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,KAAK,EAAiB,OAAO,EAAE,MAAM,SAAS,CAAC;AAwCtD,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI,CAuJ3D"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,KAAK,EAAiB,OAAO,EAAE,MAAM,SAAS,CAAC;AAsCtD,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI,CAmJ3D"}
@@ -1,6 +1,4 @@
1
1
  import log from '../logger.js';
2
- import answerAppium from './documentation/answer-appium.js';
3
- import appiumSkills from './documentation/appium-skills.js';
4
2
  import session from './session/session.js';
5
3
  import generateLocators from './test-generation/locators.js';
6
4
  import selectDevice from './session/select-device.js';
@@ -152,9 +150,6 @@ export default function registerTools(server) {
152
150
  // Test Generation
153
151
  generateLocators(server);
154
152
  generateTest(server);
155
- // Documentation
156
- answerAppium(server);
157
- appiumSkills(server);
158
153
  // AI (vision-based fallback) — gated; only registered when explicitly enabled.
159
154
  assertAIConfig();
160
155
  if (isAIEnabled()) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAeA,OAAO,GAAG,MAAM,cAAc,CAAC;AAC/B,OAAO,YAAY,MAAM,kCAAkC,CAAC;AAC5D,OAAO,YAAY,MAAM,kCAAkC,CAAC;AAC5D,OAAO,OAAO,MAAM,sBAAsB,CAAC;AAC3C,OAAO,gBAAgB,MAAM,+BAA+B,CAAC;AAC7D,OAAO,YAAY,MAAM,4BAA4B,CAAC;AACtD,OAAO,mBAAmB,MAAM,6BAA6B,CAAC;AAC9D,OAAO,WAAW,MAAM,0BAA0B,CAAC;AACnD,OAAO,UAAU,MAAM,0BAA0B,CAAC;AAClD,OAAO,YAAY,MAAM,4BAA4B,CAAC;AACtD,OAAO,cAAc,MAAM,8BAA8B,CAAC;AAC1D,OAAO,mBAAmB,MAAM,gCAAgC,CAAC;AACjE,OAAO,oBAAoB,MAAM,kCAAkC,CAAC;AACpE,OAAO,YAAY,MAAM,qCAAqC,CAAC;AAC/D,OAAO,OAAO,MAAM,uBAAuB,CAAC;AAC5C,OAAO,kBAAkB,MAAM,+BAA+B,CAAC;AAC/D,OAAO,WAAW,MAAM,6BAA6B,CAAC;AACtD,OAAO,WAAW,MAAM,wBAAwB,CAAC;AACjD,OAAO,QAAQ,MAAM,6BAA6B,CAAC;AACnD,OAAO,QAAQ,MAAM,6BAA6B,CAAC;AACnD,OAAO,QAAQ,MAAM,4BAA4B,CAAC;AAClD,OAAO,OAAO,MAAM,4BAA4B,CAAC;AACjD,OAAO,mBAAmB,MAAM,yCAAyC,CAAC;AAC1E,OAAO,gBAAgB,MAAM,kCAAkC,CAAC;AAChE,OAAO,aAAa,MAAM,mCAAmC,CAAC;AAC9D,OAAO,WAAW,MAAM,+BAA+B,CAAC;AACxD,OAAO,SAAS,MAAM,6BAA6B,CAAC;AACpD,OAAO,KAAK,MAAM,gCAAgC,CAAC;AACnD,OAAO,UAAU,MAAM,8BAA8B,CAAC;AACtD,OAAO,aAAa,MAAM,+BAA+B,CAAC;AAC1D,OAAO,eAAe,MAAM,oCAAoC,CAAC;AACjE,OAAO,GAAG,MAAM,yBAAyB,CAAC;AAC1C,OAAO,iBAAiB,MAAM,iCAAiC,CAAC;AAChE,OAAO,OAAO,MAAM,sBAAsB,CAAC;AAC3C,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAI7D,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,MAAe;IACnD,uDAAuD;IACvD,MAAM,eAAe,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACpD,MAAM,CAAC,OAAO,GAAG,CAAC,CAAC,OAAuB,EAAQ,EAAE;QAClD,MAAM,QAAQ,GAAG,OAAO,EAAE,IAAI,IAAI,cAAc,CAAC;QACjD,MAAM,eAAe,GAAG,OAAO,EAAE,OAAO,CAAC;QACzC,IAAI,OAAO,eAAe,KAAK,UAAU,EAAE,CAAC;YAC1C,OAAO,eAAe,CAAC,OAAO,CAAC,CAAC;QAClC,CAAC;QACD,MAAM,cAAc,GAAG;YACrB,UAAU;YACV,OAAO;YACP,aAAa;YACb,eAAe;YACf,QAAQ;YACR,QAAQ;YACR,cAAc;YACd,iBAAiB;SAClB,CAAC;QACF,MAAM,UAAU,GAAG,CAAC,GAAY,EAAW,EAAE;YAC3C,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;gBACtC,OAAO,GAAG,CAAC;YACb,CAAC;YACD,IAAI,CAAC;gBACH,OAAO,IAAI,CAAC,KAAK,CACf,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;oBACjC,IACE,GAAG;wBACH,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EACzD,CAAC;wBACD,OAAO,YAAY,CAAC;oBACtB,CAAC;oBACD,gDAAgD;oBAChD,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,GAAG,IAAI,EAAE,CAAC;wBAC9D,OAAO,WAAW,KAAK,CAAC,MAAM,GAAG,CAAC;oBACpC,CAAC;oBACD,IACE,KAAK;wBACL,OAAO,MAAM,KAAK,WAAW;wBAC7B,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EACtB,CAAC;wBACD,OAAO,WAAY,KAAgB,CAAC,MAAM,GAAG,CAAC;oBAChD,CAAC;oBACD,OAAO,KAAK,CAAC;gBACf,CAAC,CAAC,CACH,CAAC;YACJ,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,uBAAuB,CAAC;YACjC,CAAC;QACH,CAAC,CAAC;QACF,OAAO,eAAe,CAAC;YACrB,GAAG,OAAO;YACV,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;gBAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gBACzB,GAAG,CAAC,IAAI,CAAC,gBAAgB,QAAQ,EAAE,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;gBACvD,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;oBACpD,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC;oBACtC,GAAG,CAAC,IAAI,CACN,IAAI,CAAC,SAAS,CAAC;wBACb,IAAI,EAAE,QAAQ;wBACd,UAAU;wBACV,SAAS,EAAE,qBAAqB,CAAC,IAAI,CAAC;wBACtC,OAAO,EAAE,qBAAqB,CAAC,MAAM,CAAC;qBACvC,CAAC,CACH,CAAC;oBACF,OAAO,MAAM,CAAC;gBAChB,CAAC;gBAAC,OAAO,GAAY,EAAE,CAAC;oBACtB,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC;oBACtC,GAAG,CAAC,IAAI,CACN,IAAI,CAAC,SAAS,CAAC;wBACb,IAAI,EAAE,QAAQ;wBACd,UAAU;wBACV,SAAS,EAAE,qBAAqB,CAAC,IAAI,CAAC;wBACtC,OAAO,EAAE,IAAI;qBACd,CAAC,CACH,CAAC;oBACF,MAAM,GAAG,GACP,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;oBAChE,GAAG,CAAC,KAAK,CAAC,gBAAgB,QAAQ,KAAK,UAAU,QAAQ,GAAG,EAAE,CAAC,CAAC;oBAChE,MAAM,GAAG,CAAC;gBACZ,CAAC;YACH,CAAC;SACF,CAAC,CAAC;IACL,CAAC,CAAuB,CAAC;IAEzB,qBAAqB;IACrB,YAAY,CAAC,MAAM,CAAC,CAAC;IACrB,OAAO,CAAC,MAAM,CAAC,CAAC;IAChB,mBAAmB,CAAC,MAAM,CAAC,CAAC;IAC5B,WAAW,CAAC,MAAM,CAAC,CAAC;IACpB,UAAU,CAAC,MAAM,CAAC,CAAC;IACnB,YAAY,CAAC,MAAM,CAAC,CAAC;IACrB,cAAc,CAAC,MAAM,CAAC,CAAC;IAEvB,YAAY;IACZ,mBAAmB,CAAC,MAAM,CAAC,CAAC;IAC5B,oBAAoB,CAAC,MAAM,CAAC,CAAC;IAE7B,yBAAyB;IACzB,OAAO,CAAC,MAAM,CAAC,CAAC;IAChB,WAAW,CAAC,MAAM,CAAC,CAAC;IACpB,kBAAkB,CAAC,MAAM,CAAC,CAAC;IAE3B,uBAAuB;IACvB,qCAAqC;IACrC,8EAA8E;IAC9E,sEAAsE;IACtE,mFAAmF;IACnF,WAAW,CAAC,MAAM,CAAC,CAAC;IACpB,QAAQ,CAAC,MAAM,CAAC,CAAC;IACjB,QAAQ,CAAC,MAAM,CAAC,CAAC;IACjB,QAAQ,CAAC,MAAM,CAAC,CAAC;IACjB,OAAO,CAAC,MAAM,CAAC,CAAC;IAChB,mBAAmB,CAAC,MAAM,CAAC,CAAC;IAC5B,SAAS,CAAC,MAAM,CAAC,CAAC;IAClB,gBAAgB,CAAC,MAAM,CAAC,CAAC;IACzB,aAAa,CAAC,MAAM,CAAC,CAAC;IACtB,WAAW,CAAC,MAAM,CAAC,CAAC;IACpB,KAAK,CAAC,MAAM,CAAC,CAAC;IACd,UAAU,CAAC,MAAM,CAAC,CAAC;IACnB,aAAa,CAAC,MAAM,CAAC,CAAC;IACtB,eAAe,CAAC,MAAM,CAAC,CAAC;IAExB,iBAAiB;IACjB,GAAG,CAAC,MAAM,CAAC,CAAC;IACZ,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAE1B,qBAAqB;IACrB,OAAO,CAAC,MAAM,CAAC,CAAC;IAEhB,kBAAkB;IAClB,gBAAgB,CAAC,MAAM,CAAC,CAAC;IACzB,YAAY,CAAC,MAAM,CAAC,CAAC;IAErB,gBAAgB;IAChB,YAAY,CAAC,MAAM,CAAC,CAAC;IACrB,YAAY,CAAC,MAAM,CAAC,CAAC;IAErB,+EAA+E;IAC/E,cAAc,EAAE,CAAC;IACjB,IAAI,WAAW,EAAE,EAAE,CAAC;QAClB,EAAE,CAAC,MAAM,CAAC,CAAC;QACX,GAAG,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAC;IACjE,CAAC;SAAM,CAAC;QACN,GAAG,CAAC,IAAI,CACN,sEAAsE,CACvE,CAAC;IACJ,CAAC;IAED,GAAG,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;AACnC,CAAC;AAED,SAAS,qBAAqB,CAAC,IAAa;IAC1C,IACE,IAAI;QACJ,OAAO,IAAI,KAAK,QAAQ;QACxB,WAAW,IAAI,IAAI;QACnB,OAAQ,IAAgC,CAAC,SAAS,KAAK,QAAQ,EAC/D,CAAC;QACD,OAAQ,IAA8B,CAAC,SAAS,CAAC;IACnD,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,qBAAqB,CAAC,MAAe;IAC5C,IACE,MAAM;QACN,OAAO,MAAM,KAAK,QAAQ;QAC1B,SAAS,IAAI,MAAM;QACnB,KAAK,CAAC,OAAO,CAAE,MAA+B,CAAC,OAAO,CAAC,EACvD,CAAC;QACD,OAAQ,MAAwB,CAAC,OAAO,KAAK,IAAI,CAAC;IACpD,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,13 @@
1
1
  import { getPortFromUrl } from '../../utils/url.js';
2
2
  import type { ContentResult } from 'fastmcp';
3
+ /**
4
+ * What driver should the appium-mcp session management tool create and manage.
5
+ * 'ios' and 'android' create sessions with the embedded Appium drivers inside this MCP server.
6
+ * 'general' is for remote servers only and just passes the capabilities through as-is without adding any defaults,
7
+ * so it's up to the user to specify the correct driver in their capabilities (e.g., Windows, macOS, custom).
8
+ *
9
+ */
10
+ export declare const DRIVER_MODE_PLATFORMS: readonly ["ios", "android", "general"];
3
11
  interface Capabilities {
4
12
  platformName: string;
5
13
  'appium:automationName': string;
@@ -39,7 +47,7 @@ export declare function validateRemoteServerUrl(remoteServerUrl: string, regexRu
39
47
  * servers. Supports both local and remote Appium server connections.
40
48
  *
41
49
  * @param {Object} args - Action arguments
42
- * @param {'ios' | 'android' | 'general'} args.platform - REQUIRED. The target
50
+ * @param {(typeof DRIVER_MODE_PLATFORMS)[number]} args.platform - REQUIRED. The target
43
51
  * platform. For local servers, must match the platform explicitly selected via
44
52
  * `select_device`. Use 'general' only with `remoteServerUrl` for non-Android/iOS
45
53
  * drivers.
@@ -54,7 +62,7 @@ export declare function validateRemoteServerUrl(remoteServerUrl: string, regexRu
54
62
  * Returns a tool-execution error result (isError: true) on failure.
55
63
  */
56
64
  export declare function createSessionAction(args: {
57
- platform: 'ios' | 'android' | 'general';
65
+ platform: (typeof DRIVER_MODE_PLATFORMS)[number];
58
66
  capabilities?: Record<string, any>;
59
67
  remoteServerUrl?: string;
60
68
  }): Promise<ContentResult>;
@@ -1 +1 @@
1
- {"version":3,"file":"create-session.d.ts","sourceRoot":"","sources":["../../../src/tools/session/create-session.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAkBpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAK7C,UAAU,YAAY;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,uBAAuB,EAAE,MAAM,CAAC;IAChC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AASD;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,YAAY,EAAE,YAAY,GACzB,YAAY,CAQd;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC/B,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,SAAS,EAC3C,cAAc,EAAE,OAAO,GACtB,YAAY,CAiCd;AAED;;GAEG;AACH,wBAAsB,0BAA0B,CAC9C,UAAU,EAAE,WAAW,GAAG,MAAM,GAAG,IAAI,GACtC,OAAO,CAAC,IAAI,CAAC,CAgBf;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CACxC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC/B,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,SAAS,EAC3C,cAAc,EAAE,OAAO,GACtB,OAAO,CAAC,YAAY,CAAC,CA2DvB;AAED;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CACrC,eAAe,EAAE,MAAM,EACvB,SAAS,CAAC,EAAE,MAAM,GACjB,IAAI,CAKN;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAsB,mBAAmB,CAAC,IAAI,EAAE;IAC9C,QAAQ,EAAE,KAAK,GAAG,SAAS,GAAG,SAAS,CAAC;IACxC,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACnC,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B,GAAG,OAAO,CAAC,aAAa,CAAC,CA2HzB;AA2FD,OAAO,EAAE,cAAc,EAAE,CAAC"}
1
+ {"version":3,"file":"create-session.d.ts","sourceRoot":"","sources":["../../../src/tools/session/create-session.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAkBpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAI7C;;;;;;GAMG;AACH,eAAO,MAAM,qBAAqB,wCAAyC,CAAC;AAG5E,UAAU,YAAY;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,uBAAuB,EAAE,MAAM,CAAC;IAChC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AASD;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,YAAY,EAAE,YAAY,GACzB,YAAY,CAQd;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC/B,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,SAAS,EAC3C,cAAc,EAAE,OAAO,GACtB,YAAY,CAiCd;AAED;;GAEG;AACH,wBAAsB,0BAA0B,CAC9C,UAAU,EAAE,WAAW,GAAG,MAAM,GAAG,IAAI,GACtC,OAAO,CAAC,IAAI,CAAC,CAgBf;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CACxC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC/B,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,SAAS,EAC3C,cAAc,EAAE,OAAO,GACtB,OAAO,CAAC,YAAY,CAAC,CA2DvB;AAED;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CACrC,eAAe,EAAE,MAAM,EACvB,SAAS,CAAC,EAAE,MAAM,GACjB,IAAI,CAKN;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAsB,mBAAmB,CAAC,IAAI,EAAE;IAC9C,QAAQ,EAAE,CAAC,OAAO,qBAAqB,CAAC,CAAC,MAAM,CAAC,CAAC;IACjD,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACnC,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B,GAAG,OAAO,CAAC,aAAa,CAAC,CA2HzB;AA2FD,OAAO,EAAE,cAAc,EAAE,CAAC"}
@@ -11,6 +11,14 @@ import log from '../../logger.js';
11
11
  import { createUIResource, createSessionDashboardUI, addUIResourceToResponse, } from '../../ui/mcp-ui-utils.js';
12
12
  import { errorResult, textResult, toolErrorMessage } from '../tool-response.js';
13
13
  import WebDriver from 'webdriver';
14
+ /**
15
+ * What driver should the appium-mcp session management tool create and manage.
16
+ * 'ios' and 'android' create sessions with the embedded Appium drivers inside this MCP server.
17
+ * 'general' is for remote servers only and just passes the capabilities through as-is without adding any defaults,
18
+ * so it's up to the user to specify the correct driver in their capabilities (e.g., Windows, macOS, custom).
19
+ *
20
+ */
21
+ export const DRIVER_MODE_PLATFORMS = ['ios', 'android', 'general'];
14
22
  /**
15
23
  * Remove empty string values from capabilities object
16
24
  */
@@ -143,7 +151,7 @@ export function validateRemoteServerUrl(remoteServerUrl, regexRule) {
143
151
  * servers. Supports both local and remote Appium server connections.
144
152
  *
145
153
  * @param {Object} args - Action arguments
146
- * @param {'ios' | 'android' | 'general'} args.platform - REQUIRED. The target
154
+ * @param {(typeof DRIVER_MODE_PLATFORMS)[number]} args.platform - REQUIRED. The target
147
155
  * platform. For local servers, must match the platform explicitly selected via
148
156
  * `select_device`. Use 'general' only with `remoteServerUrl` for non-Android/iOS
149
157
  * drivers.
@@ -1 +1 @@
1
- {"version":3,"file":"create-session.js","sourceRoot":"","sources":["../../../src/tools/session/create-session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create-session.js","sourceRoot":"","sources":["../../../src/tools/session/create-session.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../../src/tools/session/session.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AA8EvC,MAAM,CAAC,OAAO,UAAU,OAAO,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI,CA6ErD"}
1
+ {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../../src/tools/session/session.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAiFvC,MAAM,CAAC,OAAO,UAAU,OAAO,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI,CA6ErD"}
@@ -1,6 +1,6 @@
1
1
  import { z } from 'zod';
2
2
  import { attachSessionAction } from './attach-session.js';
3
- import { createSessionAction } from './create-session.js';
3
+ import { createSessionAction, DRIVER_MODE_PLATFORMS, } from './create-session.js';
4
4
  import { deleteSessionAction } from './delete-session.js';
5
5
  import { detachSessionAction } from './detach-session.js';
6
6
  import { listSessionsAction } from './list-sessions.js';
@@ -40,7 +40,7 @@ const schema = z.object({
40
40
  'list: List all active Appium sessions managed by this MCP server, including active flag, ownership, and current context.' +
41
41
  'select: Set an existing Appium session as the active session for subsequent tool calls (requires sessionId).'),
42
42
  platform: z
43
- .enum(['ios', 'android', 'general'])
43
+ .enum(DRIVER_MODE_PLATFORMS)
44
44
  .optional()
45
45
  .describe('Required for create. ' +
46
46
  'For local servers, must match the platform selected via select_device. ' +
@@ -1 +1 @@
1
- {"version":3,"file":"session.js","sourceRoot":"","sources":["../../../src/tools/session/session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session.js","sourceRoot":"","sources":["../../../src/tools/session/session.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "appium-mcp",
3
3
  "mcpName": "io.github.appium/appium-mcp",
4
- "version": "1.82.0",
4
+ "version": "1.82.2",
5
5
  "type": "module",
6
6
  "repository": {
7
7
  "type": "git",
package/server.json CHANGED
@@ -3,12 +3,12 @@
3
3
  "name": "io.github.appium/appium-mcp",
4
4
  "title": "MCP Appium - Mobile Development and Automation Server",
5
5
  "description": "MCP server for Appium mobile automation on iOS and Android devices with test creation tools.",
6
- "version": "1.82.0",
6
+ "version": "1.82.2",
7
7
  "packages": [
8
8
  {
9
9
  "registryType": "npm",
10
10
  "identifier": "appium-mcp",
11
- "version": "1.82.0",
11
+ "version": "1.82.2",
12
12
  "transport": {
13
13
  "type": "stdio"
14
14
  }
Binary file
package/src/server.ts CHANGED
@@ -1,4 +1,7 @@
1
1
  import { createAppiumMcpServer } from './create-server.js';
2
+ import { AppiumDocumentation } from './tools/documentation/plugin.js';
2
3
 
3
- const server = createAppiumMcpServer();
4
+ const server = createAppiumMcpServer({
5
+ plugins: [new AppiumDocumentation()],
6
+ });
4
7
  export default server;
@@ -1,46 +1,47 @@
1
1
  /**
2
- * Tool to select mobile platform before creating a session
2
+ * Tool to query indexed Appium documentation.
3
3
  */
4
+ import type { FastMCP } from 'fastmcp';
4
5
  import { z } from 'zod';
5
6
  import { answerAppiumQuery, initializeAppiumDocumentation } from './index.js';
6
7
  import log from '../../logger.js';
7
8
  import { errorResult, textResult } from '../tool-response.js';
8
9
 
9
- export default function answerAppium(server: any): void {
10
- server.addTool({
11
- name: 'appium_documentation_query',
12
- description: `Query Appium documentation using RAG (Retrieval-Augmented Generation).
10
+ type ToolDef = Parameters<FastMCP['addTool']>[0];
11
+
12
+ export const appiumDocumentationQueryTool: ToolDef = {
13
+ name: 'appium_documentation_query',
14
+ description: `Query Appium documentation using RAG (Retrieval-Augmented Generation).
13
15
  This tool searches through indexed Appium documentation to answer questions about Appium features, setup, configuration, drivers, and usage.
14
16
  `,
15
- parameters: z.object({
16
- query: z
17
- .string()
18
- .describe('The question or query about Appium documentation'),
19
- }),
20
- execute: async (args: any, _context: any): Promise<any> => {
21
- const query = args.query;
22
- if (!query) {
23
- return errorResult('Query parameter is required');
24
- }
17
+ parameters: z.object({
18
+ query: z
19
+ .string()
20
+ .describe('The question or query about Appium documentation'),
21
+ }),
22
+ execute: async (args: any, _context: any): Promise<any> => {
23
+ const query = args.query;
24
+ if (!query) {
25
+ return errorResult('Query parameter is required');
26
+ }
25
27
 
28
+ try {
29
+ const result = await answerAppiumQuery({ query });
30
+ return textResult(result.answer);
31
+ } catch (_docError) {
32
+ // If documentation query fails, try to initialize and retry once
26
33
  try {
34
+ log.info('Documentation not initialized, initializing now...');
35
+ await initializeAppiumDocumentation();
27
36
  const result = await answerAppiumQuery({ query });
28
37
  return textResult(result.answer);
29
- } catch (_docError) {
30
- // If documentation query fails, try to initialize and retry once
31
- try {
32
- log.info('Documentation not initialized, initializing now...');
33
- await initializeAppiumDocumentation();
34
- const result = await answerAppiumQuery({ query });
35
- return textResult(result.answer);
36
- } catch (retryError) {
37
- return errorResult(
38
- `Error querying Appium documentation: ${
39
- (retryError as Error).message
40
- }. Please ensure the documentation is indexed first.`
41
- );
42
- }
38
+ } catch (retryError) {
39
+ return errorResult(
40
+ `Error querying Appium documentation: ${
41
+ (retryError as Error).message
42
+ }. Please ensure the documentation is indexed first.`
43
+ );
43
44
  }
44
- },
45
- });
46
- }
45
+ }
46
+ },
47
+ };
@@ -1,5 +1,6 @@
1
1
  import { readFile } from 'node:fs/promises';
2
2
  import path from 'node:path';
3
+ import type { FastMCP } from 'fastmcp';
3
4
  import { z } from 'zod';
4
5
  import log from '../../logger.js';
5
6
  import { resolveAppiumResourcesPath } from '../../utils/paths.js';
@@ -9,6 +10,7 @@ type Platform = 'android' | 'ios';
9
10
  type Driver = 'uiautomator2' | 'espresso' | 'xcuitest';
10
11
  type Mode = 'setup' | 'troubleshoot';
11
12
  type OptionalSkill = 'ffmpeg' | 'bundletool';
13
+ type ToolDef = Parameters<FastMCP['addTool']>[0];
12
14
 
13
15
  const ROOT = resolveAppiumResourcesPath('submodules', 'appium-skills');
14
16
  const AGENTS_PATH = path.join(ROOT, 'AGENTS.md');
@@ -42,115 +44,108 @@ const TEMPLATE_HEADINGS: Record<string, string> = {
42
44
  'troubleshoot:xcuitest': 'Troubleshooting',
43
45
  };
44
46
 
45
- export default function appiumSkills(server: any): void {
46
- server.addTool({
47
- name: 'appium_skills',
48
- description: `Return ordered Appium setup or troubleshooting skills from the vendored appium/skills repository.
47
+ export const appiumSkillsTool: ToolDef = {
48
+ name: 'appium_skills',
49
+ description: `Return ordered Appium setup or troubleshooting skills from the vendored appium/skills repository.
49
50
  Use this before preparing a LOCAL Appium environment or diagnosing local prerequisite issues.`,
50
- parameters: z.object({
51
- platform: z.enum(['android', 'ios']).describe('Target local platform.'),
52
- driver: z
53
- .enum(['uiautomator2', 'espresso', 'xcuitest'])
54
- .describe('Target Appium automation driver.'),
55
- mode: z
56
- .enum(['setup', 'troubleshoot'])
57
- .optional()
58
- .default('setup')
59
- .describe(
60
- 'Whether to prepare an environment or troubleshoot an existing failure.'
61
- ),
62
- realDevice: z
63
- .boolean()
64
- .optional()
65
- .default(false)
66
- .describe(
67
- 'For ios + xcuitest only: true for a physical device, false for simulator setup.'
68
- ),
69
- includeOptional: z
70
- .array(z.enum(['ffmpeg', 'bundletool']))
71
- .optional()
72
- .default([])
73
- .describe(
74
- 'Optional shared skills to include when explicitly requested.'
75
- ),
76
- }),
77
- annotations: {
78
- readOnlyHint: true,
79
- openWorldHint: false,
80
- },
81
- execute: async (rawArgs: any): Promise<any> => {
82
- const parsed = (rawArgs ?? {}) as Partial<{
83
- platform: Platform;
84
- driver: Driver;
85
- mode: Mode;
86
- realDevice: boolean;
87
- includeOptional: OptionalSkill[];
88
- }>;
89
- const args = {
90
- platform: parsed.platform as Platform,
91
- driver: parsed.driver as Driver,
92
- mode: parsed.mode ?? 'setup',
93
- realDevice: parsed.realDevice ?? false,
94
- includeOptional: Array.isArray(parsed.includeOptional)
95
- ? parsed.includeOptional
96
- : [],
97
- };
98
- const { skillNames, ignoredOptional } = getSkillNames(args);
99
-
100
- log.info(
101
- `Loading Appium skills for ${args.platform}/${args.driver} (${args.mode}) from ${ROOT}`
102
- );
51
+ parameters: z.object({
52
+ platform: z.enum(['android', 'ios']).describe('Target local platform.'),
53
+ driver: z
54
+ .enum(['uiautomator2', 'espresso', 'xcuitest'])
55
+ .describe('Target Appium automation driver.'),
56
+ mode: z
57
+ .enum(['setup', 'troubleshoot'])
58
+ .optional()
59
+ .default('setup')
60
+ .describe(
61
+ 'Whether to prepare an environment or troubleshoot an existing failure.'
62
+ ),
63
+ realDevice: z
64
+ .boolean()
65
+ .optional()
66
+ .default(false)
67
+ .describe(
68
+ 'For ios + xcuitest only: true for a physical device, false for simulator setup.'
69
+ ),
70
+ includeOptional: z
71
+ .array(z.enum(['ffmpeg', 'bundletool']))
72
+ .optional()
73
+ .default([])
74
+ .describe('Optional shared skills to include when explicitly requested.'),
75
+ }),
76
+ annotations: {
77
+ readOnlyHint: true,
78
+ openWorldHint: false,
79
+ },
80
+ execute: async (rawArgs: any): Promise<any> => {
81
+ const parsed = (rawArgs ?? {}) as Partial<{
82
+ platform: Platform;
83
+ driver: Driver;
84
+ mode: Mode;
85
+ realDevice: boolean;
86
+ includeOptional: OptionalSkill[];
87
+ }>;
88
+ const args = {
89
+ platform: parsed.platform as Platform,
90
+ driver: parsed.driver as Driver,
91
+ mode: parsed.mode ?? 'setup',
92
+ realDevice: parsed.realDevice ?? false,
93
+ includeOptional: Array.isArray(parsed.includeOptional)
94
+ ? parsed.includeOptional
95
+ : [],
96
+ };
97
+ const { skillNames, ignoredOptional } = getSkillNames(args);
98
+
99
+ log.info(
100
+ `Loading Appium skills for ${args.platform}/${args.driver} (${args.mode}) from ${ROOT}`
101
+ );
103
102
 
104
- const agentsMarkdown = await readMarkdown(AGENTS_PATH);
105
- const promptTemplate = getPromptTemplate(
106
- agentsMarkdown,
107
- getTemplateHeading(args.mode, args.driver, args.realDevice)
108
- );
109
- const skillContents = await Promise.all(
110
- skillNames.map(async (skillName) => ({
111
- name: skillName,
112
- markdown: await readMarkdown(SKILL_PATH(skillName)),
113
- }))
114
- );
103
+ const agentsMarkdown = await readMarkdown(AGENTS_PATH);
104
+ const promptTemplate = getPromptTemplate(
105
+ agentsMarkdown,
106
+ getTemplateHeading(args.mode, args.driver, args.realDevice)
107
+ );
108
+ const skillContents = await Promise.all(
109
+ skillNames.map(async (skillName) => ({
110
+ name: skillName,
111
+ markdown: await readMarkdown(SKILL_PATH(skillName)),
112
+ }))
113
+ );
115
114
 
116
- const lines = [
117
- `Appium skills for ${args.platform}/${args.driver}`,
118
- `Mode: ${args.mode}`,
119
- `Real device: ${args.realDevice ? 'yes' : 'no'}`,
120
- '',
121
- 'Recommended skill order:',
122
- ...skillNames.map((skillName, index) => `${index + 1}. ${skillName}`),
123
- ];
124
-
125
- if (ignoredOptional.length) {
126
- lines.push(
127
- '',
128
- `Ignored optional skills: ${ignoredOptional.join(', ')}`
129
- );
130
- }
131
-
132
- lines.push('', 'Source files:', '- AGENTS.md');
115
+ const lines = [
116
+ `Appium skills for ${args.platform}/${args.driver}`,
117
+ `Mode: ${args.mode}`,
118
+ `Real device: ${args.realDevice ? 'yes' : 'no'}`,
119
+ '',
120
+ 'Recommended skill order:',
121
+ ...skillNames.map((skillName, index) => `${index + 1}. ${skillName}`),
122
+ ];
123
+
124
+ if (ignoredOptional.length) {
125
+ lines.push('', `Ignored optional skills: ${ignoredOptional.join(', ')}`);
126
+ }
127
+
128
+ lines.push('', 'Source files:', '- AGENTS.md');
129
+ lines.push(
130
+ ...skillNames.map((skillName) => `- skills/${skillName}/SKILL.md`)
131
+ );
132
+
133
+ if (promptTemplate) {
134
+ lines.push('', 'Prompt template:', '```text', promptTemplate, '```');
135
+ }
136
+
137
+ lines.push('', '--- AGENTS.md ---', agentsMarkdown.trim());
138
+ for (const skill of skillContents) {
133
139
  lines.push(
134
- ...skillNames.map((skillName) => `- skills/${skillName}/SKILL.md`)
140
+ '',
141
+ `--- skills/${skill.name}/SKILL.md ---`,
142
+ skill.markdown.trim()
135
143
  );
144
+ }
136
145
 
137
- if (promptTemplate) {
138
- lines.push('', 'Prompt template:', '```text', promptTemplate, '```');
139
- }
140
-
141
- lines.push('', '--- AGENTS.md ---', agentsMarkdown.trim());
142
- for (const skill of skillContents) {
143
- lines.push(
144
- '',
145
- `--- skills/${skill.name}/SKILL.md ---`,
146
- skill.markdown.trim()
147
- );
148
- }
149
-
150
- return textResult(lines.join('\n'));
151
- },
152
- });
153
- }
146
+ return textResult(lines.join('\n'));
147
+ },
148
+ };
154
149
 
155
150
  /**
156
151
  * Get the list of skill names to return based on the input arguments,
@@ -0,0 +1,21 @@
1
+ import type { AppiumMcpPlugin, McpRegistry } from '../../plugin.js';
2
+ import { appiumDocumentationQueryTool } from './answer-appium.js';
3
+ import { appiumSkillsTool } from './appium-skills.js';
4
+ import pkg from '../../../package.json' with { type: 'json' };
5
+
6
+ /**
7
+ * Appium documentation plugin.
8
+ *
9
+ * Registers the documentation-focused tools:
10
+ * - appium_documentation_query
11
+ * - appium_skills
12
+ */
13
+ export class AppiumDocumentation implements AppiumMcpPlugin {
14
+ readonly name = 'appium-documentation';
15
+ readonly version = pkg.version;
16
+
17
+ register(registry: McpRegistry): void {
18
+ registry.addTool(appiumDocumentationQueryTool);
19
+ registry.addTool(appiumSkillsTool);
20
+ }
21
+ }
@@ -14,8 +14,6 @@
14
14
  */
15
15
  import type { ContentResult, FastMCP } from 'fastmcp';
16
16
  import log from '../logger.js';
17
- import answerAppium from './documentation/answer-appium.js';
18
- import appiumSkills from './documentation/appium-skills.js';
19
17
  import session from './session/session.js';
20
18
  import generateLocators from './test-generation/locators.js';
21
19
  import selectDevice from './session/select-device.js';
@@ -187,10 +185,6 @@ export default function registerTools(server: FastMCP): void {
187
185
  generateLocators(server);
188
186
  generateTest(server);
189
187
 
190
- // Documentation
191
- answerAppium(server);
192
- appiumSkills(server);
193
-
194
188
  // AI (vision-based fallback) — gated; only registered when explicitly enabled.
195
189
  assertAIConfig();
196
190
  if (isAIEnabled()) {
@@ -23,6 +23,15 @@ import type { ContentResult } from 'fastmcp';
23
23
  import { errorResult, textResult, toolErrorMessage } from '../tool-response.js';
24
24
  import WebDriver from 'webdriver';
25
25
 
26
+ /**
27
+ * What driver should the appium-mcp session management tool create and manage.
28
+ * 'ios' and 'android' create sessions with the embedded Appium drivers inside this MCP server.
29
+ * 'general' is for remote servers only and just passes the capabilities through as-is without adding any defaults,
30
+ * so it's up to the user to specify the correct driver in their capabilities (e.g., Windows, macOS, custom).
31
+ *
32
+ */
33
+ export const DRIVER_MODE_PLATFORMS = ['ios', 'android', 'general'] as const;
34
+
26
35
  // Define capabilities type
27
36
  interface Capabilities {
28
37
  platformName: string;
@@ -212,7 +221,7 @@ export function validateRemoteServerUrl(
212
221
  * servers. Supports both local and remote Appium server connections.
213
222
  *
214
223
  * @param {Object} args - Action arguments
215
- * @param {'ios' | 'android' | 'general'} args.platform - REQUIRED. The target
224
+ * @param {(typeof DRIVER_MODE_PLATFORMS)[number]} args.platform - REQUIRED. The target
216
225
  * platform. For local servers, must match the platform explicitly selected via
217
226
  * `select_device`. Use 'general' only with `remoteServerUrl` for non-Android/iOS
218
227
  * drivers.
@@ -227,7 +236,7 @@ export function validateRemoteServerUrl(
227
236
  * Returns a tool-execution error result (isError: true) on failure.
228
237
  */
229
238
  export async function createSessionAction(args: {
230
- platform: 'ios' | 'android' | 'general';
239
+ platform: (typeof DRIVER_MODE_PLATFORMS)[number];
231
240
  capabilities?: Record<string, any>;
232
241
  remoteServerUrl?: string;
233
242
  }): Promise<ContentResult> {
@@ -358,7 +367,7 @@ export async function createSessionAction(args: {
358
367
  function buildCreateSessionFailureMessage(
359
368
  error: unknown,
360
369
  ctx: {
361
- platform: 'ios' | 'android' | 'general';
370
+ platform: (typeof DRIVER_MODE_PLATFORMS)[number];
362
371
  remoteServerUrl?: string;
363
372
  finalCapabilities?: Capabilities;
364
373
  }
@@ -1,7 +1,10 @@
1
1
  import type { FastMCP } from 'fastmcp';
2
2
  import { z } from 'zod';
3
3
  import { attachSessionAction } from './attach-session.js';
4
- import { createSessionAction } from './create-session.js';
4
+ import {
5
+ createSessionAction,
6
+ DRIVER_MODE_PLATFORMS,
7
+ } from './create-session.js';
5
8
  import { deleteSessionAction } from './delete-session.js';
6
9
  import { detachSessionAction } from './detach-session.js';
7
10
  import { listSessionsAction } from './list-sessions.js';
@@ -46,7 +49,7 @@ const schema = z.object({
46
49
  'select: Set an existing Appium session as the active session for subsequent tool calls (requires sessionId).'
47
50
  ),
48
51
  platform: z
49
- .enum(['ios', 'android', 'general'])
52
+ .enum(DRIVER_MODE_PLATFORMS)
50
53
  .optional()
51
54
  .describe(
52
55
  'Required for create. ' +