mongo.do 0.1.0 → 0.1.1
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.
- package/dist/cli/index.d.ts +1 -15
- package/dist/cli/index.js +4083 -196
- package/dist/cli/index.js.map +1 -1
- package/dist/index.d.ts +2740 -20
- package/dist/index.js +9375 -27
- package/dist/index.js.map +1 -1
- package/dist/worker-entrypoint-BEW23Gmp.d.ts +1331 -0
- package/dist/worker.d.ts +6 -5
- package/dist/worker.js +5477 -18
- package/dist/worker.js.map +1 -1
- package/package.json +3 -2
- package/dist/agentfs/adapters/anthropic.d.ts +0 -176
- package/dist/agentfs/adapters/anthropic.d.ts.map +0 -1
- package/dist/agentfs/adapters/anthropic.js +0 -629
- package/dist/agentfs/adapters/anthropic.js.map +0 -1
- package/dist/agentfs/adapters/index.d.ts +0 -21
- package/dist/agentfs/adapters/index.d.ts.map +0 -1
- package/dist/agentfs/adapters/index.js +0 -23
- package/dist/agentfs/adapters/index.js.map +0 -1
- package/dist/agentfs/adapters/vercel.d.ts +0 -260
- package/dist/agentfs/adapters/vercel.d.ts.map +0 -1
- package/dist/agentfs/adapters/vercel.js +0 -288
- package/dist/agentfs/adapters/vercel.js.map +0 -1
- package/dist/agentfs/glob.d.ts +0 -116
- package/dist/agentfs/glob.d.ts.map +0 -1
- package/dist/agentfs/glob.js +0 -270
- package/dist/agentfs/glob.js.map +0 -1
- package/dist/agentfs/grep.d.ts +0 -83
- package/dist/agentfs/grep.d.ts.map +0 -1
- package/dist/agentfs/grep.js +0 -193
- package/dist/agentfs/grep.js.map +0 -1
- package/dist/agentfs/index.d.ts +0 -22
- package/dist/agentfs/index.d.ts.map +0 -1
- package/dist/agentfs/index.js +0 -18
- package/dist/agentfs/index.js.map +0 -1
- package/dist/agentfs/kv-store.d.ts +0 -128
- package/dist/agentfs/kv-store.d.ts.map +0 -1
- package/dist/agentfs/kv-store.js +0 -227
- package/dist/agentfs/kv-store.js.map +0 -1
- package/dist/agentfs/mondo-agent.d.ts +0 -255
- package/dist/agentfs/mondo-agent.d.ts.map +0 -1
- package/dist/agentfs/mondo-agent.js +0 -879
- package/dist/agentfs/mondo-agent.js.map +0 -1
- package/dist/agentfs/toolcalls.d.ts +0 -130
- package/dist/agentfs/toolcalls.d.ts.map +0 -1
- package/dist/agentfs/toolcalls.js +0 -178
- package/dist/agentfs/toolcalls.js.map +0 -1
- package/dist/agentfs/types.d.ts +0 -171
- package/dist/agentfs/types.d.ts.map +0 -1
- package/dist/agentfs/types.js +0 -7
- package/dist/agentfs/types.js.map +0 -1
- package/dist/agentfs/vfs.d.ts +0 -249
- package/dist/agentfs/vfs.d.ts.map +0 -1
- package/dist/agentfs/vfs.js +0 -469
- package/dist/agentfs/vfs.js.map +0 -1
- package/dist/cli/index.d.ts.map +0 -1
- package/dist/cli/mcp.d.ts +0 -119
- package/dist/cli/mcp.d.ts.map +0 -1
- package/dist/cli/mcp.js +0 -418
- package/dist/cli/mcp.js.map +0 -1
- package/dist/cli/server.d.ts +0 -179
- package/dist/cli/server.d.ts.map +0 -1
- package/dist/cli/server.js +0 -441
- package/dist/cli/server.js.map +0 -1
- package/dist/client/Collection.d.ts +0 -199
- package/dist/client/Collection.d.ts.map +0 -1
- package/dist/client/Collection.js +0 -256
- package/dist/client/Collection.js.map +0 -1
- package/dist/client/Database.d.ts +0 -68
- package/dist/client/Database.d.ts.map +0 -1
- package/dist/client/Database.js +0 -105
- package/dist/client/Database.js.map +0 -1
- package/dist/client/MongoClient.d.ts +0 -165
- package/dist/client/MongoClient.d.ts.map +0 -1
- package/dist/client/MongoClient.js +0 -307
- package/dist/client/MongoClient.js.map +0 -1
- package/dist/client/aggregation-cursor.d.ts +0 -210
- package/dist/client/aggregation-cursor.d.ts.map +0 -1
- package/dist/client/aggregation-cursor.js +0 -509
- package/dist/client/aggregation-cursor.js.map +0 -1
- package/dist/client/bulk-write.d.ts +0 -216
- package/dist/client/bulk-write.d.ts.map +0 -1
- package/dist/client/bulk-write.js +0 -63
- package/dist/client/bulk-write.js.map +0 -1
- package/dist/client/change-stream.d.ts +0 -245
- package/dist/client/change-stream.d.ts.map +0 -1
- package/dist/client/change-stream.js +0 -429
- package/dist/client/change-stream.js.map +0 -1
- package/dist/client/cursor.d.ts +0 -85
- package/dist/client/cursor.d.ts.map +0 -1
- package/dist/client/cursor.js +0 -156
- package/dist/client/cursor.js.map +0 -1
- package/dist/client/http-cursor.d.ts +0 -233
- package/dist/client/http-cursor.d.ts.map +0 -1
- package/dist/client/http-cursor.js +0 -496
- package/dist/client/http-cursor.js.map +0 -1
- package/dist/client/index.d.ts +0 -18
- package/dist/client/index.d.ts.map +0 -1
- package/dist/client/index.js +0 -24
- package/dist/client/index.js.map +0 -1
- package/dist/client/mongo-client.d.ts +0 -60
- package/dist/client/mongo-client.d.ts.map +0 -1
- package/dist/client/mongo-client.js +0 -190
- package/dist/client/mongo-client.js.map +0 -1
- package/dist/client/mongo-collection.d.ts +0 -359
- package/dist/client/mongo-collection.d.ts.map +0 -1
- package/dist/client/mongo-collection.js +0 -1641
- package/dist/client/mongo-collection.js.map +0 -1
- package/dist/client/mongo-cursor.d.ts +0 -257
- package/dist/client/mongo-cursor.d.ts.map +0 -1
- package/dist/client/mongo-cursor.js +0 -621
- package/dist/client/mongo-cursor.js.map +0 -1
- package/dist/client/mongo-database.d.ts +0 -88
- package/dist/client/mongo-database.d.ts.map +0 -1
- package/dist/client/mongo-database.js +0 -139
- package/dist/client/mongo-database.js.map +0 -1
- package/dist/client/session.d.ts +0 -210
- package/dist/client/session.d.ts.map +0 -1
- package/dist/client/session.js +0 -326
- package/dist/client/session.js.map +0 -1
- package/dist/durable-object/index-manager.d.ts +0 -173
- package/dist/durable-object/index-manager.d.ts.map +0 -1
- package/dist/durable-object/index-manager.js +0 -764
- package/dist/durable-object/index-manager.js.map +0 -1
- package/dist/durable-object/index.d.ts +0 -12
- package/dist/durable-object/index.d.ts.map +0 -1
- package/dist/durable-object/index.js +0 -8
- package/dist/durable-object/index.js.map +0 -1
- package/dist/durable-object/mcp-handler.d.ts +0 -52
- package/dist/durable-object/mcp-handler.d.ts.map +0 -1
- package/dist/durable-object/mcp-handler.js +0 -186
- package/dist/durable-object/mcp-handler.js.map +0 -1
- package/dist/durable-object/migrations.d.ts +0 -40
- package/dist/durable-object/migrations.d.ts.map +0 -1
- package/dist/durable-object/migrations.js +0 -121
- package/dist/durable-object/migrations.js.map +0 -1
- package/dist/durable-object/mondo-database.d.ts +0 -148
- package/dist/durable-object/mondo-database.d.ts.map +0 -1
- package/dist/durable-object/mondo-database.js +0 -621
- package/dist/durable-object/mondo-database.js.map +0 -1
- package/dist/durable-object/schema.d.ts +0 -192
- package/dist/durable-object/schema.d.ts.map +0 -1
- package/dist/durable-object/schema.js +0 -186
- package/dist/durable-object/schema.js.map +0 -1
- package/dist/embedding/document-serializer.d.ts +0 -118
- package/dist/embedding/document-serializer.d.ts.map +0 -1
- package/dist/embedding/document-serializer.js +0 -339
- package/dist/embedding/document-serializer.js.map +0 -1
- package/dist/embedding/embedding-manager.d.ts +0 -136
- package/dist/embedding/embedding-manager.d.ts.map +0 -1
- package/dist/embedding/embedding-manager.js +0 -176
- package/dist/embedding/embedding-manager.js.map +0 -1
- package/dist/embedding/index.d.ts +0 -9
- package/dist/embedding/index.d.ts.map +0 -1
- package/dist/embedding/index.js +0 -9
- package/dist/embedding/index.js.map +0 -1
- package/dist/executor/aggregation-executor.d.ts +0 -93
- package/dist/executor/aggregation-executor.d.ts.map +0 -1
- package/dist/executor/aggregation-executor.js +0 -275
- package/dist/executor/aggregation-executor.js.map +0 -1
- package/dist/executor/function-executor.d.ts +0 -39
- package/dist/executor/function-executor.d.ts.map +0 -1
- package/dist/executor/function-executor.js +0 -168
- package/dist/executor/function-executor.js.map +0 -1
- package/dist/executor/index.d.ts +0 -4
- package/dist/executor/index.d.ts.map +0 -1
- package/dist/executor/index.js +0 -4
- package/dist/executor/index.js.map +0 -1
- package/dist/executor/vector-search-executor.d.ts +0 -71
- package/dist/executor/vector-search-executor.d.ts.map +0 -1
- package/dist/executor/vector-search-executor.js +0 -113
- package/dist/executor/vector-search-executor.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/mcp/adapters/anthropic-adapter.d.ts +0 -256
- package/dist/mcp/adapters/anthropic-adapter.d.ts.map +0 -1
- package/dist/mcp/adapters/anthropic-adapter.js +0 -409
- package/dist/mcp/adapters/anthropic-adapter.js.map +0 -1
- package/dist/mcp/adapters/base-adapter.d.ts +0 -164
- package/dist/mcp/adapters/base-adapter.d.ts.map +0 -1
- package/dist/mcp/adapters/base-adapter.js +0 -277
- package/dist/mcp/adapters/base-adapter.js.map +0 -1
- package/dist/mcp/adapters/errors.d.ts +0 -173
- package/dist/mcp/adapters/errors.d.ts.map +0 -1
- package/dist/mcp/adapters/errors.js +0 -305
- package/dist/mcp/adapters/errors.js.map +0 -1
- package/dist/mcp/adapters/index.d.ts +0 -65
- package/dist/mcp/adapters/index.d.ts.map +0 -1
- package/dist/mcp/adapters/index.js +0 -92
- package/dist/mcp/adapters/index.js.map +0 -1
- package/dist/mcp/adapters/streaming.d.ts +0 -200
- package/dist/mcp/adapters/streaming.d.ts.map +0 -1
- package/dist/mcp/adapters/streaming.js +0 -381
- package/dist/mcp/adapters/streaming.js.map +0 -1
- package/dist/mcp/adapters/vercel-adapter.d.ts +0 -321
- package/dist/mcp/adapters/vercel-adapter.d.ts.map +0 -1
- package/dist/mcp/adapters/vercel-adapter.js +0 -487
- package/dist/mcp/adapters/vercel-adapter.js.map +0 -1
- package/dist/mcp/agent.d.ts +0 -192
- package/dist/mcp/agent.d.ts.map +0 -1
- package/dist/mcp/agent.js +0 -338
- package/dist/mcp/agent.js.map +0 -1
- package/dist/mcp/cli.d.ts +0 -71
- package/dist/mcp/cli.d.ts.map +0 -1
- package/dist/mcp/cli.js +0 -218
- package/dist/mcp/cli.js.map +0 -1
- package/dist/mcp/index.d.ts +0 -15
- package/dist/mcp/index.d.ts.map +0 -1
- package/dist/mcp/index.js +0 -20
- package/dist/mcp/index.js.map +0 -1
- package/dist/mcp/sandbox/database-proxy.d.ts +0 -118
- package/dist/mcp/sandbox/database-proxy.d.ts.map +0 -1
- package/dist/mcp/sandbox/database-proxy.js +0 -154
- package/dist/mcp/sandbox/database-proxy.js.map +0 -1
- package/dist/mcp/sandbox/index.d.ts +0 -8
- package/dist/mcp/sandbox/index.d.ts.map +0 -1
- package/dist/mcp/sandbox/index.js +0 -7
- package/dist/mcp/sandbox/index.js.map +0 -1
- package/dist/mcp/sandbox/miniflare-evaluator.d.ts +0 -72
- package/dist/mcp/sandbox/miniflare-evaluator.d.ts.map +0 -1
- package/dist/mcp/sandbox/miniflare-evaluator.js +0 -379
- package/dist/mcp/sandbox/miniflare-evaluator.js.map +0 -1
- package/dist/mcp/sandbox/template.d.ts +0 -48
- package/dist/mcp/sandbox/template.d.ts.map +0 -1
- package/dist/mcp/sandbox/template.js +0 -147
- package/dist/mcp/sandbox/template.js.map +0 -1
- package/dist/mcp/sandbox/worker-evaluator.d.ts +0 -160
- package/dist/mcp/sandbox/worker-evaluator.d.ts.map +0 -1
- package/dist/mcp/sandbox/worker-evaluator.js +0 -217
- package/dist/mcp/sandbox/worker-evaluator.js.map +0 -1
- package/dist/mcp/server.d.ts +0 -75
- package/dist/mcp/server.d.ts.map +0 -1
- package/dist/mcp/server.js +0 -278
- package/dist/mcp/server.js.map +0 -1
- package/dist/mcp/tool-call-auditor.d.ts +0 -188
- package/dist/mcp/tool-call-auditor.d.ts.map +0 -1
- package/dist/mcp/tool-call-auditor.js +0 -198
- package/dist/mcp/tool-call-auditor.js.map +0 -1
- package/dist/mcp/tools/do.d.ts +0 -51
- package/dist/mcp/tools/do.d.ts.map +0 -1
- package/dist/mcp/tools/do.js +0 -113
- package/dist/mcp/tools/do.js.map +0 -1
- package/dist/mcp/tools/fetch.d.ts +0 -43
- package/dist/mcp/tools/fetch.d.ts.map +0 -1
- package/dist/mcp/tools/fetch.js +0 -127
- package/dist/mcp/tools/fetch.js.map +0 -1
- package/dist/mcp/tools/index.d.ts +0 -9
- package/dist/mcp/tools/index.d.ts.map +0 -1
- package/dist/mcp/tools/index.js +0 -9
- package/dist/mcp/tools/index.js.map +0 -1
- package/dist/mcp/tools/search.d.ts +0 -60
- package/dist/mcp/tools/search.d.ts.map +0 -1
- package/dist/mcp/tools/search.js +0 -278
- package/dist/mcp/tools/search.js.map +0 -1
- package/dist/mcp/transport/http.d.ts +0 -144
- package/dist/mcp/transport/http.d.ts.map +0 -1
- package/dist/mcp/transport/http.js +0 -545
- package/dist/mcp/transport/http.js.map +0 -1
- package/dist/mcp/transport/index.d.ts +0 -10
- package/dist/mcp/transport/index.d.ts.map +0 -1
- package/dist/mcp/transport/index.js +0 -12
- package/dist/mcp/transport/index.js.map +0 -1
- package/dist/mcp/transport/stdio.d.ts +0 -132
- package/dist/mcp/transport/stdio.d.ts.map +0 -1
- package/dist/mcp/transport/stdio.js +0 -466
- package/dist/mcp/transport/stdio.js.map +0 -1
- package/dist/mcp/types.d.ts +0 -476
- package/dist/mcp/types.d.ts.map +0 -1
- package/dist/mcp/types.js +0 -178
- package/dist/mcp/types.js.map +0 -1
- package/dist/olap/cdc/cdc-buffer.d.ts +0 -92
- package/dist/olap/cdc/cdc-buffer.d.ts.map +0 -1
- package/dist/olap/cdc/cdc-buffer.js +0 -146
- package/dist/olap/cdc/cdc-buffer.js.map +0 -1
- package/dist/olap/cdc/cdc-emitter.d.ts +0 -118
- package/dist/olap/cdc/cdc-emitter.d.ts.map +0 -1
- package/dist/olap/cdc/cdc-emitter.js +0 -217
- package/dist/olap/cdc/cdc-emitter.js.map +0 -1
- package/dist/olap/cdc/cdc-schema.d.ts +0 -119
- package/dist/olap/cdc/cdc-schema.d.ts.map +0 -1
- package/dist/olap/cdc/cdc-schema.js +0 -253
- package/dist/olap/cdc/cdc-schema.js.map +0 -1
- package/dist/olap/cdc/index.d.ts +0 -10
- package/dist/olap/cdc/index.d.ts.map +0 -1
- package/dist/olap/cdc/index.js +0 -10
- package/dist/olap/cdc/index.js.map +0 -1
- package/dist/olap/clickhouse/iceberg.d.ts +0 -164
- package/dist/olap/clickhouse/iceberg.d.ts.map +0 -1
- package/dist/olap/clickhouse/iceberg.js +0 -138
- package/dist/olap/clickhouse/iceberg.js.map +0 -1
- package/dist/olap/clickhouse/index.d.ts +0 -14
- package/dist/olap/clickhouse/index.d.ts.map +0 -1
- package/dist/olap/clickhouse/index.js +0 -14
- package/dist/olap/clickhouse/index.js.map +0 -1
- package/dist/olap/clickhouse/mapper.d.ts +0 -170
- package/dist/olap/clickhouse/mapper.d.ts.map +0 -1
- package/dist/olap/clickhouse/mapper.js +0 -654
- package/dist/olap/clickhouse/mapper.js.map +0 -1
- package/dist/olap/clickhouse/olap-backend.d.ts +0 -181
- package/dist/olap/clickhouse/olap-backend.d.ts.map +0 -1
- package/dist/olap/clickhouse/olap-backend.js +0 -1083
- package/dist/olap/clickhouse/olap-backend.js.map +0 -1
- package/dist/olap/clickhouse/query-executor.d.ts +0 -163
- package/dist/olap/clickhouse/query-executor.d.ts.map +0 -1
- package/dist/olap/clickhouse/query-executor.js +0 -560
- package/dist/olap/clickhouse/query-executor.js.map +0 -1
- package/dist/olap/clickhouse/query.d.ts +0 -134
- package/dist/olap/clickhouse/query.d.ts.map +0 -1
- package/dist/olap/clickhouse/query.js +0 -512
- package/dist/olap/clickhouse/query.js.map +0 -1
- package/dist/olap/stage/index.d.ts +0 -6
- package/dist/olap/stage/index.d.ts.map +0 -1
- package/dist/olap/stage/index.js +0 -6
- package/dist/olap/stage/index.js.map +0 -1
- package/dist/olap/stage/parser.d.ts +0 -68
- package/dist/olap/stage/parser.d.ts.map +0 -1
- package/dist/olap/stage/parser.js +0 -293
- package/dist/olap/stage/parser.js.map +0 -1
- package/dist/olap/stage/router.d.ts +0 -94
- package/dist/olap/stage/router.d.ts.map +0 -1
- package/dist/olap/stage/router.js +0 -390
- package/dist/olap/stage/router.js.map +0 -1
- package/dist/rpc/endpoint.d.ts +0 -52
- package/dist/rpc/endpoint.d.ts.map +0 -1
- package/dist/rpc/endpoint.js +0 -734
- package/dist/rpc/endpoint.js.map +0 -1
- package/dist/rpc/index.d.ts +0 -34
- package/dist/rpc/index.d.ts.map +0 -1
- package/dist/rpc/index.js +0 -45
- package/dist/rpc/index.js.map +0 -1
- package/dist/rpc/rpc-client.d.ts +0 -275
- package/dist/rpc/rpc-client.d.ts.map +0 -1
- package/dist/rpc/rpc-client.js +0 -735
- package/dist/rpc/rpc-client.js.map +0 -1
- package/dist/rpc/rpc-target.d.ts +0 -220
- package/dist/rpc/rpc-target.d.ts.map +0 -1
- package/dist/rpc/rpc-target.js +0 -500
- package/dist/rpc/rpc-target.js.map +0 -1
- package/dist/rpc/worker-entrypoint.d.ts +0 -159
- package/dist/rpc/worker-entrypoint.d.ts.map +0 -1
- package/dist/rpc/worker-entrypoint.js +0 -212
- package/dist/rpc/worker-entrypoint.js.map +0 -1
- package/dist/server.d.ts +0 -18
- package/dist/server.d.ts.map +0 -1
- package/dist/server.js +0 -129
- package/dist/server.js.map +0 -1
- package/dist/studio/components/browser/CollectionItem.d.ts +0 -26
- package/dist/studio/components/browser/CollectionItem.d.ts.map +0 -1
- package/dist/studio/components/browser/CollectionItem.js +0 -143
- package/dist/studio/components/browser/CollectionItem.js.map +0 -1
- package/dist/studio/components/browser/CollectionTree.d.ts +0 -45
- package/dist/studio/components/browser/CollectionTree.d.ts.map +0 -1
- package/dist/studio/components/browser/CollectionTree.js +0 -207
- package/dist/studio/components/browser/CollectionTree.js.map +0 -1
- package/dist/studio/components/browser/ConnectedDatabaseBrowser.d.ts +0 -51
- package/dist/studio/components/browser/ConnectedDatabaseBrowser.d.ts.map +0 -1
- package/dist/studio/components/browser/ConnectedDatabaseBrowser.js +0 -185
- package/dist/studio/components/browser/ConnectedDatabaseBrowser.js.map +0 -1
- package/dist/studio/components/browser/DatabaseBrowser.d.ts +0 -46
- package/dist/studio/components/browser/DatabaseBrowser.d.ts.map +0 -1
- package/dist/studio/components/browser/DatabaseBrowser.js +0 -304
- package/dist/studio/components/browser/DatabaseBrowser.js.map +0 -1
- package/dist/studio/components/browser/__tests__/CollectionItem.test.d.ts +0 -5
- package/dist/studio/components/browser/__tests__/CollectionItem.test.d.ts.map +0 -1
- package/dist/studio/components/browser/__tests__/CollectionItem.test.js +0 -169
- package/dist/studio/components/browser/__tests__/CollectionItem.test.js.map +0 -1
- package/dist/studio/components/browser/__tests__/CollectionTree.test.d.ts +0 -5
- package/dist/studio/components/browser/__tests__/CollectionTree.test.d.ts.map +0 -1
- package/dist/studio/components/browser/__tests__/CollectionTree.test.js +0 -203
- package/dist/studio/components/browser/__tests__/CollectionTree.test.js.map +0 -1
- package/dist/studio/components/browser/__tests__/DatabaseBrowser.e2e.test.d.ts +0 -8
- package/dist/studio/components/browser/__tests__/DatabaseBrowser.e2e.test.d.ts.map +0 -1
- package/dist/studio/components/browser/__tests__/DatabaseBrowser.e2e.test.js +0 -522
- package/dist/studio/components/browser/__tests__/DatabaseBrowser.e2e.test.js.map +0 -1
- package/dist/studio/components/browser/__tests__/DatabaseBrowser.test.d.ts +0 -5
- package/dist/studio/components/browser/__tests__/DatabaseBrowser.test.d.ts.map +0 -1
- package/dist/studio/components/browser/__tests__/DatabaseBrowser.test.js +0 -518
- package/dist/studio/components/browser/__tests__/DatabaseBrowser.test.js.map +0 -1
- package/dist/studio/components/browser/__tests__/setup.d.ts +0 -5
- package/dist/studio/components/browser/__tests__/setup.d.ts.map +0 -1
- package/dist/studio/components/browser/__tests__/setup.js +0 -22
- package/dist/studio/components/browser/__tests__/setup.js.map +0 -1
- package/dist/studio/components/browser/index.d.ts +0 -15
- package/dist/studio/components/browser/index.d.ts.map +0 -1
- package/dist/studio/components/browser/index.js +0 -10
- package/dist/studio/components/browser/index.js.map +0 -1
- package/dist/studio/components/browser/types.d.ts +0 -33
- package/dist/studio/components/browser/types.d.ts.map +0 -1
- package/dist/studio/components/browser/types.js +0 -5
- package/dist/studio/components/browser/types.js.map +0 -1
- package/dist/studio/components/connection/ConnectionForm.d.ts +0 -59
- package/dist/studio/components/connection/ConnectionForm.d.ts.map +0 -1
- package/dist/studio/components/connection/ConnectionForm.js +0 -274
- package/dist/studio/components/connection/ConnectionForm.js.map +0 -1
- package/dist/studio/components/connection/ConnectionList.d.ts +0 -59
- package/dist/studio/components/connection/ConnectionList.d.ts.map +0 -1
- package/dist/studio/components/connection/ConnectionList.js +0 -286
- package/dist/studio/components/connection/ConnectionList.js.map +0 -1
- package/dist/studio/components/connection/ConnectionPanel.d.ts +0 -132
- package/dist/studio/components/connection/ConnectionPanel.d.ts.map +0 -1
- package/dist/studio/components/connection/ConnectionPanel.js +0 -293
- package/dist/studio/components/connection/ConnectionPanel.js.map +0 -1
- package/dist/studio/components/connection/__tests__/ConnectionPanel.test.d.ts +0 -8
- package/dist/studio/components/connection/__tests__/ConnectionPanel.test.d.ts.map +0 -1
- package/dist/studio/components/connection/__tests__/ConnectionPanel.test.js +0 -632
- package/dist/studio/components/connection/__tests__/ConnectionPanel.test.js.map +0 -1
- package/dist/studio/components/connection/__tests__/setup.d.ts +0 -5
- package/dist/studio/components/connection/__tests__/setup.d.ts.map +0 -1
- package/dist/studio/components/connection/__tests__/setup.js +0 -11
- package/dist/studio/components/connection/__tests__/setup.js.map +0 -1
- package/dist/studio/components/connection/index.d.ts +0 -10
- package/dist/studio/components/connection/index.d.ts.map +0 -1
- package/dist/studio/components/connection/index.js +0 -7
- package/dist/studio/components/connection/index.js.map +0 -1
- package/dist/studio/components/crud/DeleteDocumentDialog.d.ts +0 -91
- package/dist/studio/components/crud/DeleteDocumentDialog.d.ts.map +0 -1
- package/dist/studio/components/crud/DeleteDocumentDialog.js +0 -273
- package/dist/studio/components/crud/DeleteDocumentDialog.js.map +0 -1
- package/dist/studio/components/crud/DocumentEditor.d.ts +0 -32
- package/dist/studio/components/crud/DocumentEditor.d.ts.map +0 -1
- package/dist/studio/components/crud/DocumentEditor.js +0 -546
- package/dist/studio/components/crud/DocumentEditor.js.map +0 -1
- package/dist/studio/components/crud/InsertDocumentDialog.d.ts +0 -78
- package/dist/studio/components/crud/InsertDocumentDialog.d.ts.map +0 -1
- package/dist/studio/components/crud/InsertDocumentDialog.js +0 -323
- package/dist/studio/components/crud/InsertDocumentDialog.js.map +0 -1
- package/dist/studio/components/crud/__tests__/DeleteDocumentDialog.test.d.ts +0 -5
- package/dist/studio/components/crud/__tests__/DeleteDocumentDialog.test.d.ts.map +0 -1
- package/dist/studio/components/crud/__tests__/DeleteDocumentDialog.test.js +0 -298
- package/dist/studio/components/crud/__tests__/DeleteDocumentDialog.test.js.map +0 -1
- package/dist/studio/components/crud/__tests__/DocumentEditor.test.d.ts +0 -8
- package/dist/studio/components/crud/__tests__/DocumentEditor.test.d.ts.map +0 -1
- package/dist/studio/components/crud/__tests__/DocumentEditor.test.js +0 -368
- package/dist/studio/components/crud/__tests__/DocumentEditor.test.js.map +0 -1
- package/dist/studio/components/crud/__tests__/InsertDocumentDialog.test.d.ts +0 -2
- package/dist/studio/components/crud/__tests__/InsertDocumentDialog.test.d.ts.map +0 -1
- package/dist/studio/components/crud/__tests__/InsertDocumentDialog.test.js +0 -352
- package/dist/studio/components/crud/__tests__/InsertDocumentDialog.test.js.map +0 -1
- package/dist/studio/components/crud/__tests__/setup.d.ts +0 -5
- package/dist/studio/components/crud/__tests__/setup.d.ts.map +0 -1
- package/dist/studio/components/crud/__tests__/setup.js +0 -22
- package/dist/studio/components/crud/__tests__/setup.js.map +0 -1
- package/dist/studio/components/crud/index.d.ts +0 -12
- package/dist/studio/components/crud/index.d.ts.map +0 -1
- package/dist/studio/components/crud/index.js +0 -11
- package/dist/studio/components/crud/index.js.map +0 -1
- package/dist/studio/hooks/useConnection.d.ts +0 -127
- package/dist/studio/hooks/useConnection.d.ts.map +0 -1
- package/dist/studio/hooks/useConnection.js +0 -414
- package/dist/studio/hooks/useConnection.js.map +0 -1
- package/dist/studio/hooks/useDatabaseBrowser.d.ts +0 -107
- package/dist/studio/hooks/useDatabaseBrowser.d.ts.map +0 -1
- package/dist/studio/hooks/useDatabaseBrowser.js +0 -294
- package/dist/studio/hooks/useDatabaseBrowser.js.map +0 -1
- package/dist/studio/index.d.ts +0 -16
- package/dist/studio/index.d.ts.map +0 -1
- package/dist/studio/index.js +0 -14
- package/dist/studio/index.js.map +0 -1
- package/dist/studio/types/connection.d.ts +0 -266
- package/dist/studio/types/connection.d.ts.map +0 -1
- package/dist/studio/types/connection.js +0 -159
- package/dist/studio/types/connection.js.map +0 -1
- package/dist/studio/vitest.config.d.ts +0 -3
- package/dist/studio/vitest.config.d.ts.map +0 -1
- package/dist/studio/vitest.config.js +0 -33
- package/dist/studio/vitest.config.js.map +0 -1
- package/dist/translator/aggregation-translator.d.ts +0 -51
- package/dist/translator/aggregation-translator.d.ts.map +0 -1
- package/dist/translator/aggregation-translator.js +0 -324
- package/dist/translator/aggregation-translator.js.map +0 -1
- package/dist/translator/dialect.d.ts +0 -131
- package/dist/translator/dialect.d.ts.map +0 -1
- package/dist/translator/dialect.js +0 -276
- package/dist/translator/dialect.js.map +0 -1
- package/dist/translator/geo-translator.d.ts +0 -91
- package/dist/translator/geo-translator.d.ts.map +0 -1
- package/dist/translator/geo-translator.js +0 -587
- package/dist/translator/geo-translator.js.map +0 -1
- package/dist/translator/hybrid-translator.d.ts +0 -70
- package/dist/translator/hybrid-translator.d.ts.map +0 -1
- package/dist/translator/hybrid-translator.js +0 -193
- package/dist/translator/hybrid-translator.js.map +0 -1
- package/dist/translator/index.d.ts +0 -13
- package/dist/translator/index.d.ts.map +0 -1
- package/dist/translator/index.js +0 -11
- package/dist/translator/index.js.map +0 -1
- package/dist/translator/query-translator.d.ts +0 -211
- package/dist/translator/query-translator.d.ts.map +0 -1
- package/dist/translator/query-translator.js +0 -1276
- package/dist/translator/query-translator.js.map +0 -1
- package/dist/translator/search-highlight.d.ts +0 -83
- package/dist/translator/search-highlight.d.ts.map +0 -1
- package/dist/translator/search-highlight.js +0 -83
- package/dist/translator/search-highlight.js.map +0 -1
- package/dist/translator/search-translator.d.ts +0 -155
- package/dist/translator/search-translator.d.ts.map +0 -1
- package/dist/translator/search-translator.js +0 -241
- package/dist/translator/search-translator.js.map +0 -1
- package/dist/translator/stages/add-fields-stage.d.ts +0 -7
- package/dist/translator/stages/add-fields-stage.d.ts.map +0 -1
- package/dist/translator/stages/add-fields-stage.js +0 -72
- package/dist/translator/stages/add-fields-stage.js.map +0 -1
- package/dist/translator/stages/bucket-stage.d.ts +0 -7
- package/dist/translator/stages/bucket-stage.d.ts.map +0 -1
- package/dist/translator/stages/bucket-stage.js +0 -87
- package/dist/translator/stages/bucket-stage.js.map +0 -1
- package/dist/translator/stages/count-stage.d.ts +0 -7
- package/dist/translator/stages/count-stage.d.ts.map +0 -1
- package/dist/translator/stages/count-stage.js +0 -12
- package/dist/translator/stages/count-stage.js.map +0 -1
- package/dist/translator/stages/expression-translator.d.ts +0 -68
- package/dist/translator/stages/expression-translator.d.ts.map +0 -1
- package/dist/translator/stages/expression-translator.js +0 -467
- package/dist/translator/stages/expression-translator.js.map +0 -1
- package/dist/translator/stages/facet-stage.d.ts +0 -13
- package/dist/translator/stages/facet-stage.d.ts.map +0 -1
- package/dist/translator/stages/facet-stage.js +0 -26
- package/dist/translator/stages/facet-stage.js.map +0 -1
- package/dist/translator/stages/fusion-stages.d.ts +0 -118
- package/dist/translator/stages/fusion-stages.d.ts.map +0 -1
- package/dist/translator/stages/fusion-stages.js +0 -201
- package/dist/translator/stages/fusion-stages.js.map +0 -1
- package/dist/translator/stages/group-stage.d.ts +0 -8
- package/dist/translator/stages/group-stage.d.ts.map +0 -1
- package/dist/translator/stages/group-stage.js +0 -123
- package/dist/translator/stages/group-stage.js.map +0 -1
- package/dist/translator/stages/index.d.ts +0 -24
- package/dist/translator/stages/index.d.ts.map +0 -1
- package/dist/translator/stages/index.js +0 -24
- package/dist/translator/stages/index.js.map +0 -1
- package/dist/translator/stages/join-optimizer.d.ts +0 -37
- package/dist/translator/stages/join-optimizer.d.ts.map +0 -1
- package/dist/translator/stages/join-optimizer.js +0 -93
- package/dist/translator/stages/join-optimizer.js.map +0 -1
- package/dist/translator/stages/limit-stage.d.ts +0 -7
- package/dist/translator/stages/limit-stage.d.ts.map +0 -1
- package/dist/translator/stages/limit-stage.js +0 -11
- package/dist/translator/stages/limit-stage.js.map +0 -1
- package/dist/translator/stages/lookup-stage.d.ts +0 -7
- package/dist/translator/stages/lookup-stage.d.ts.map +0 -1
- package/dist/translator/stages/lookup-stage.js +0 -73
- package/dist/translator/stages/lookup-stage.js.map +0 -1
- package/dist/translator/stages/match-stage.d.ts +0 -7
- package/dist/translator/stages/match-stage.d.ts.map +0 -1
- package/dist/translator/stages/match-stage.js +0 -14
- package/dist/translator/stages/match-stage.js.map +0 -1
- package/dist/translator/stages/optimizer.d.ts +0 -15
- package/dist/translator/stages/optimizer.d.ts.map +0 -1
- package/dist/translator/stages/optimizer.js +0 -249
- package/dist/translator/stages/optimizer.js.map +0 -1
- package/dist/translator/stages/parallel-facet.d.ts +0 -47
- package/dist/translator/stages/parallel-facet.d.ts.map +0 -1
- package/dist/translator/stages/parallel-facet.js +0 -57
- package/dist/translator/stages/parallel-facet.js.map +0 -1
- package/dist/translator/stages/project-stage.d.ts +0 -8
- package/dist/translator/stages/project-stage.d.ts.map +0 -1
- package/dist/translator/stages/project-stage.js +0 -145
- package/dist/translator/stages/project-stage.js.map +0 -1
- package/dist/translator/stages/search-stage.d.ts +0 -60
- package/dist/translator/stages/search-stage.d.ts.map +0 -1
- package/dist/translator/stages/search-stage.js +0 -89
- package/dist/translator/stages/search-stage.js.map +0 -1
- package/dist/translator/stages/skip-stage.d.ts +0 -7
- package/dist/translator/stages/skip-stage.d.ts.map +0 -1
- package/dist/translator/stages/skip-stage.js +0 -11
- package/dist/translator/stages/skip-stage.js.map +0 -1
- package/dist/translator/stages/sort-stage.d.ts +0 -7
- package/dist/translator/stages/sort-stage.d.ts.map +0 -1
- package/dist/translator/stages/sort-stage.js +0 -21
- package/dist/translator/stages/sort-stage.js.map +0 -1
- package/dist/translator/stages/types.d.ts +0 -136
- package/dist/translator/stages/types.d.ts.map +0 -1
- package/dist/translator/stages/types.js +0 -5
- package/dist/translator/stages/types.js.map +0 -1
- package/dist/translator/stages/unwind-stage.d.ts +0 -7
- package/dist/translator/stages/unwind-stage.d.ts.map +0 -1
- package/dist/translator/stages/unwind-stage.js +0 -61
- package/dist/translator/stages/unwind-stage.js.map +0 -1
- package/dist/translator/stages/vector-search-stage.d.ts +0 -53
- package/dist/translator/stages/vector-search-stage.d.ts.map +0 -1
- package/dist/translator/stages/vector-search-stage.js +0 -62
- package/dist/translator/stages/vector-search-stage.js.map +0 -1
- package/dist/translator/update-translator.d.ts +0 -148
- package/dist/translator/update-translator.d.ts.map +0 -1
- package/dist/translator/update-translator.js +0 -819
- package/dist/translator/update-translator.js.map +0 -1
- package/dist/translator/vector-translator.d.ts +0 -89
- package/dist/translator/vector-translator.d.ts.map +0 -1
- package/dist/translator/vector-translator.js +0 -106
- package/dist/translator/vector-translator.js.map +0 -1
- package/dist/types/env.d.ts +0 -31
- package/dist/types/env.d.ts.map +0 -1
- package/dist/types/env.js +0 -5
- package/dist/types/env.js.map +0 -1
- package/dist/types/function.d.ts +0 -65
- package/dist/types/function.d.ts.map +0 -1
- package/dist/types/function.js +0 -5
- package/dist/types/function.js.map +0 -1
- package/dist/types/index.d.ts +0 -137
- package/dist/types/index.d.ts.map +0 -1
- package/dist/types/index.js +0 -13
- package/dist/types/index.js.map +0 -1
- package/dist/types/mongodb.d.ts +0 -258
- package/dist/types/mongodb.d.ts.map +0 -1
- package/dist/types/mongodb.js +0 -5
- package/dist/types/mongodb.js.map +0 -1
- package/dist/types/objectid.d.ts +0 -130
- package/dist/types/objectid.d.ts.map +0 -1
- package/dist/types/objectid.js +0 -314
- package/dist/types/objectid.js.map +0 -1
- package/dist/types/rpc.d.ts +0 -313
- package/dist/types/rpc.d.ts.map +0 -1
- package/dist/types/rpc.js +0 -136
- package/dist/types/rpc.js.map +0 -1
- package/dist/types/vectorize.d.ts +0 -136
- package/dist/types/vectorize.d.ts.map +0 -1
- package/dist/types/vectorize.js +0 -8
- package/dist/types/vectorize.js.map +0 -1
- package/dist/utils/sql-safety.d.ts +0 -64
- package/dist/utils/sql-safety.d.ts.map +0 -1
- package/dist/utils/sql-safety.js +0 -112
- package/dist/utils/sql-safety.js.map +0 -1
- package/dist/validation/document-validator.d.ts +0 -195
- package/dist/validation/document-validator.d.ts.map +0 -1
- package/dist/validation/document-validator.js +0 -529
- package/dist/validation/document-validator.js.map +0 -1
- package/dist/vectorize/document-serializer.d.ts +0 -119
- package/dist/vectorize/document-serializer.d.ts.map +0 -1
- package/dist/vectorize/document-serializer.js +0 -320
- package/dist/vectorize/document-serializer.js.map +0 -1
- package/dist/wire/auth/index.d.ts +0 -5
- package/dist/wire/auth/index.d.ts.map +0 -1
- package/dist/wire/auth/index.js +0 -5
- package/dist/wire/auth/index.js.map +0 -1
- package/dist/wire/auth/scram.d.ts +0 -160
- package/dist/wire/auth/scram.d.ts.map +0 -1
- package/dist/wire/auth/scram.js +0 -425
- package/dist/wire/auth/scram.js.map +0 -1
- package/dist/wire/backend/interface.d.ts +0 -168
- package/dist/wire/backend/interface.d.ts.map +0 -1
- package/dist/wire/backend/interface.js +0 -10
- package/dist/wire/backend/interface.js.map +0 -1
- package/dist/wire/backend/local-sqlite.d.ts +0 -89
- package/dist/wire/backend/local-sqlite.d.ts.map +0 -1
- package/dist/wire/backend/local-sqlite.js +0 -1002
- package/dist/wire/backend/local-sqlite.js.map +0 -1
- package/dist/wire/backend/query-router.d.ts +0 -197
- package/dist/wire/backend/query-router.d.ts.map +0 -1
- package/dist/wire/backend/query-router.js +0 -590
- package/dist/wire/backend/query-router.js.map +0 -1
- package/dist/wire/backend/validation.d.ts +0 -26
- package/dist/wire/backend/validation.d.ts.map +0 -1
- package/dist/wire/backend/validation.js +0 -79
- package/dist/wire/backend/validation.js.map +0 -1
- package/dist/wire/backend/workers-proxy.d.ts +0 -95
- package/dist/wire/backend/workers-proxy.d.ts.map +0 -1
- package/dist/wire/backend/workers-proxy.js +0 -429
- package/dist/wire/backend/workers-proxy.js.map +0 -1
- package/dist/wire/commands/admin.d.ts +0 -49
- package/dist/wire/commands/admin.d.ts.map +0 -1
- package/dist/wire/commands/admin.js +0 -272
- package/dist/wire/commands/admin.js.map +0 -1
- package/dist/wire/commands/aggregate.d.ts +0 -15
- package/dist/wire/commands/aggregate.d.ts.map +0 -1
- package/dist/wire/commands/aggregate.js +0 -98
- package/dist/wire/commands/aggregate.js.map +0 -1
- package/dist/wire/commands/auth.d.ts +0 -58
- package/dist/wire/commands/auth.d.ts.map +0 -1
- package/dist/wire/commands/auth.js +0 -158
- package/dist/wire/commands/auth.js.map +0 -1
- package/dist/wire/commands/crud.d.ts +0 -49
- package/dist/wire/commands/crud.d.ts.map +0 -1
- package/dist/wire/commands/crud.js +0 -336
- package/dist/wire/commands/crud.js.map +0 -1
- package/dist/wire/commands/hello.d.ts +0 -35
- package/dist/wire/commands/hello.d.ts.map +0 -1
- package/dist/wire/commands/hello.js +0 -204
- package/dist/wire/commands/hello.js.map +0 -1
- package/dist/wire/commands/index.d.ts +0 -24
- package/dist/wire/commands/index.d.ts.map +0 -1
- package/dist/wire/commands/index.js +0 -145
- package/dist/wire/commands/index.js.map +0 -1
- package/dist/wire/commands/router.d.ts +0 -46
- package/dist/wire/commands/router.d.ts.map +0 -1
- package/dist/wire/commands/router.js +0 -151
- package/dist/wire/commands/router.js.map +0 -1
- package/dist/wire/commands/types.d.ts +0 -51
- package/dist/wire/commands/types.d.ts.map +0 -1
- package/dist/wire/commands/types.js +0 -15
- package/dist/wire/commands/types.js.map +0 -1
- package/dist/wire/index.d.ts +0 -15
- package/dist/wire/index.d.ts.map +0 -1
- package/dist/wire/index.js +0 -19
- package/dist/wire/index.js.map +0 -1
- package/dist/wire/message.d.ts +0 -49
- package/dist/wire/message.d.ts.map +0 -1
- package/dist/wire/message.js +0 -299
- package/dist/wire/message.js.map +0 -1
- package/dist/wire/server.d.ts +0 -145
- package/dist/wire/server.d.ts.map +0 -1
- package/dist/wire/server.js +0 -284
- package/dist/wire/server.js.map +0 -1
- package/dist/wire/types.d.ts +0 -140
- package/dist/wire/types.d.ts.map +0 -1
- package/dist/wire/types.js +0 -64
- package/dist/wire/types.js.map +0 -1
- package/dist/worker.d.ts.map +0 -1
package/dist/cli/mcp.js
DELETED
|
@@ -1,418 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* CLI MCP Command
|
|
3
|
-
*
|
|
4
|
-
* Implements the `mcp` command for the MondoDB CLI.
|
|
5
|
-
* Starts an MCP (Model Context Protocol) server that communicates via stdio.
|
|
6
|
-
*
|
|
7
|
-
* Features:
|
|
8
|
-
* - --connection <url>: Connect to a remote MondoDB Worker
|
|
9
|
-
* - --local <path>: Use a local SQLite database
|
|
10
|
-
*
|
|
11
|
-
* Usage:
|
|
12
|
-
* mongo.do mcp --connection https://my-worker.workers.dev
|
|
13
|
-
* mongo.do mcp --local ./data/local.db
|
|
14
|
-
*
|
|
15
|
-
* The MCP server exposes tools for AI agents to interact with the database:
|
|
16
|
-
* - search: Query documents
|
|
17
|
-
* - fetch: Retrieve full documents by ID
|
|
18
|
-
* - do: Execute operations (when enabled)
|
|
19
|
-
*
|
|
20
|
-
* @module cli/mcp
|
|
21
|
-
*/
|
|
22
|
-
import { createMcpServer } from '../mcp/server.js';
|
|
23
|
-
import { createStdioTransport } from '../mcp/transport/stdio.js';
|
|
24
|
-
import { RpcClient } from '../rpc/rpc-client.js';
|
|
25
|
-
// Lazy import for LocalSQLiteBackend to avoid issues in non-Bun environments
|
|
26
|
-
let LocalSQLiteBackend = null;
|
|
27
|
-
async function getLocalSQLiteBackend() {
|
|
28
|
-
if (!LocalSQLiteBackend) {
|
|
29
|
-
try {
|
|
30
|
-
const module = await import('../wire/backend/local-sqlite.js');
|
|
31
|
-
LocalSQLiteBackend = module.LocalSQLiteBackend;
|
|
32
|
-
}
|
|
33
|
-
catch (error) {
|
|
34
|
-
throw new Error('Local SQLite backend requires Bun runtime. Use --connection for remote database access.');
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
return LocalSQLiteBackend;
|
|
38
|
-
}
|
|
39
|
-
/**
|
|
40
|
-
* Register the MCP command with the CLI program
|
|
41
|
-
*
|
|
42
|
-
* @param program - The CLI program to register the command with
|
|
43
|
-
*/
|
|
44
|
-
export function registerMcpCommand(program) {
|
|
45
|
-
program
|
|
46
|
-
.command('mcp')
|
|
47
|
-
.description('Start an MCP server for AI agents to interact with the database via stdio')
|
|
48
|
-
.option('-c, --connection <url>', 'Remote MondoDB Worker URL (e.g., https://my-worker.workers.dev)')
|
|
49
|
-
.option('-l, --local <path>', 'Local SQLite database path')
|
|
50
|
-
.action(async (options) => {
|
|
51
|
-
const controller = await startMcpServer(options);
|
|
52
|
-
// Handle graceful shutdown on SIGINT/SIGTERM
|
|
53
|
-
const handleSignal = async () => {
|
|
54
|
-
await controller.stop();
|
|
55
|
-
process.exit(0);
|
|
56
|
-
};
|
|
57
|
-
process.on('SIGINT', handleSignal);
|
|
58
|
-
process.on('SIGTERM', handleSignal);
|
|
59
|
-
});
|
|
60
|
-
}
|
|
61
|
-
/**
|
|
62
|
-
* Validate that a string is a valid HTTP or HTTPS URL.
|
|
63
|
-
*
|
|
64
|
-
* @param urlString - The URL string to validate
|
|
65
|
-
* @returns true if the URL is valid HTTP/HTTPS, false otherwise
|
|
66
|
-
* @internal
|
|
67
|
-
*/
|
|
68
|
-
function isValidUrl(urlString) {
|
|
69
|
-
try {
|
|
70
|
-
const url = new URL(urlString);
|
|
71
|
-
return url.protocol === 'http:' || url.protocol === 'https:';
|
|
72
|
-
}
|
|
73
|
-
catch {
|
|
74
|
-
return false;
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
/**
|
|
78
|
-
* Start the MCP server with the given configuration.
|
|
79
|
-
*
|
|
80
|
-
* The server communicates via stdio using the Model Context Protocol (MCP).
|
|
81
|
-
* It exposes database operations as tools that AI agents can invoke.
|
|
82
|
-
*
|
|
83
|
-
* @param options - Server configuration options
|
|
84
|
-
* @returns Promise resolving to a controller for managing the server lifecycle
|
|
85
|
-
* @throws {Error} If neither --connection nor --local is provided
|
|
86
|
-
* @throws {Error} If both --connection and --local are provided
|
|
87
|
-
* @throws {Error} If the connection URL is invalid
|
|
88
|
-
*
|
|
89
|
-
* @example
|
|
90
|
-
* ```typescript
|
|
91
|
-
* // Remote connection
|
|
92
|
-
* const controller = await startMcpServer({
|
|
93
|
-
* connection: 'https://my-worker.workers.dev'
|
|
94
|
-
* })
|
|
95
|
-
*
|
|
96
|
-
* // Local SQLite database
|
|
97
|
-
* const controller = await startMcpServer({
|
|
98
|
-
* local: './data/local.db'
|
|
99
|
-
* })
|
|
100
|
-
*
|
|
101
|
-
* // Graceful shutdown
|
|
102
|
-
* await controller.stop()
|
|
103
|
-
* ```
|
|
104
|
-
*/
|
|
105
|
-
export async function startMcpServer(options) {
|
|
106
|
-
// Validate options
|
|
107
|
-
if (!options.connection && !options.local) {
|
|
108
|
-
throw new Error('Either --connection or --local option is required');
|
|
109
|
-
}
|
|
110
|
-
if (options.connection && options.local) {
|
|
111
|
-
throw new Error('Cannot use both --connection and --local options - they are mutually exclusive');
|
|
112
|
-
}
|
|
113
|
-
if (options.connection && !isValidUrl(options.connection)) {
|
|
114
|
-
throw new Error(`Invalid connection URL: ${options.connection}`);
|
|
115
|
-
}
|
|
116
|
-
// Create database access
|
|
117
|
-
const dbAccess = await createMcpDatabaseAccess({
|
|
118
|
-
connection: options.connection,
|
|
119
|
-
local: options.local,
|
|
120
|
-
});
|
|
121
|
-
// Create MCP server
|
|
122
|
-
const mcpServer = createMcpServer({
|
|
123
|
-
dbAccess,
|
|
124
|
-
name: 'mongo.do',
|
|
125
|
-
version: '1.0.0',
|
|
126
|
-
});
|
|
127
|
-
// Create stdio transport
|
|
128
|
-
const transport = createStdioTransport({
|
|
129
|
-
stdin: options.stdin ?? process.stdin,
|
|
130
|
-
stdout: options.stdout ?? process.stdout,
|
|
131
|
-
onMessage: async (request) => {
|
|
132
|
-
return await mcpServer.handleRequest(request);
|
|
133
|
-
},
|
|
134
|
-
onError: (error) => {
|
|
135
|
-
// Log errors to stderr to avoid interfering with MCP protocol on stdout
|
|
136
|
-
console.error('MCP transport error:', error.message);
|
|
137
|
-
},
|
|
138
|
-
});
|
|
139
|
-
// Start the transport
|
|
140
|
-
transport.start();
|
|
141
|
-
// Track running state
|
|
142
|
-
let running = true;
|
|
143
|
-
// Return controller
|
|
144
|
-
return {
|
|
145
|
-
get isRunning() {
|
|
146
|
-
return running && transport.isRunning;
|
|
147
|
-
},
|
|
148
|
-
async stop() {
|
|
149
|
-
if (!running) {
|
|
150
|
-
return;
|
|
151
|
-
}
|
|
152
|
-
running = false;
|
|
153
|
-
transport.close();
|
|
154
|
-
},
|
|
155
|
-
};
|
|
156
|
-
}
|
|
157
|
-
/**
|
|
158
|
-
* Create a DatabaseAccess instance for the MCP server.
|
|
159
|
-
*
|
|
160
|
-
* This factory function creates the appropriate database access implementation
|
|
161
|
-
* based on the provided options:
|
|
162
|
-
* - Remote: Uses RPC client to communicate with a MondoDB Worker
|
|
163
|
-
* - Local: Uses LocalSQLiteBackend for file-based storage (requires Bun)
|
|
164
|
-
*
|
|
165
|
-
* @param options - Connection options (either connection URL or local path)
|
|
166
|
-
* @returns Promise resolving to a DatabaseAccess instance
|
|
167
|
-
* @throws {Error} If neither connection nor local option is provided
|
|
168
|
-
*
|
|
169
|
-
* @example
|
|
170
|
-
* ```typescript
|
|
171
|
-
* // Remote database access
|
|
172
|
-
* const dbAccess = await createMcpDatabaseAccess({
|
|
173
|
-
* connection: 'https://my-worker.workers.dev'
|
|
174
|
-
* })
|
|
175
|
-
*
|
|
176
|
-
* // Local database access
|
|
177
|
-
* const dbAccess = await createMcpDatabaseAccess({
|
|
178
|
-
* local: './data/local.db'
|
|
179
|
-
* })
|
|
180
|
-
* ```
|
|
181
|
-
*/
|
|
182
|
-
export async function createMcpDatabaseAccess(options) {
|
|
183
|
-
if (options.connection) {
|
|
184
|
-
// Create remote database access via HTTP
|
|
185
|
-
return createRemoteDatabaseAccess(options.connection);
|
|
186
|
-
}
|
|
187
|
-
if (options.local) {
|
|
188
|
-
// Create local SQLite database access
|
|
189
|
-
return createLocalDatabaseAccess(options.local);
|
|
190
|
-
}
|
|
191
|
-
throw new Error('Either connection or local option must be provided');
|
|
192
|
-
}
|
|
193
|
-
/**
|
|
194
|
-
* Create a DatabaseAccess implementation for remote MondoDB Workers.
|
|
195
|
-
*
|
|
196
|
-
* Uses RPC over HTTP to communicate with the remote worker.
|
|
197
|
-
* All operations are proxied through the RPC client.
|
|
198
|
-
*
|
|
199
|
-
* @param connectionUrl - Base URL of the MondoDB Worker endpoint
|
|
200
|
-
* @returns DatabaseAccess implementation for remote operations
|
|
201
|
-
* @internal
|
|
202
|
-
*/
|
|
203
|
-
function createRemoteDatabaseAccess(connectionUrl) {
|
|
204
|
-
const rpcClient = new RpcClient(connectionUrl + '/rpc');
|
|
205
|
-
return {
|
|
206
|
-
async findOne(collection, filter) {
|
|
207
|
-
const results = await this.find(collection, filter, { limit: 1 });
|
|
208
|
-
return results[0] ?? null;
|
|
209
|
-
},
|
|
210
|
-
async find(collection, filter, options) {
|
|
211
|
-
try {
|
|
212
|
-
const result = await rpcClient.call('find', ['test', collection, filter, options]);
|
|
213
|
-
return result?.documents ?? [];
|
|
214
|
-
}
|
|
215
|
-
catch (error) {
|
|
216
|
-
throw new Error(`Failed to connect to remote database: ${error instanceof Error ? error.message : 'Network error'}`);
|
|
217
|
-
}
|
|
218
|
-
},
|
|
219
|
-
async insertOne(collection, document) {
|
|
220
|
-
try {
|
|
221
|
-
const result = await rpcClient.call('insertOne', ['test', collection, document]);
|
|
222
|
-
return result;
|
|
223
|
-
}
|
|
224
|
-
catch (error) {
|
|
225
|
-
throw new Error(`Failed to connect to remote database: ${error instanceof Error ? error.message : 'Network error'}`);
|
|
226
|
-
}
|
|
227
|
-
},
|
|
228
|
-
async insertMany(collection, documents) {
|
|
229
|
-
try {
|
|
230
|
-
const result = await rpcClient.call('insertMany', ['test', collection, documents]);
|
|
231
|
-
const insertResult = result;
|
|
232
|
-
const ids = [];
|
|
233
|
-
if (insertResult.insertedIds instanceof Map) {
|
|
234
|
-
for (const [, id] of insertResult.insertedIds) {
|
|
235
|
-
ids.push(String(id));
|
|
236
|
-
}
|
|
237
|
-
}
|
|
238
|
-
return { insertedIds: ids };
|
|
239
|
-
}
|
|
240
|
-
catch (error) {
|
|
241
|
-
throw new Error(`Failed to connect to remote database: ${error instanceof Error ? error.message : 'Network error'}`);
|
|
242
|
-
}
|
|
243
|
-
},
|
|
244
|
-
async updateOne(collection, filter, update) {
|
|
245
|
-
try {
|
|
246
|
-
const result = await rpcClient.call('updateOne', ['test', collection, filter, update]);
|
|
247
|
-
return result;
|
|
248
|
-
}
|
|
249
|
-
catch (error) {
|
|
250
|
-
throw new Error(`Failed to connect to remote database: ${error instanceof Error ? error.message : 'Network error'}`);
|
|
251
|
-
}
|
|
252
|
-
},
|
|
253
|
-
async updateMany(collection, filter, update) {
|
|
254
|
-
try {
|
|
255
|
-
const result = await rpcClient.call('updateMany', ['test', collection, filter, update]);
|
|
256
|
-
return result;
|
|
257
|
-
}
|
|
258
|
-
catch (error) {
|
|
259
|
-
throw new Error(`Failed to connect to remote database: ${error instanceof Error ? error.message : 'Network error'}`);
|
|
260
|
-
}
|
|
261
|
-
},
|
|
262
|
-
async deleteOne(collection, filter) {
|
|
263
|
-
try {
|
|
264
|
-
const result = await rpcClient.call('deleteOne', ['test', collection, filter]);
|
|
265
|
-
return result;
|
|
266
|
-
}
|
|
267
|
-
catch (error) {
|
|
268
|
-
throw new Error(`Failed to connect to remote database: ${error instanceof Error ? error.message : 'Network error'}`);
|
|
269
|
-
}
|
|
270
|
-
},
|
|
271
|
-
async deleteMany(collection, filter) {
|
|
272
|
-
try {
|
|
273
|
-
const result = await rpcClient.call('deleteMany', ['test', collection, filter]);
|
|
274
|
-
return result;
|
|
275
|
-
}
|
|
276
|
-
catch (error) {
|
|
277
|
-
throw new Error(`Failed to connect to remote database: ${error instanceof Error ? error.message : 'Network error'}`);
|
|
278
|
-
}
|
|
279
|
-
},
|
|
280
|
-
async aggregate(collection, pipeline) {
|
|
281
|
-
try {
|
|
282
|
-
const result = await rpcClient.call('aggregate', ['test', collection, pipeline]);
|
|
283
|
-
return result?.documents ?? [];
|
|
284
|
-
}
|
|
285
|
-
catch (error) {
|
|
286
|
-
throw new Error(`Failed to connect to remote database: ${error instanceof Error ? error.message : 'Network error'}`);
|
|
287
|
-
}
|
|
288
|
-
},
|
|
289
|
-
async countDocuments(collection, filter) {
|
|
290
|
-
try {
|
|
291
|
-
const result = await rpcClient.call('count', ['test', collection, filter ?? {}]);
|
|
292
|
-
return result;
|
|
293
|
-
}
|
|
294
|
-
catch (error) {
|
|
295
|
-
throw new Error(`Failed to connect to remote database: ${error instanceof Error ? error.message : 'Network error'}`);
|
|
296
|
-
}
|
|
297
|
-
},
|
|
298
|
-
async listCollections() {
|
|
299
|
-
try {
|
|
300
|
-
const result = await rpcClient.call('listCollections', ['test']);
|
|
301
|
-
return result.map((c) => c.name);
|
|
302
|
-
}
|
|
303
|
-
catch (error) {
|
|
304
|
-
throw new Error(`Failed to connect to remote database: ${error instanceof Error ? error.message : 'Network error'}`);
|
|
305
|
-
}
|
|
306
|
-
},
|
|
307
|
-
async listDatabases() {
|
|
308
|
-
try {
|
|
309
|
-
const result = await rpcClient.call('listDatabases', []);
|
|
310
|
-
return result.map((d) => d.name);
|
|
311
|
-
}
|
|
312
|
-
catch (error) {
|
|
313
|
-
throw new Error(`Failed to connect to remote database: ${error instanceof Error ? error.message : 'Network error'}`);
|
|
314
|
-
}
|
|
315
|
-
},
|
|
316
|
-
getProxy() {
|
|
317
|
-
return this;
|
|
318
|
-
},
|
|
319
|
-
};
|
|
320
|
-
}
|
|
321
|
-
/**
|
|
322
|
-
* Create a DatabaseAccess implementation for local SQLite database.
|
|
323
|
-
*
|
|
324
|
-
* Uses LocalSQLiteBackend which requires the Bun runtime.
|
|
325
|
-
* The database file is created in the specified directory.
|
|
326
|
-
*
|
|
327
|
-
* @param localPath - Path to the local database file
|
|
328
|
-
* @returns Promise resolving to a DatabaseAccess implementation
|
|
329
|
-
* @throws {Error} If Bun runtime is not available
|
|
330
|
-
* @internal
|
|
331
|
-
*/
|
|
332
|
-
async function createLocalDatabaseAccess(localPath) {
|
|
333
|
-
// Extract directory from path for the backend
|
|
334
|
-
const path = await import('path');
|
|
335
|
-
const dataDir = path.dirname(localPath);
|
|
336
|
-
const BackendClass = await getLocalSQLiteBackend();
|
|
337
|
-
const backend = new BackendClass(dataDir);
|
|
338
|
-
// Default database name
|
|
339
|
-
const dbName = 'test';
|
|
340
|
-
const dbAccess = {
|
|
341
|
-
async findOne(collection, filter) {
|
|
342
|
-
const result = await backend.find(dbName, collection, {
|
|
343
|
-
filter,
|
|
344
|
-
limit: 1,
|
|
345
|
-
});
|
|
346
|
-
return result.documents[0] ?? null;
|
|
347
|
-
},
|
|
348
|
-
async find(collection, filter, options) {
|
|
349
|
-
// Build find options, only including defined properties
|
|
350
|
-
const findOptions = { filter };
|
|
351
|
-
if (options?.limit !== undefined)
|
|
352
|
-
findOptions.limit = options.limit;
|
|
353
|
-
if (options?.skip !== undefined)
|
|
354
|
-
findOptions.skip = options.skip;
|
|
355
|
-
if (options?.sort !== undefined)
|
|
356
|
-
findOptions.sort = options.sort;
|
|
357
|
-
if (options?.projection !== undefined)
|
|
358
|
-
findOptions.projection = options.projection;
|
|
359
|
-
const result = await backend.find(dbName, collection, findOptions);
|
|
360
|
-
return result.documents;
|
|
361
|
-
},
|
|
362
|
-
async insertOne(collection, document) {
|
|
363
|
-
const result = await backend.insertOne(dbName, collection, document);
|
|
364
|
-
const insertedId = result.insertedIds.get(0);
|
|
365
|
-
return { insertedId: String(insertedId) };
|
|
366
|
-
},
|
|
367
|
-
async insertMany(collection, documents) {
|
|
368
|
-
const result = await backend.insertMany(dbName, collection, documents);
|
|
369
|
-
const ids = [];
|
|
370
|
-
for (const [, id] of result.insertedIds) {
|
|
371
|
-
ids.push(String(id));
|
|
372
|
-
}
|
|
373
|
-
return { insertedIds: ids };
|
|
374
|
-
},
|
|
375
|
-
async updateOne(collection, filter, update) {
|
|
376
|
-
const result = await backend.updateOne(dbName, collection, filter, update);
|
|
377
|
-
return {
|
|
378
|
-
matchedCount: result.matchedCount,
|
|
379
|
-
modifiedCount: result.modifiedCount,
|
|
380
|
-
};
|
|
381
|
-
},
|
|
382
|
-
async updateMany(collection, filter, update) {
|
|
383
|
-
const result = await backend.updateMany(dbName, collection, filter, update);
|
|
384
|
-
return {
|
|
385
|
-
matchedCount: result.matchedCount,
|
|
386
|
-
modifiedCount: result.modifiedCount,
|
|
387
|
-
};
|
|
388
|
-
},
|
|
389
|
-
async deleteOne(collection, filter) {
|
|
390
|
-
const result = await backend.deleteOne(dbName, collection, filter);
|
|
391
|
-
return { deletedCount: result.deletedCount };
|
|
392
|
-
},
|
|
393
|
-
async deleteMany(collection, filter) {
|
|
394
|
-
const result = await backend.deleteMany(dbName, collection, filter);
|
|
395
|
-
return { deletedCount: result.deletedCount };
|
|
396
|
-
},
|
|
397
|
-
async aggregate(collection, pipeline) {
|
|
398
|
-
const result = await backend.aggregate(dbName, collection, pipeline);
|
|
399
|
-
return result.documents;
|
|
400
|
-
},
|
|
401
|
-
async countDocuments(collection, filter) {
|
|
402
|
-
return await backend.count(dbName, collection, filter);
|
|
403
|
-
},
|
|
404
|
-
async listCollections() {
|
|
405
|
-
const collections = await backend.listCollections(dbName);
|
|
406
|
-
return collections.map((c) => c.name);
|
|
407
|
-
},
|
|
408
|
-
async listDatabases() {
|
|
409
|
-
const databases = await backend.listDatabases();
|
|
410
|
-
return databases.map((d) => d.name);
|
|
411
|
-
},
|
|
412
|
-
getProxy() {
|
|
413
|
-
return dbAccess;
|
|
414
|
-
},
|
|
415
|
-
};
|
|
416
|
-
return dbAccess;
|
|
417
|
-
}
|
|
418
|
-
//# sourceMappingURL=mcp.js.map
|
package/dist/cli/mcp.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"mcp.js","sourceRoot":"","sources":["../../src/cli/mcp.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/server.d.ts
DELETED
|
@@ -1,179 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* CLI Server Module
|
|
3
|
-
*
|
|
4
|
-
* Enhanced CLI for MondoDB wire protocol server with support for
|
|
5
|
-
* local SQLite backend and remote Cloudflare Workers proxy.
|
|
6
|
-
*
|
|
7
|
-
* @module cli/server
|
|
8
|
-
*
|
|
9
|
-
* @example
|
|
10
|
-
* ```typescript
|
|
11
|
-
* import { parseArgs, runServer, printStartupMessage } from './server'
|
|
12
|
-
*
|
|
13
|
-
* const options = parseArgs(process.argv.slice(2))
|
|
14
|
-
* if (options.help) {
|
|
15
|
-
* printHelp()
|
|
16
|
-
* process.exit(0)
|
|
17
|
-
* }
|
|
18
|
-
*
|
|
19
|
-
* const controller = await runServer(options)
|
|
20
|
-
* printStartupMessage(options)
|
|
21
|
-
*
|
|
22
|
-
* // Later, gracefully shutdown
|
|
23
|
-
* await controller.stop()
|
|
24
|
-
* ```
|
|
25
|
-
*/
|
|
26
|
-
import type { MondoBackend } from '../wire/backend/interface.js';
|
|
27
|
-
/**
|
|
28
|
-
* Command-line options for the MondoDB server.
|
|
29
|
-
*/
|
|
30
|
-
export interface CLIOptions {
|
|
31
|
-
/** Port number to listen on (1-65535) */
|
|
32
|
-
port: number;
|
|
33
|
-
/** Host address to bind to (e.g., 'localhost', '0.0.0.0') */
|
|
34
|
-
host: string;
|
|
35
|
-
/** Directory path for local SQLite data storage */
|
|
36
|
-
dataDir: string;
|
|
37
|
-
/** Optional URL for remote Cloudflare Workers endpoint */
|
|
38
|
-
remote?: string;
|
|
39
|
-
/** Enable verbose logging output */
|
|
40
|
-
verbose: boolean;
|
|
41
|
-
/** Display help message and exit */
|
|
42
|
-
help: boolean;
|
|
43
|
-
}
|
|
44
|
-
/**
|
|
45
|
-
* Controller interface for managing a running server instance.
|
|
46
|
-
* Provides methods and properties to monitor and control the server lifecycle.
|
|
47
|
-
*/
|
|
48
|
-
export interface ServerController {
|
|
49
|
-
/** Gracefully stop the server and close all connections */
|
|
50
|
-
stop(): Promise<void>;
|
|
51
|
-
/** Whether the server is currently running */
|
|
52
|
-
isRunning: boolean;
|
|
53
|
-
/** Whether the server is accepting new connections */
|
|
54
|
-
isAcceptingConnections: boolean;
|
|
55
|
-
/** Number of currently active client connections */
|
|
56
|
-
activeConnections: number;
|
|
57
|
-
/** The address the server is bound to */
|
|
58
|
-
address: {
|
|
59
|
-
host: string;
|
|
60
|
-
port: number;
|
|
61
|
-
};
|
|
62
|
-
}
|
|
63
|
-
/**
|
|
64
|
-
* Parse command-line arguments into a CLIOptions object.
|
|
65
|
-
*
|
|
66
|
-
* Supports both long-form (--port) and short-form (-p) arguments.
|
|
67
|
-
* Unknown arguments are silently ignored.
|
|
68
|
-
*
|
|
69
|
-
* @param args - Array of command-line arguments (typically process.argv.slice(2))
|
|
70
|
-
* @returns Parsed CLI options with defaults applied
|
|
71
|
-
*
|
|
72
|
-
* @example
|
|
73
|
-
* ```typescript
|
|
74
|
-
* const options = parseArgs(['--port', '27018', '--verbose'])
|
|
75
|
-
* // options.port === 27018
|
|
76
|
-
* // options.verbose === true
|
|
77
|
-
* ```
|
|
78
|
-
*/
|
|
79
|
-
export declare function parseArgs(args: string[]): CLIOptions;
|
|
80
|
-
/**
|
|
81
|
-
* Validation result returned by validateOptions.
|
|
82
|
-
*/
|
|
83
|
-
export interface ValidationResult {
|
|
84
|
-
/** Whether all options are valid */
|
|
85
|
-
valid: boolean;
|
|
86
|
-
/** Array of error messages (empty if valid) */
|
|
87
|
-
errors: string[];
|
|
88
|
-
}
|
|
89
|
-
/**
|
|
90
|
-
* Validate CLI options and return a result with all validation errors.
|
|
91
|
-
*
|
|
92
|
-
* Validates:
|
|
93
|
-
* - Port is a valid integer between 1 and 65535
|
|
94
|
-
* - Host is a non-empty string
|
|
95
|
-
* - Data directory is a non-empty string (unless in remote mode)
|
|
96
|
-
* - Remote URL (if provided) is a valid HTTP/HTTPS URL
|
|
97
|
-
*
|
|
98
|
-
* @param options - CLI options to validate
|
|
99
|
-
* @returns ValidationResult with valid boolean and errors array
|
|
100
|
-
*
|
|
101
|
-
* @example
|
|
102
|
-
* ```typescript
|
|
103
|
-
* const result = validateOptions({ port: 0, host: 'localhost', ... })
|
|
104
|
-
* if (!result.valid) {
|
|
105
|
-
* console.error(result.errors.join('\n'))
|
|
106
|
-
* }
|
|
107
|
-
* ```
|
|
108
|
-
*/
|
|
109
|
-
export declare function validateOptions(options: CLIOptions): ValidationResult;
|
|
110
|
-
/**
|
|
111
|
-
* Create the appropriate storage backend based on CLI options.
|
|
112
|
-
*
|
|
113
|
-
* - If `options.remote` is set, creates a WorkersProxyBackend that forwards
|
|
114
|
-
* requests to a remote Cloudflare Workers endpoint.
|
|
115
|
-
* - Otherwise, creates a LocalSQLiteBackend for local file-based storage.
|
|
116
|
-
*
|
|
117
|
-
* @param options - CLI options containing backend configuration
|
|
118
|
-
* @returns Promise resolving to the configured backend instance
|
|
119
|
-
*
|
|
120
|
-
* @example
|
|
121
|
-
* ```typescript
|
|
122
|
-
* // Local backend
|
|
123
|
-
* const local = await createBackend({ dataDir: './data', ... })
|
|
124
|
-
*
|
|
125
|
-
* // Remote backend
|
|
126
|
-
* const remote = await createBackend({ remote: 'https://my-worker.dev', ... })
|
|
127
|
-
* ```
|
|
128
|
-
*/
|
|
129
|
-
export declare function createBackend(options: CLIOptions): Promise<MondoBackend>;
|
|
130
|
-
/**
|
|
131
|
-
* Print usage help message to stdout.
|
|
132
|
-
* Displays all available command-line options with descriptions and examples.
|
|
133
|
-
*/
|
|
134
|
-
export declare function printHelp(): void;
|
|
135
|
-
/**
|
|
136
|
-
* Print server startup message to stdout.
|
|
137
|
-
* Displays connection string and backend mode information.
|
|
138
|
-
*
|
|
139
|
-
* @param options - CLI options used to start the server
|
|
140
|
-
*/
|
|
141
|
-
export declare function printStartupMessage(options: CLIOptions): void;
|
|
142
|
-
/**
|
|
143
|
-
* Print server shutdown message to stdout.
|
|
144
|
-
* Called after graceful server shutdown completes.
|
|
145
|
-
*/
|
|
146
|
-
export declare function printShutdownMessage(): void;
|
|
147
|
-
/**
|
|
148
|
-
* Start the MongoDB wire protocol server with the given options.
|
|
149
|
-
*
|
|
150
|
-
* This is the main entry point for starting a MondoDB server. It:
|
|
151
|
-
* 1. Validates the provided options
|
|
152
|
-
* 2. Creates the appropriate backend (local or remote)
|
|
153
|
-
* 3. Starts the wire protocol server
|
|
154
|
-
* 4. Sets up signal handlers for graceful shutdown
|
|
155
|
-
*
|
|
156
|
-
* @param options - Server configuration options
|
|
157
|
-
* @param backend - Optional pre-configured backend (for testing)
|
|
158
|
-
* @returns Promise resolving to a ServerController for managing the server
|
|
159
|
-
* @throws {Error} If options are invalid or server fails to start
|
|
160
|
-
*
|
|
161
|
-
* @example
|
|
162
|
-
* ```typescript
|
|
163
|
-
* const controller = await runServer({
|
|
164
|
-
* port: 27017,
|
|
165
|
-
* host: 'localhost',
|
|
166
|
-
* dataDir: './data',
|
|
167
|
-
* verbose: false,
|
|
168
|
-
* help: false,
|
|
169
|
-
* })
|
|
170
|
-
*
|
|
171
|
-
* // Check server status
|
|
172
|
-
* console.log(controller.isRunning) // true
|
|
173
|
-
*
|
|
174
|
-
* // Graceful shutdown
|
|
175
|
-
* await controller.stop()
|
|
176
|
-
* ```
|
|
177
|
-
*/
|
|
178
|
-
export declare function runServer(options: CLIOptions, backend?: MondoBackend): Promise<ServerController>;
|
|
179
|
-
//# sourceMappingURL=server.d.ts.map
|
package/dist/cli/server.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/cli/server.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAA;AA4BhE;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,yCAAyC;IACzC,IAAI,EAAE,MAAM,CAAA;IACZ,6DAA6D;IAC7D,IAAI,EAAE,MAAM,CAAA;IACZ,mDAAmD;IACnD,OAAO,EAAE,MAAM,CAAA;IACf,0DAA0D;IAC1D,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,oCAAoC;IACpC,OAAO,EAAE,OAAO,CAAA;IAChB,oCAAoC;IACpC,IAAI,EAAE,OAAO,CAAA;CACd;AAED;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,2DAA2D;IAC3D,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IACrB,8CAA8C;IAC9C,SAAS,EAAE,OAAO,CAAA;IAClB,sDAAsD;IACtD,sBAAsB,EAAE,OAAO,CAAA;IAC/B,oDAAoD;IACpD,iBAAiB,EAAE,MAAM,CAAA;IACzB,yCAAyC;IACzC,OAAO,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAA;CACxC;AAMD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,UAAU,CAiGpD;AAMD;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,oCAAoC;IACpC,KAAK,EAAE,OAAO,CAAA;IACd,+CAA+C;IAC/C,MAAM,EAAE,MAAM,EAAE,CAAA;CACjB;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,UAAU,GAAG,gBAAgB,CA8CrE;AAMD;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,aAAa,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,YAAY,CAAC,CAW9E;AAMD;;;GAGG;AACH,wBAAgB,SAAS,IAAI,IAAI,CAkChC;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,UAAU,GAAG,IAAI,CAY7D;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,IAAI,IAAI,CAE3C;AAMD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,wBAAsB,SAAS,CAC7B,OAAO,EAAE,UAAU,EACnB,OAAO,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,gBAAgB,CAAC,CAqG3B"}
|