mcpField
M
MCP MongoDB Integration

MCP MongoDB Integration

Local
github.com/the-sukhsinghDatabases1Updated 81w ago

About MCP MongoDB Integration

MCP MongoDB Integration exposes MongoDB operations as MCP tools and includes a terminal chatbot using Google Gemini. It is for users who want to query and modify MongoDB through conversational requests, with CRUD and aggregation operations available.

Key features

  1. 01MongoDB CRUD tools
  2. 02Aggregation and document counts
  3. 03Collection listing and creation
  4. 04Gemini-powered terminal chatbot
  5. 05SSE connection to the MCP server

Use cases

  1. 01Query or update database records through chat
  2. 02Run aggregation pipelines on MongoDB data
  3. 03Inspect or create database collections

MCP support

The server exposes MongoDB operations as tools for MCP clients, including document queries, writes, aggregation, and collection management. The included client connects to it over SSE.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

No install method listed yet

We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.

Repository

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

MCP MongoDB Integration

This project demonstrates the integration of MongoDB with the Model Context Protocol (MCP) to provide AI assistants with database interaction capabilities. It consists of two main components:

  1. MCP MongoDB Server - A server that exposes MongoDB operations as MCP tools
  2. Client-side Gemini Integration - A terminal-based chatbot that uses Google's Gemini AI with access to MongoDB tools

Project Structure

.
├── client-side/            # Client application using Gemini AI
│   ├── index.js            # Main client application
│   └── package.json        # Client dependencies
└── mcp-mongo-project/      # MCP server with MongoDB tools
    ├── src/
    │   ├── index.js        # Server setup and tool definitions
    │   └── services/
    │       └── mcp-service.js  # MongoDB service implementation
    └── package.json        # Server dependencies

Features

  • MongoDB Integration: Full CRUD operations exposed as MCP tools
  • MCP Server: Implements the Model Context Protocol for AI tool use
  • Gemini AI Integration: Connects to Google's Gemini models
  • Terminal Chatbot: Interactive chat interface for database operations

Prerequisites

  • Node.js (v14 or higher)
  • MongoDB instance (local or remote)
  • Google Gemini API key

Function Calling Overview

Setup Instructions

1. Server Setup
# Navigate to the server directory
cd mcp-mongo-project

# Install dependencies
npm install

# Create a .env file with your MongoDB connection details
echo "MONGODB_URI=mongodb://localhost:27017" > .env
echo "MONGODB_NAME=your_database_name" >> .env

# Start the server
npm start
2. Client Setup
# Navigate to the client directory
cd client-side

# Install dependencies
npm install

# Create a .env file with your Gemini API key
echo "GEMINI_API_KEY=your_gemini_api_key" > .env

# Start the client
node index.js

Available MongoDB Tools

The MCP server exposes the following MongoDB operations as tools:

  • findDocuments: Query documents in a collection
  • findOneDocument: Find a single document
  • insertOneDocument: Insert a document
  • insertManyDocuments: Insert multiple documents
  • updateOneDocument: Update a single document
  • updateManyDocuments: Update multiple documents
  • deleteOneDocument: Delete a document
  • deleteManyDocuments: Delete multiple documents
  • aggregateDocuments: Run aggregation pipelines
  • countDocuments: Count documents in a collection
  • listCollections: List all collections
  • createCollection: Create a new collection

Usage Examples

Once both the server and client are running, you can interact with MongoDB through the chat interface:

You: Show me all collections in the database
AI: Found 3 collections in the database
[
  "users",
  "products",
  "orders"
]

You: Find all users with age greater than 30
AI: Found 2 documents in collection 'users'
[
  {
    "_id": "6450a7c63020e15b2a1cf5d2",
    "name": "John Doe",
    "age": 35
  },
  {
    "_id": "6450a7d93020e15b2a1cf5d3",
    "name": "Jane Smith",
    "age": 42
  }
]

How it Works

  1. The MCP server creates a connection to MongoDB and exposes operations as tools
  2. The client connects to the MCP server via Server-Sent Events (SSE)
  3. User queries are sent to Gemini AI, which decides when to use MongoDB tools
  4. Tool calls are forwarded to the MCP server, executed, and results returned
  5. Gemini AI incorporates the database results in its response to the user

Environment Variables

Server (.env file in mcp-mongo-project/)
  • MONGODB_URI: Connection string for MongoDB
  • MONGODB_NAME: Name of the database to use
Client (.env file in client-side/)
  • GEMINI_API_KEY: API key for Google's Gemini AI

Images

Chatbot Interface

Chatbot Interface

Chatbot Interface

License

ISC

Contributing

Feel free to contribute to this project by opening issues or submitting pull requests.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.