Skip to main content
Glama
mongodb-js

MongoDB MCP Server

Official
by mongodb-js
dryModeRunner.ts1.66 kB
import { InMemoryTransport } from "./inMemoryTransport.js"; import { TransportRunnerBase, type TransportRunnerConfig } from "./base.js"; import { type Server } from "../server.js"; export type DryRunModeTestHelpers = { logger: { log(this: void, message: string): void; error(this: void, message: string): void; }; }; type DryRunModeRunnerConfig = TransportRunnerConfig & DryRunModeTestHelpers; export class DryRunModeRunner extends TransportRunnerBase { private server: Server | undefined; private consoleLogger: DryRunModeTestHelpers["logger"]; constructor({ logger, ...transportRunnerConfig }: DryRunModeRunnerConfig) { super(transportRunnerConfig); this.consoleLogger = logger; } override async start(): Promise<void> { this.server = await this.setupServer(); const transport = new InMemoryTransport(); await this.server.connect(transport); this.dumpConfig(); this.dumpTools(); } override async closeTransport(): Promise<void> { await this.server?.close(); } private dumpConfig(): void { this.consoleLogger.log("Configuration:"); this.consoleLogger.log(JSON.stringify(this.userConfig, null, 2)); } private dumpTools(): void { const tools = this.server?.tools .filter((tool) => tool.isEnabled()) .map((tool) => ({ name: tool.name, category: tool.category, })) ?? []; this.consoleLogger.log("Enabled tools:"); this.consoleLogger.log(JSON.stringify(tools, null, 2)); } }

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/mongodb-js/mongodb-mcp-server'

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