Skip to main content
Glama
kiliczsh
by kiliczsh

MCP MongoDB 서버


NPM 버전NPM 다운로드NPM 라이센스 대장간 배지

LLM이 MongoDB 데이터베이스와 상호 작용할 수 있도록 하는 모델 컨텍스트 프로토콜 서버입니다. 이 서버는 표준화된 인터페이스를 통해 컬렉션 스키마를 검사하고 MongoDB 작업을 실행하는 기능을 제공합니다.

데모

MCP MongoDB 서버 데모 | Claude Desktop

Related MCP server: MongoDB MCP Server for LLMs

주요 특징

스마트 ObjectId 처리

  • 문자열 ID와 MongoDB ObjectId 간의 지능형 변환

  • objectIdMode 매개변수로 구성 가능:

    • "auto" : 필드 이름을 기준으로 변환(기본값)

    • "none" : 변환 없음

    • "force" : 모든 문자열 ID 필드를 ObjectId로 강제 적용합니다.

유연한 구성

  • 환경 변수 :

    • MCP_MONGODB_URI : MongoDB 연결 URI

    • MCP_MONGODB_READONLY : "true"로 설정하면 읽기 전용 모드를 활성화합니다.

  • 명령줄 옵션 :

    • --read-only 또는 -r : 읽기 전용 모드로 연결

읽기 전용 모드

  • 쓰기 작업(update, insert, createIndex)에 대한 보호

  • 최적의 성능을 위해 MongoDB의 보조 읽기 기본 설정을 사용합니다.

  • 프로덕션 데이터베이스에 안전하게 연결하는 데 이상적입니다.

MongoDB 운영

  • 읽기 작업 :

    • 선택적 실행 계획 분석을 통한 문서 쿼리

    • 집계 파이프라인 실행

    • 기준과 일치하는 문서 계산

    • 컬렉션 스키마 정보 가져오기

  • 쓰기 작업 (읽기 전용 모드가 아닌 경우):

    • 문서 업데이트

    • 새 문서 삽입

    • 인덱스 생성

LLM 통합

  • 향상된 LLM 상호 작용을 위한 컬렉션 완료

  • 향상된 컨텍스트 이해를 위한 스키마 추론

  • 데이터 통찰력을 위한 수집 분석

설치

글로벌 설치

지엑스피1

개발을 위해

# Clone repository
git clone https://github.com/kiliczsh/mcp-mongo-server.git
cd mcp-mongo-server

# Install dependencies
npm install

# Build
npm run build

# Development with auto-rebuild
npm run watch

용법

기본 사용법

# Start server with MongoDB URI
npx -y mcp-mongo-server mongodb://muhammed:kilic@localhost:27017/database

# Connect in read-only mode
npx -y mcp-mongo-server mongodb://muhammed:kilic@localhost:27017/database --read-only

환경 변수

환경 변수를 사용하여 서버를 구성할 수 있는데, 이는 CI/CD 파이프라인, Docker 컨테이너에 특히 유용하며, 명령 인수에서 연결 세부 정보를 노출하고 싶지 않을 때도 유용합니다.

# Set MongoDB connection URI
export MCP_MONGODB_URI="mongodb://muhammed:kilic@localhost:27017/database"

# Enable read-only mode
export MCP_MONGODB_READONLY="true"

# Run server (will use environment variables if no URI is provided)
npx -y mcp-mongo-server

Claude Desktop 구성에서 환경 변수 사용:

{
  "mcpServers": {
    "mongodb-env": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-mongo-server"
      ],
      "env": {
        "MCP_MONGODB_URI": "mongodb://muhammed:kilic@localhost:27017/database",
        "MCP_MONGODB_READONLY": "true"
      }
    }
  }
}

Docker에서 환경 변수 사용하기:

# Build
docker build -t mcp-mongo-server .

# Run
docker run -it -d -e MCP_MONGODB_URI="mongodb://muhammed:kilic@localhost:27017/database" -e MCP_MONGODB_READONLY="true" mcp-mongo-server

# or edit docker-compose.yml and run
docker-compose up -d

Claude Desktop과 통합

수동 구성

Claude Desktop의 구성 파일에 서버 구성을 추가합니다.

MacOS : ~/Library/Application Support/Claude/claude_desktop_config.json Windows : %APPDATA%/Claude/claude_desktop_config.json

명령줄 인수 접근 방식:

{
  "mcpServers": {
    "mongodb": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-mongo-server",
        "mongodb://muhammed:kilic@localhost:27017/database"
      ]
    },
    "mongodb-readonly": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-mongo-server",
        "mongodb://muhammed:kilic@localhost:27017/database",
        "--read-only"
      ]
    }
  }
}

환경 변수 접근 방식:

{
  "mcpServers": {
    "mongodb": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-mongo-server"
      ],
      "env": {
        "MCP_MONGODB_URI": "mongodb://muhammed:kilic@localhost:27017/database"
      }
    },
    "mongodb-readonly": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-mongo-server"
      ],
      "env": {
        "MCP_MONGODB_URI": "mongodb://muhammed:kilic@localhost:27017/database",
        "MCP_MONGODB_READONLY": "true"
      }
    }
  }
}

GitHub 패키지 사용법:

{
  "mcpServers": {
    "mongodb": {
      "command": "npx",
      "args": [
        "-y",
        "github:kiliczsh/mcp-mongo-server",
        "mongodb://muhammed:kilic@localhost:27017/database"
      ]
    },
    "mongodb-readonly": {
      "command": "npx",
      "args": [
        "-y",
        "github:kiliczsh/mcp-mongo-server",
        "mongodb://muhammed:kilic@localhost:27017/database",
        "--read-only"
      ]
    }
  }
}

Windsurf 및 Cursor와의 통합

MCP MongoDB 서버는 Claude Desktop과 비슷한 방식으로 Windsurf 및 Cursor와 함께 사용할 수 있습니다.

윈드서핑 구성

Windsurf 구성에 서버를 추가합니다.

{
  "mcpServers": {
    "mongodb": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-mongo-server",
        "mongodb://muhammed:kilic@localhost:27017/database"
      ]
    }
  }
}

커서 구성

커서의 경우 설정에 서버 구성을 추가합니다.

{
  "mcpServers": {
    "mongodb": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-mongo-server",
        "mongodb://muhammed:kilic@localhost:27017/database"
      ]
    }
  }
}

Claude Desktop 구성에 표시된 것과 동일한 패턴을 따라 Windsurf와 Cursor 모두에서 환경 변수 접근 방식을 사용할 수도 있습니다.

자동 설치

대장간 사용하기 :

npx -y @smithery/cli install mcp-mongo-server --client claude

mcp-get 사용하기 :

npx @michaellatman/mcp-get@latest install mcp-mongo-server

사용 가능한 도구

쿼리 작업

  • 쿼리 : MongoDB 쿼리 실행

    {
      collection: "users",
      filter: { age: { $gt: 30 } },
      projection: { name: 1, email: 1 },
      limit: 20,
      explain: "executionStats"  // Optional
    }
  • aggregate : 집계 파이프라인 실행

    {
      collection: "orders",
      pipeline: [
        { $match: { status: "completed" } },
        { $group: { _id: "$customerId", total: { $sum: "$amount" } } }
      ],
      explain: "queryPlanner"  // Optional
    }
  • count : 일치하는 문서 수 계산

    {
      collection: "products",
      query: { category: "electronics" }
    }

쓰기 작업

  • 업데이트 : 문서 수정

    {
      collection: "posts",
      filter: { _id: "60d21b4667d0d8992e610c85" },
      update: { $set: { title: "Updated Title" } },
      upsert: false,
      multi: false
    }
  • 삽입 : 새 문서 추가

    {
      collection: "comments",
      documents: [
        { author: "user123", text: "Great post!" },
        { author: "user456", text: "Thanks for sharing" }
      ]
    }
  • createIndex : 컬렉션 인덱스 생성

    {
      collection: "users",
      indexes: [
        {
          key: { email: 1 },
          unique: true,
          name: "email_unique_idx"
        }
      ]
    }

시스템 운영

  • serverInfo : MongoDB 서버 세부 정보 가져오기

    {
      includeDebugInfo: true  // Optional
    }

디버깅

MCP 서버는 stdio를 통해 통신하므로 디버깅이 어려울 수 있습니다. MCP Inspector를 사용하면 더 나은 가시성을 확보할 수 있습니다.

npm run inspector

이렇게 하면 브라우저에서 디버깅 도구에 액세스할 수 있는 URL이 제공됩니다.

특허

이 MCP 서버는 MIT 라이선스에 따라 라이선스가 부여됩니다. 즉, MIT 라이선스의 조건에 따라 소프트웨어를 자유롭게 사용, 수정 및 배포할 수 있습니다. 자세한 내용은 프로젝트 저장소의 LICENSE 파일을 참조하세요.

Available Tools

8 tools
aggregateB

Execute a MongoDB aggregation pipeline with optional execution plan analysis

ParametersJSON Schema
NameRequiredDescriptionDefault
explainNoOptional: Get aggregation execution information (queryPlanner, executionStats, or allPlansExecution)
pipelineYesAggregation pipeline stages
collectionYesName of the collection to aggregate
objectIdModeNoControl how 24-character hex strings are handledauto

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It does not disclose whether the tool is read-only, can write via stages like $merge, or any potential side effects, performance implications, or required permissions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence of 12 words directly states the core functionality. No extraneous information, efficiently front-loads the action and optional feature.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite being a complex tool (aggregation pipeline), the description lacks details on output format, error handling, potential performance costs, or the impact of the objectIdMode parameter. No output schema compounds the incompleteness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

All four parameters are fully described in the input schema (100% coverage). The description adds minimal extra context, only mentioning 'optional execution plan analysis' which maps to the explain parameter. No further clarification on pipeline construction or objectIdMode behavior.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the tool executes a MongoDB aggregation pipeline with optional execution plan analysis. It uses specific verb 'execute' and resource 'aggregation pipeline', distinguishing it from sibling tools like query, count, or insert.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives such as 'query' or 'count'. The description does not mention scenarios or limitations, leaving the agent to infer usage context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

countC

Count documents in a collection matching a query

ParametersJSON Schema
NameRequiredDescriptionDefault
hintNoIndex hint
skipNoDocs to skip before counting
limitNoMax documents to count
queryNoQuery filter to count
collationNoCollation rules for comparison
maxTimeMSNoMax execution time
collectionYesCollection name
readConcernNoRead concern option
objectIdModeNoControl how 24-character hex strings are handledauto

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. It only states the basic operation without detailing any side effects (none expected for a count), return format, or constraints (e.g., counting behavior with skip/limit). The agent cannot infer that this is a read-only operation or what the output structure is.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that directly states the core function. However, it is overly terse and lacks structured details that would aid the agent, such as separating purpose from usage notes. Score reflects conciseness but slight under-information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 9 parameters, no output schema, and no annotations, the description is insufficiently complete. It omits essential information like the return type (a count number), whether the count is approximate or exact, and behavior with optional parameters like skip/limit. A more complete description would provide contextual completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% coverage with descriptions for all 9 parameters. The description adds no additional parameter semantics beyond what is already in the schema. Per guidelines, baseline is 3 when schema coverage is high, and no extra value is provided.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'count' and the resource 'documents in a collection matching a query', which accurately defines the tool's purpose. However, it does not explicitly distinguish this tool from sibling tools like 'aggregate' or 'query', which could also perform counting.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives (e.g., 'aggregate' for more complex aggregations). There are no examples, prerequisites, or exclusions mentioned, leaving the agent without sufficient context to choose appropriately.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

createIndexB

Create one or more indexes on a MongoDB collection

ParametersJSON Schema
NameRequiredDescriptionDefault
indexesYesArray of index specifications
collectionYesName of the collection to create indexes on
commitQuorumNoNumber of members required to create the index
objectIdModeNoControl how 24-character hex strings are handledauto
writeConcernNoWrite concern for index creation

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must carry the burden of behavioral disclosure. It only states the action without mentioning side effects like blocking operations, performance implications, or permission requirements. This is inadequate for a mutation tool that can significantly affect database behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence that is front-loaded with the core action. However, it is extremely brief given the tool's complexity. It earns its place but could benefit from a bit more structure.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 5 parameters including nested objects and no output schema, the description is insufficient. It does not explain that multiple indexes can be created, the return behavior, or important aspects like background building. The agent lacks key information for correct usage.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% with each parameter having a description. The tool description adds no additional semantics beyond the schema. Baseline of 3 is appropriate as the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the purpose: creating one or more indexes on a MongoDB collection. The verb 'create' and resource 'indexes on a MongoDB collection' are specific, and the tool is distinct from siblings like 'aggregate' or 'insert' that do not create indexes.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives, or prerequisites for index creation. The description lacks context about when indexes should be created or potential impacts, leaving the agent without decision support.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

insertB

Insert one or more documents into a MongoDB collection

ParametersJSON Schema
NameRequiredDescriptionDefault
orderedNoIf true, perform ordered insert. If false, insert unordered
documentsYesArray of documents to insert
collectionYesName of the collection to insert into
objectIdModeNoControl how 24-character hex strings are handledauto
writeConcernNoWrite concern for the insert operation
bypassDocumentValidationNoAllow insert to bypass schema validation

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description must disclose behavior. It lacks details on handling duplicate _id errors, return values, or performance implications. Only states basic insert action.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One short sentence with no waste, but could be more informative without being verbose. Front-loads the core action.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 6 parameters including nested objects and no output schema, the description is insufficient. It should mention error handling, return format, and parameter default behaviors.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. Description adds no extra meaning beyond the schema; it doesn't explain parameters like ordered, objectIdMode, or writeConcern.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Insert' and the resource 'MongoDB collection', with 'one or more documents' specifying scope. It distinguishes from siblings like query (read) and update (modify) with a specific insert action.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives (e.g., update for modifying, query for reading). No prerequisites or context about required permissions or collection existence.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

listCollectionsB

List all collections in the MongoDB database

ParametersJSON Schema
NameRequiredDescriptionDefault
filterNoFilter for collections
nameOnlyNoIf true, return only collection names
objectIdModeNoControl how 24-character hex strings are handledauto

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so the description carries full burden. It describes 'list' implying read-only, but fails to disclose behavior like pagination, authentication requirements, or how parameters like 'objectIdMode' affect execution.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single concise sentence that gets to the point. However, it could front-load more critical information like the database context, but for a simple tool it is appropriately sized.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema exists, and the description does not explain return values (e.g., list of names vs full documents). The 'nameOnly' parameter hints at different outputs, but this is not clarified. For a list tool with multiple parameters, more detail is needed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so baseline is 3. The description adds no extra meaning beyond the schema; it simply restates the tool's purpose without detailing parameter usage or constraints.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the specific verb 'List' and resource 'collections in the MongoDB database', which distinguishes it from sibling tools like 'aggregate' or 'insert' that perform different operations.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool vs alternatives. It does not mention contexts where other tools like 'query' might be more appropriate, nor any conditions for using this tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

queryB

Execute a MongoDB query with optional execution plan analysis

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum number of documents to return
filterNoMongoDB query filter
explainNoOptional: Get query execution information
collectionYesName of the collection to query
projectionNoFields to include/exclude
objectIdModeNoControl how 24-character hex strings are handledauto

TDQS

B3.2/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description must disclose behaviors. It only states execution of a query, but does not specify if this is read-only, side effects, permission needs, or performance implications.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence that is direct and front-loaded with the core action. No unnecessary words, and the optional analysis is mentioned immediately.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite having 6 parameters and no output schema, the description does not explain return values, pagination, or behavior for required parameters. It is too minimal for a complex MongoDB query operation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so each parameter is already documented. The description adds minor value by linking 'execution plan analysis' to the explain parameter, but does not provide additional semantic context.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool executes a MongoDB query with optional execution plan analysis. The verb 'Execute' and resource 'MongoDB query' are specific, and the mention of execution plan analysis distinguishes it from basic query tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus siblings like aggregate or count. The description does not mention appropriate scenarios, prerequisites, or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

serverInfoA

Get MongoDB server information including version, storage engine, and other details

ParametersJSON Schema
NameRequiredDescriptionDefault
includeDebugInfoNoInclude additional debug information about the server

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations exist, so the description carries full burden. It correctly implies a read-only, non-destructive operation but does not disclose any specific behavioral traits such as authentication needs or rate limits. The effect of the optional parameter is not elaborated beyond the schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that conveys the core purpose. It is front-loaded and concise, though it could be slightly more structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple info tool with one optional parameter and no output schema, the description is mostly complete, stating the type of information returned. It lacks details about return format or explicit read-only guarantee, but is still adequate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the parameter already has a description. The tool description adds no additional meaning about the parameter beyond what the schema provides, so a baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool gets MongoDB server information and lists examples like version and storage engine, distinguishing it from sibling tools that perform data operations (query, insert, etc.).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives a clear purpose but does not explicitly state when or when not to use this tool versus alternatives. Context from sibling tools suggests usage, but no direct guidance is provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

updateC

Update documents in a MongoDB collection

ParametersJSON Schema
NameRequiredDescriptionDefault
multiNoUpdate multiple documents that match the filter
filterYesFilter to select documents to update
updateYesUpdate operations to apply ($set, $unset, $inc, etc.)
upsertNoCreate a new document if no documents match the filter
collectionYesName of the collection to update
objectIdModeNoControl how 24-character hex strings are handledauto

TDQS

C2.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description solely must clarify behavior. It only states the operation type (update) but omits details like whether the tool returns the updated document, handles no-matches, or requires authentication. The rich schema parameters (multi, upsert) are not elaborated beyond their definitions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single short sentence, which is concise but at the cost of informative detail. It does not front-load key behavioral cues (e.g., upsert support) and is thus minimal rather than optimally structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with 6 parameters, nested objects, and no output schema, the description lacks completeness. It does not explain return values, error scenarios, or behavior of multi/upsert combinations, leaving significant gaps for an agent to use correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so each parameter has a description. The tool description adds no extra parameter context, meeting the baseline for high coverage. However, no additional semantic elaboration is provided for complex parameters like 'update' (MongoDB operators) or 'objectIdMode'.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool updates documents in a MongoDB collection using a clear verb-resource structure. However, it does not distinguish this tool from siblings like 'insert' (creates) or 'query' (reads), leaving some ambiguity about the specific operation scope.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives such as 'insert' for new documents or 'aggregate' for transformations. There is no mention of prerequisites, idempotency, or context-specific conditions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 8 tool updatesv1.0.0
    • First observedaggregate
    • First observedcount
    • First observedcreateIndex
    • First observedinsert
    • First observedlistCollections
    • First observedquery
    • First observedserverInfo
    • First observedupdate

TDQS

B3.4/5.0
Disambiguation5/5

Each tool targets a distinct database operation: aggregation, counting, indexing, inserting, listing collections, querying, server info, and updating. No two tools have overlapping purposes.

Naming Consistency5/5

All tool names use lowercase with camelCase for multi-word terms (e.g., 'createIndex', 'listCollections', 'serverInfo'), following a consistent pattern of verb or verb_noun.

Tool Count5/5

8 tools cover core MongoDB operations (CRUD, aggregation, indexing, metadata) without being too few or excessive for a general-purpose database server.

Completeness2/5

The set lacks a tool for deleting documents or collections, which is a fundamental operation. Without 'delete' or 'remove', agents cannot complete typical data lifecycle actions, leaving a significant gap.

Maintenance

ActivitySlowing
ResponsivenessSlow

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    F
    maintenance
    A Model Context Protocol (MCP) server that enables LLMs to interact directly with MongoDB databases. Query collections, inspect schemas, and manage data seamlessly through natural language.
    22
    175
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    A Model Context Protocol server that enables LLMs to interact directly with MongoDB databases, allowing users to query collections, inspect schemas, and manage data through natural language.
    22
    2
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    A Model Context Protocol server that enables LLMs to interact directly with MongoDB databases, allowing users to query collections, inspect schemas, and manage data through natural language.
    22
    MIT
  • A
    license
    D
    quality
    D
    maintenance
    A Model Context Protocol server that enables LLMs to interact with databases (currently MongoDB) through natural language, supporting operations like querying, inserting, deleting documents, and running aggregation pipelines.
    5
    14
    MIT

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/kiliczsh/mcp-mongo-server'

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