什么是 io.github.bluwork/mongo-scout-mcp?
用 AI 巡检 MongoDB 数据库,提供安全防护、实时监控与数据质量保障能力。
README
Mongo Scout MCP
Scout your MongoDB databases with AI - A production-ready Model Context Protocol server with built-in safety features, live monitoring, and data quality tools.
What You Get
You ask:
"Anything unusual happening with order volume this month?"
Mongo Scout returns:
Volume Analysis: orders
Statistics (last 30 days)
| Metric | Value |
|---|---|
| Daily Average | 2,847 documents |
| Standard Deviation | 412 |
| Min / Max | 1,923 / 3,601 |
Anomalies Detected
- Feb 14 — 5,892 documents (+7.4σ) — Valentine's Day spike
- Feb 22 — 847 documents (-4.9σ) — Payment gateway outage window
- Mar 1 — 4,201 documents (+3.3σ) — Month-start subscription renewals
Recommendations
- Feb 22 drop warrants investigation — possible data loss during outage
- Consider auto-scaling rules for predictable spikes (month boundaries, holidays)
- Set up alerts for volumes exceeding ±3σ from rolling average
That's detectVolumeAnomalies — one of 50 tools covering exploration, querying, diagnostics, monitoring, data quality, and safe writes.
Quick Start
Claude Code
claude mcp add mongo-scout -- npx -y mongo-scout-mcp mongodb://localhost:27017 mydb
Then ask: "What collections do I have and what do their schemas look like?"
<details> <summary>Claude Desktop</summary>Add to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):
{
"mcpServers": {
"mongo-scout": {
"command": "npx",
"args": ["-y", "mongo-scout-mcp", "mongodb://localhost:27017", "mydb"],
"type": "stdio"
}
}
}
Add to your MCP settings:
{
"mongo-scout": {
"command": "npx",
"args": ["-y", "mongo-scout-mcp", "mongodb://localhost:27017", "mydb"]
}
}
The server runs in read-only mode by default. For write operations, run a separate instance:
{
"mcpServers": {
"mongo-scout-readonly": {
"command": "npx",
"args": ["-y", "mongo-scout-mcp", "--read-only", "mongodb://localhost:27017", "mydb"],
"type": "stdio"
},
"mongo-scout-readwrite": {
"command": "npx",
"args": ["-y", "mongo-scout-mcp", "--read-write", "mongodb://localhost:27017", "mydb_dev"],
"type": "stdio"
}
}
}
- mongo-scout-readonly: Safe exploration, no risk of data modification
- mongo-scout-readwrite: Write operations when explicitly needed
Tools
Explore — understand your database
listDatabases— all databases in the instancegetDatabaseStats— storage and performance statisticslistCollections— collections in the current databasegetCollectionStats— size, document count, index detailsinferSchema— schema inference from sampled documents
Query — find and analyze documents
find— query documents with filtering, sorting, projectionaggregate— run aggregation pipelinescount— count documents matching a querydistinct— unique values for a fieldtextSearch— full-text search across indexed fieldsexplainQuery— query execution plan analysis
Diagnose — spot problems early
detectVolumeAnomalies— unusual patterns in document volumeanalyzeQueryPerformance— query optimization using explain plans
Monitor — watch it live
getServerStatus— server performance metricsgetCurrentOperations— currently running operationsgetConnectionPoolStats— connection pool healthgetProfilerStats— profiler data and slow operationsgetLiveMetrics— real-time metrics with continuous updatesgetHottestCollections— collections with highest activitygetCollectionMetrics— detailed per-collection metricsgetSlowestOperations— slow query trackingrunAdminCommand— execute admin commands
Data Quality — trust your data
findDuplicates— duplicate documents by field combinationfindOrphans— orphaned references across collectionsfindMissingFields— documents missing required fieldsfindInconsistentTypes— type inconsistencies across documentsvalidateDocuments— custom validation with MongoDB$expr
Relationships — follow the references
exploreRelationships— multi-hop relationship traversal
Time Series — temporal analysis
findRecent— documents within a time windowfindInTimeRange— date range queries with optional grouping
Indexes — manage your indexes
listIndexes— all indexes for a collectioncreateIndex— create new indexesdropIndex— remove indexes
Export — get data out
exportCollection— JSON, JSONL, or CSVcloneCollection— clone with filtering and index copying
Preview — dry-run before changing anything
previewUpdate/previewDelete— see what would change before committingpreviewBulkWrite— preview bulk operations
Write (read-write only) — safe modifications
insertOne/insertMany— insert documentsupdateOne/updateMany— update with dryRun and maxDocuments limitsreplaceOne— replace a single documentfindOneAndUpdate— find and update atomicallydeleteOne/deleteMany— delete with dryRun and maxDocuments limitsbulkWrite— multiple write operations in one callrenameField— rename fields with dry-run and index migrationcreateCollection/dropCollection— collection management
Security
- Read-only by default — write operations must be explicitly enabled
- All queries are validated and sanitized
- MongoDB operator injection protection
- Connection string credential redaction in logs
- Rate limiting on all operations
- Response size limits to prevent memory exhaustion
Examples
"What collections do I have and what's the schema of users?"
listCollections()
inferSchema({ collection: "users", sampleSize: 50 })
"Find duplicate emails in the users collection."
findDuplicates({ collection: "users", fields: ["email"], options: { limit: 100 } })
"Show me order volume anomalies over the last month."
detectVolumeAnomalies({ collection: "orders", timestampField: "createdAt", options: { groupBy: "day", lookbackPeriods: 30 } })
"What's happening on the server right now?"
getServerStatus()
getCurrentOperations()
getHottestCollections({ limit: 5, sampleDuration: 5000 })
"Find orders that reference deleted users."
findOrphans({ collection: "orders", localField: "userId", foreignCollection: "users", foreignField: "_id" })
"Export the products collection as CSV."
exportCollection({ collection: "products", options: { format: "csv", flatten: true } })
Configuration
| Variable | Default | Description |
|---|---|---|
ENABLE_LOGGING | false | Enable file logging |
LOG_DIR | ./logs | Log file directory |
CLI flags: --read-only (default), --read-write, --mode <mode>
Logging
File logging is disabled by default. Set ENABLE_LOGGING=true to enable. Two log files are created in LOG_DIR:
- tool-usage.log — every tool call with timestamp, name, and arguments
- error.log — errors with stack traces
Connection strings are automatically redacted in all output.
ObjectId Format
Both formats accepted:
{ "_id": { "$oid": "507f1f77bcf86cd799439011" } }
{ "_id": "507f1f77bcf86cd799439011" }
Development
git clone https://github.com/bluwork/mongo-scout-mcp.git
cd mongo-scout-mcp
pnpm install
pnpm build
pnpm test
License
Apache-2.0
常见问题
io.github.bluwork/mongo-scout-mcp 是什么?
用 AI 巡检 MongoDB 数据库,提供安全防护、实时监控与数据质量保障能力。
相关 Skills
网页构建器
by anthropics
面向复杂 claude.ai HTML artifact 开发,快速初始化 React + Tailwind CSS + shadcn/ui 项目并打包为单文件 HTML,适合需要状态管理、路由或多组件交互的页面。
✎ 在 claude.ai 里做复杂网页 Artifact 很省心,多组件、状态和路由都能顺手搭起来,React、Tailwind 与 shadcn/ui 组合效率高、成品也更精致。
网页应用测试
by anthropics
用 Playwright 为本地 Web 应用编写自动化测试,支持启动开发服务器、校验前端交互、排查 UI 异常、抓取截图与浏览器日志,适合调试动态页面和回归验证。
✎ 借助 Playwright 一站式验证本地 Web 应用前端功能,调 UI 时还能同步查看日志和截图,定位问题更快。
前端设计
by anthropics
面向组件、页面、海报和 Web 应用开发,按鲜明视觉方向生成可直接落地的前端代码与高质感 UI,适合做 landing page、Dashboard 或美化现有界面,避开千篇一律的 AI 审美。
✎ 想把页面做得既能上线又有设计感,就用前端设计:组件到整站都能产出,难得的是能避开千篇一律的 AI 味。
相关 MCP Server
GitHub
编辑精选by GitHub
GitHub 是 MCP 官方参考服务器,让 Claude 直接读写你的代码仓库和 Issues。
✎ 这个参考服务器解决了开发者想让 AI 安全访问 GitHub 数据的问题,适合需要自动化代码审查或 Issue 管理的团队。但注意它只是参考实现,生产环境得自己加固安全。
Context7 文档查询
编辑精选by Context7
Context7 是实时拉取最新文档和代码示例的智能助手,让你告别过时资料。
✎ 它能解决开发者查找文档时信息滞后的问题,特别适合快速上手新库或跟进更新。不过,依赖外部源可能导致偶尔的数据延迟,建议结合官方文档使用。
by tldraw
tldraw 是让 AI 助手直接在无限画布上绘图和协作的 MCP 服务器。
✎ 这解决了 AI 只能输出文本、无法视觉化协作的痛点——想象让 Claude 帮你画流程图或白板讨论。最适合需要快速原型设计或头脑风暴的开发者。不过,目前它只是个基础连接器,你得自己搭建画布应用才能发挥全部潜力。