Skip to main content
Glama

mp_ensureConnection

Verify and establish a connection to WeChat Mini Program automation sessions. Configure connection settings or force reconnection when needed for development tasks.

Instructions

检查小程序自动化会话是否就绪。可选择覆盖连接设置或强制重连。

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
connectionNo
reconnectNo

Implementation Reference

  • The core handler implementation for the mp_ensureConnection tool. It parses arguments, ensures connection via manager.withMiniProgram, retrieves current page and system info, and returns formatted JSON.
    function createEnsureConnectionTool(manager: WeappAutomatorManager): AnyTool { return { name: "mp_ensureConnection", description: "检查小程序自动化会话是否就绪。可选择覆盖连接设置或强制重连。", parameters: ensureConnectionParameters, execute: async (rawArgs, context: ToolContext) => { const args = ensureConnectionParameters.parse(rawArgs ?? {}); const result = await manager.withMiniProgram<ContentResult>( context.log, { overrides: args.connection, reconnect: args.reconnect ?? false, }, async (miniProgram, config) => { const page = await miniProgram.currentPage(); let systemInfo: unknown; try { systemInfo = await miniProgram.systemInfo(); } catch { systemInfo = null; } return toTextResult( formatJson({ mode: config.mode, projectPath: config.projectPath, wsEndpoint: config.wsEndpoint, port: config.port, autoClose: config.autoClose ?? false, currentPage: page ? { path: page.path, query: page.query } : null, systemInfo, }) ); } ); return result; }, }; }
  • Schema definitions for the tool parameters: connectionContainerSchema, connectionOnlyParameters, and ensureConnectionParameters used in mp_ensureConnection.
    export const connectionContainerSchema = z.object({ connection: connectionOverridesSchema.optional(), }); export const connectionOnlyParameters = connectionContainerSchema; export const ensureConnectionParameters = connectionContainerSchema .extend({ reconnect: z.coerce.boolean().optional().default(false), });
  • Base connectionOverridesSchema imported and used to build the tool's input parameters schema.
    export const connectionOverridesSchema = z .object({ mode: z.enum(["launch", "connect"]).optional(), cliPath: z.string().trim().min(1).optional(), projectPath: z.string().trim().min(1).optional(), wsEndpoint: z.string().trim().min(1).optional(), timeout: z.coerce.number().int().positive().optional(), port: z.coerce.number().int().positive().optional(), account: z.string().trim().min(1).optional(), ticket: z.string().trim().min(1).optional(), trustProject: z.coerce.boolean().optional(), args: argsSchema, cwd: z.string().trim().min(1).optional(), autoClose: z.coerce.boolean().optional(), }) .strict();
  • Registration of application tools, including createEnsureConnectionTool.
    export function createApplicationTools( manager: WeappAutomatorManager ): AnyTool[] { return [ createEnsureConnectionTool(manager), createNavigateTool(manager), createScreenshotTool(manager), createCallWxMethodTool(manager), createGetConsoleLogsTool(manager), ]; }
  • src/tools.ts:7-13 (registration)
    Top-level tool creation function that includes the application tools containing mp_ensureConnection.
    export function createTools(manager: WeappAutomatorManager): AnyTool[] { return [ ...createApplicationTools(manager), ...createPageTools(manager), ...createElementTools(manager), ]; }

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/yfmeii/weapp-dev-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server