stopMongoServer
Stop a running MongoDB-compatible server instance by specifying its port number to manage database resources effectively.
Instructions
Stop a running MongoDB-compatible server instance by port number
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| port | Yes | Port of the server to stop |
Implementation Reference
- src/mcp/index.js:345-361 (handler)Handler implementation in the main MCP server entry point. Retrieves server from global 'servers' Map by port, calls stop(), deletes entry, returns success response.case 'stopMongoServer': const targetPort = args.port; const serverInfo = servers.get(targetPort); if (!serverInfo) { throw new Error(`No server running on port ${targetPort}`); } await serverInfo.server.stop(); servers.delete(targetPort); return { content: [{ type: 'text', text: `MongoDB server on port ${targetPort} stopped successfully.` }] };
- src/mcp/index.js:149-159 (registration)Tool registration in TOOLS array used for tools/list response, including name, description, and input schema requiring 'port'.{ name: 'stopMongoServer', description: 'Stop a running MongoDB-compatible server instance by port number', inputSchema: { type: 'object', properties: { port: { type: 'integer', description: 'Port of the server to stop' } }, required: ['port'] } },
- src/mcp/mcp-server.js:951-981 (handler)Class method handler in MCPServerEnhanced class. Stops server instance from this.servers Map, includes verification and error handling.async stopMongoServer(args) { const { port } = args; const server = this.servers.get(port); if (!server) { throw new Error(`No server running on port ${port}`); } try { // Stop the server and wait for it to fully close await server.stop(); // Verify the server is actually stopped const isListening = server.server && server.server.listening; if (isListening) { this.logger.warn(`Server on port ${port} may not have stopped completely`); } } catch (error) { this.logger.error(`Error stopping server on port ${port}:`, error); throw error; } finally { // Always remove from map, even if stop failed this.servers.delete(port); } return { success: true, message: `Server on port ${port} stopped` }; }
- src/mcp/mcp-server.js:80-90 (schema)Input schema definition in this.tools array for the stopMongoServer tool.{ name: 'stopMongoServer', description: 'Stop a running MongoDB server', inputSchema: { type: 'object', properties: { port: { type: 'integer', description: 'Port of the server to stop' } }, required: ['port'] } },
- src/mcp/mcp-server.js:747-748 (registration)Dispatch case in handleToolCall switch statement that invokes the stopMongoServer handler.case 'stopMongoServer': result = await this.stopMongoServer(args);