Bring MCP Server

by DavideArena

246 downloads
Not rated
GitHub

Description

# Bring MCP Server A Model Context Protocol (MCP) server that integrates with Bring Shopping Lists API, allowing AI assistants to manage shopping lists through natural language. > **Disclaimer:** This project uses unofficial Bring APIs that are not publicly documented or…

About

# Bring MCP Server A Model Context Protocol (MCP) server that integrates with Bring Shopping Lists API, allowing AI assistants to manage shopping lists through natural language. > **Disclaimer:** This project uses unofficial Bring APIs that are not publicly documented or supported. These APIs could change without…

Details

Author
DavideArena
Downloads
246
Categories
Other

- Implements the Model Context Protocol for AI assistant integration
- Uses stdio transport for compatibility with Claude for Desktop
- Integrates fully with the Bring Shopping Lists API
- List all shopping lists for the authenticated user
- Add or remove items and recipe items from lists
- View all users who have access to a shopping list

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name Bring MCP Server
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

Clone the repository, install dependencies (npm install), create a .env file with BRING_EMAIL, BRING_PASSWORD, and BRING_API_KEY, then build (npm run build) and start the server (node dist/index.js). The server uses stdio transport and is compatible with MCP clients like Claude for Desktop.

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "bring mcp server": {
            "bring-mcp-server": {
                "command": "node",
                "args": [
                    "dist/index.js"
                ]
            }
        }
    }
}

McpServers

{
    "bring-mcp-server": {
        "command": "node",
        "args": [
            "dist/index.js"
        ]
    }
}

Bring MCP Server

A Model Context Protocol (MCP) server that integrates with Bring Shopping Lists API, allowing AI assistants to manage shopping lists through natural language.

> Disclaimer: This project uses unofficial Bring APIs that are not publicly documented or supported. These APIs could change without notice, potentially breaking functionality. Use at your own risk.

Overview

This project implements a full featured Model Context Protocol (MCP) server in TypeScript that connects to the Bring Shopping Lists API. It enables AI assistants like Claude, ChatGPT, and others to interact with your Bring shopping lists through a standardized protocol.

Features

- MCP Protocol Support: Implements the Model Context Protocol for seamless integration with AI assistants
- Stdio Transport: Compatible with Claude for Desktop and other MCP enabled clients
- Bring API Integration: Complete Bring Shopping List API integration with the following capabilities:
- List all shopping lists
- Get items from a shopping list
- Add recipe items to a shopping list
- Remove specific items or clear entire shopping lists
- Get detailed information about list items
- View all users who have access to a shopping list

Prerequisites

- Bring account (email and password)
- Bring API key

Installation

1. Clone the repository:

   git clone <repository-url>
   cd bring-mcp-server
   

2. Install dependencies:

   npm install
   

3. Create a .env file in the project root with the following variables:

   BRING_EMAIL=your_bring_account_email
   BRING_PASSWORD=your_bring_account_password
   BRING_API_KEY=your_bring_api_key
   

4. Build the project:

   npm run build
   

Usage

Starting the Server

Start the MCP server with:

node dist/index.js

The server will connect via stdio, making it compatible with MCP clients like Claude for Desktop.

Connecting to Claude for Desktop

1. Configure Claude for Desktop to use this MCP server
2. In your Claude conversation, you can now interact with your Bring shopping lists

Available MCP Tools

The server exposes the following tools to MCP clients:

| Tool Name | Description |
| ------------------------------------ | -------------------------------------------------- |
| get-bring-lists | List all shopping lists for the authenticated user |
| get-bring-list-items | Get all items from a specific shopping list |
| add-recipe-items-to-bring-list | Add multiple items to a shopping list at once |
| remove-item-or-all-from-bring-list | Remove a specific item or clear an entire list |
| get-bring-list-items-details | Get detailed information about items in a list |
| get-all-users-from-bring-list | List all users who have access to a specific list |

Development

Running in Development Mode

npm run dev

This starts the server with hot reloading for development.

VS Code Integration

For VS Code integration, see the .vscode/mcp.sample.json file. This configuration allows VS Code to connect to the MCP server directly.

Testing

Run the full test suite with:

npm test

Continuous Integration

The project uses GitHub Actions for continuous integration. Automated tests are run on each push to the main branch and on pull requests.

You can view the workflow configuration in .github/workflows/test.yml.

Test Structure

Tests are organized in the test/ directory:

- handlers/ - Contains tests for each MCP tool handler
- mocks/ - Contains mock implementations used in tests

License

This project is licensed under the MIT License - see the LICENSE file for details.

---

For feature requests or bug reports, please open an issue on the project repository.

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.