MCP ExplorerExplorer

Mcp Bonusly

@ajramoson 14 days ago
1Β NOASSERTION
FreeCommunity
AI Systems
MCP server for Bonusly employee recognition platform

Overview

What is Mcp Bonusly

mcp-bonusly is a comprehensive MCP server designed for the Bonusly employee recognition platform, facilitating interaction with the Bonusly API for managing employee recognition bonuses.

Use cases

Use cases for mcp-bonusly include managing employee bonuses, analyzing team performance through bonus distribution, and integrating with other MCP clients for seamless recognition processes.

How to use

To use mcp-bonusly, clone the repository, install the server, obtain your Bonusly API token, and configure it in a .env file. Then, set up Claude Desktop to connect to the server.

Key features

Key features include complete bonus management with advanced filtering options, secure authentication with API tokens, data validation, and robust error handling.

Where to use

mcp-bonusly is primarily used in corporate environments where employee recognition and reward systems are implemented, enhancing employee engagement and morale.

Content

mcp-bonusly

Available on Smithery

Comprehensive MCP server for Bonusly employee recognition platform

MCP server to interact with Bonusly API, enabling management of employee recognition bonuses through Claude and other MCP clients.

πŸš€ Available on Smithery for easy local installation!

Table of Contents

Quick Start

Quick Installation

git clone https://github.com/ajramos/mcp-bonusly
cd mcp-bonusly
uv sync

Quick Setup

  1. Get your Bonusly API token from https://bonus.ly/api
  2. Create a .env file with your token:
    BONUSLY_API_TOKEN=your_api_token_here
    
  3. Configure Claude Desktop to use the server

Features

✨ Complete Bonus Management

  • List bonuses with advanced filtering (including new user_email parameter for team analysis)
  • Create new bonuses with validation
  • Retrieve bonus details for specific bonuses

πŸ” Advanced Filtering

  • Filter by date range
  • Filter by giver email
  • Filter by receiver email
  • Filter by hashtags
  • Limit number of results

πŸ›‘οΈ Security

  • Secure authentication with API token
  • Input data validation
  • Robust error handling

Installation

Option 1: Install from Smithery (Recommended)

This MCP is available on Smithery as a local installation:

  1. Visit Smithery
  2. Search for β€œmcp-bonusly”
  3. Follow the installation instructions for local MCPs
  4. Configure your Bonusly API token (see Setup section below)

Option 2: Manual Installation with uv

git clone https://github.com/ajramos/mcp-bonusly
cd mcp-bonusly
uv sync

Option 3: Manual Installation with pip

git clone https://github.com/ajramos/mcp-bonusly
cd mcp-bonusly
pip install -e .

Setup

1. Get Bonusly API Token

  1. Go to https://bonus.ly/api
  2. Sign in to your Bonusly account
  3. Create a new API token
  4. Copy the generated token

2. Configure Environment Variables

Create a .env file in the project root directory:

BONUSLY_API_TOKEN=your_api_token_here

3. Configure Claude Desktop

Add this configuration to your Claude Desktop configuration file:

{
  "mcpServers": {
    "mcp-bonusly": {
      "command": "uv",
      "args": [
        "--directory",
        "/full/path/to/mcp-bonusly",
        "run",
        "mcp-bonusly"
      ],
      "env": {
        "BONUSLY_API_TOKEN": "your_api_token_here"
      }
    }
  }
}

Available Tools

🎁 list_bonuses

List bonuses with optional filters.

Parameters:

  • limit (optional): Number of bonuses to return (1-100, default: 20)
  • start_date (optional): Start date (format: YYYY-MM-DD)
  • end_date (optional): End date (format: YYYY-MM-DD)
  • giver_email (optional): Giver’s email address
  • receiver_email (optional): Receiver’s email address
  • user_email (optional): User’s email address (bonuses given or received by this user). Recommended for team analysis: search for each team member individually to ensure complete coverage.
  • hashtag (optional): Hashtag to filter by (e.g., #teamwork)
  • include_children (optional): Include bonus replies

πŸ†• create_bonus

Create a new recognition bonus.

Parameters:

  • giver_email (optional): Giver’s email address (admin only, regular users send bonuses in their own name)
  • reason (required): Bonus reason (e.g., β€œ+10 @user for #teamwork”)
  • parent_bonus_id (optional): Parent bonus ID for replies

πŸ” get_bonus

Get details of a specific bonus.

Parameters:

  • bonus_id (required): ID of the bonus to retrieve

Example Prompts

List Recent Bonuses

"Show me the last 10 bonuses given"

Create a Bonus

"Create a 5-point bonus for [email protected] for excellent work on the project with #teamwork"

Search Bonuses by Hashtag

"Show me all bonuses with hashtag #innovation from last month"

Get Bonus Details

"Get details for bonus with ID 24abcdef1234567890abcdef"

Development

Setup Development Environment

git clone https://github.com/ajramos/mcp-bonusly
cd mcp-bonusly
uv sync
uv run mcp-bonusly

Debugging with MCP Inspector

For the best debugging experience, we recommend using the MCP Inspector:

npx @modelcontextprotocol/inspector uv --directory /path/to/mcp-bonusly run mcp-bonusly

View Server Logs

# macOS
tail -n 20 -f ~/Library/Logs/Claude/mcp-server-mcp-bonusly.log

# Linux 
tail -n 20 -f ~/.config/Claude/logs/mcp-server-mcp-bonusly.log

# Windows
Get-Content "$env:APPDATA\Claude\logs\mcp-server-mcp-bonusly.log" -Wait -Tail 20

Project Structure

mcp-bonusly/
β”œβ”€β”€ src/
β”‚   └── mcp_bonusly/
β”‚       β”œβ”€β”€ __init__.py
β”‚       β”œβ”€β”€ server.py          # Main MCP server
β”‚       β”œβ”€β”€ client.py          # Bonusly API client
β”‚       β”œβ”€β”€ models.py          # Pydantic models
β”‚       └── exceptions.py      # Custom exceptions
β”œβ”€β”€ tests/                     # Tests (coming soon)
β”œβ”€β”€ .env.example              # Environment variables example
β”œβ”€β”€ .gitignore
β”œβ”€β”€ README.md
β”œβ”€β”€ pyproject.toml
└── LICENSE

Security

  • All credentials are handled through environment variables
  • API token is stored securely
  • No data is sent to third parties except Bonusly API
  • Input validation on all operations

Contributing

Contributions are welcome! Please:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/new-feature)
  3. Commit your changes (git commit -am 'Add new feature')
  4. Push to the branch (git push origin feature/new-feature)
  5. Open a Pull Request

License

MIT License - see LICENSE file for details.

Support

If you encounter any issues:

  1. Check the logs using the debugging instructions above
  2. Verify your API token in the .env file
  3. Open an issue with:
    • Your operating system
    • Python version
    • Error messages or logs
    • Steps to reproduce the issue

About Bonusly

Bonusly is an employee recognition platform that enables companies to create a culture of appreciation and engagement. Employees can give points to each other with personalized messages and hashtags that reflect company values.


Created with ❀️ by Angel Ramos

Tools

No tools

Comments