MB_MCP (Model Context Protocol)

by bigmb

MCP Client
  • other

mb MCP files

About

What is MB_MCP?

MB_MCP is a Python package for integrating various services (Slack, Google Drive, GitHub, Atlassian, PostgreSQL, Brave Search, and more) with Claude and other LLMs using the Model Context Protocol (MCP). It runs on Python 3.8+ and optionally uses Docker for certain service connectors.

How to use MB_MCP?

Install the package (pip install -e .), copy and edit the .env.example file to supply your API keys and credentials for the services you intend to use, then run the web dashboard (python -m mb_mcp.app) or import the connector modules programmatically to query services via natural language.

Key features of MB_MCP

- Unified connectors for Slack, Google Drive, GitHub, Atlassian, PostgreSQL, Brave Search, and Formatter
- Web dashboard for querying services through a simple interface
- Environment-based configuration via a single .env file
- Supports multiple LLMs (Anthropic, OpenAI, Google)
- Programmatic access to service connectors for custom workflows

Use cases of MB_MCP

- Retrieve recent Slack channel updates by asking a natural language question
- Search Google Drive for files matching a description
- Query a PostgreSQL database using plain English
- Get the latest issues from a Jira project or Confluence pages
- Search the web via Brave Search and receive structured results

FAQ from MB_MCP

What exactly does MB_MCP do?

MB_MCP acts as a bridge between LLMs (like Claude) and external services. It provides connectors that translate natural language requests into service-specific API calls, allowing you to interact with Slack, GitHub, Google Drive, and others conversationally.

Which services are supported out of the box?

Slack, Google Drive, GitHub, Atlassian (Confluence & Jira), PostgreSQL, Brave Search, and a Formatter server for text formatting. Additional services can be added by creating new connector modules.

How do I configure my API keys and credentials?

Copy .env.example to .env and fill in the required environment variables listed in the README. For example, ANTHROPIC_API_KEY, SLACK_BOT_TOKEN, GITHUB_PERSONAL_ACCESS_TOKEN, etc. The application reads these at runtime.

Can I use MB_MCP with a different LLM than Claude?

Yes. The configuration includes keys for Anthropic, OpenAI, and Google – so you can connect to Claude, GPT models, or Gemini.

Is MB_MCP free and open source?

Yes. The project is released under the MIT license, so it is free to use, modify, and distribute.

Details

Author
bigmb
Category
other
Repository
bigmb/mb_mcp

MB_MCP (Model Context Protocol)

A Python package for integrating various services with Claude and other LLMs using the Model Context Protocol (MCP).

Overview

MB_MCP provides connectors for various services like Slack, Google Drive, GitHub, Atlassian, PostgreSQL, and more. It allows you to build applications that leverage these services through a unified interface, making it easy to create powerful AI-powered applications.

Features

- Multiple Service Connectors:
- Slack
- Google Drive
- GitHub
- Atlassian (Confluence & Jira)
- PostgreSQL
- Brave Search
- Formatter

- Web Dashboard: A simple web interface for querying the services
- Environment-based Configuration: All API keys and credentials are stored in a .env file for security

Installation

Prerequisites

- Python 3.8 or higher
- Docker (for running some of the services)

Setup

1. Clone the repository:

   git clone https://github.com/bigmb/mb_mcp.git
cd mb_mcp

2. Install the package:

   pip install -e .

3. Set up environment variables:

   cp .env.example .env

Edit the .env file and add your API keys and credentials.

Configuration

The following environment variables need to be set in the .env file:

API Keys

ANTHROPIC_API_KEY=your_anthropic_api_key
OPENAI_API_KEY=your_openai_api_key
GOOGLE_API_KEY=your_google_api_key

Slack Configuration

SLACK_BOT_TOKEN=your_slack_bot_token
SLACK_APP_TOKEN=your_slack_app_token
SLACK_TEAM_ID=your_slack_team_id

PostgreSQL Configuration

POSTGRES_HOST=localhost
POSTGRES_PORT=5432
POSTGRES_USER=postgres
POSTGRES_PASSWORD=postgres
POSTGRES_DB=postgres
PG_CONNECTION_STRING=postgresql://host.docker.internal:5432/mydb

Google Drive Configuration

GDRIVE_CREDENTIALS_PATH=/path/to/your/gdrive/credentials.json

GitHub Configuration

GITHUB_PERSONAL_ACCESS_TOKEN=your_github_token

Atlassian Configuration

# For Confluence Cloud
CONFLUENCE_URL=https://your-domain.atlassian.net/wiki
CONFLUENCE_USERNAME=your.email@domain.com
CONFLUENCE_API_TOKEN=your_api_token

For Jira Cloud

JIRA_URL=https://your-domain.atlassian.net JIRA_USERNAME=your.email@domain.com JIRA_API_TOKEN=your_api_token

Brave Search Configuration

BRAVE_API_KEY=your_brave_api_key

Usage

Running the Web Dashboard

python -m mb_mcp.app

This will start a Flask server on http://localhost:5000 where you can interact with the services.

Using the Connectors Programmatically

import asyncio
from mb_mcp.slack_connecter import run_app as run_slack_app

async def main():
question = "Provide the recent updates in the channel in proper format: <channel_id>"
result = await run_slack_app(question)
print(result['messages'][-1].content)

if __name__ == "__main__":
asyncio.run(main())

Development

Project Structure

- mb_mcp/: Main package directory
- app.py: Flask web application
- *_connecter.py: Connector modules for different services
- formatter_server.py: Local MCP server for text formatting
- query_dashboard/: Web dashboard frontend
- servers/: MCP server implementations. From here, the docker image is built. mcp_servers (Anthropic MCP's servers)

License

MIT