logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

geekbot-mcp-gateway

A Model Context Protocol (MCP) server implementation that integrates the capabilities of the Geekbot platform—specifically its functionalities for conducting asynchronous team check-ins (standups), managing surveys, and running polls—directly into conversational AI interfaces like Claude. This linkage enables natural language interaction for accessing and manipulating Geekbot operational data.

Author

geekbot-mcp-gateway logo

geekbot-com

MIT License

Quick Info

GitHub GitHub Stars 13
NPM Weekly Downloads 0
Tools 1
Last Updated 2026-02-19

Tags

geekbotmcptoolsgeekbot mcpgeekbot toolstools geekbot

Geekbot MCP Interface Server

Geekbot MCP Logo License: MIT Python Version Package Version on PyPI Deployment Status via Smithery Verification Status on MseeP

Enable seamless LLM interaction with your organizational data housed within Geekbot 🚀

The Geekbot MCP (Model Context Protocol) server functions as an intermediary layer, establishing a direct connection between advanced Language Model client applications (such as Claude, Cursor, Windsurf, and others supporting MCP) and your specific Geekbot workspace environment. This architecture facilitates fluid, natural language querying and command execution related to your team's daily standup progress, survey outcomes, and member directories.

Core Capabilities ✨

  • Access Initiative Listings: Query and view inventories of all active standup routines and polling instruments within the connected Geekbot domain. 📊
  • Data Retrieval with Precision: Fetch detailed records from standup submissions and poll tallies, supporting granular filtering based on specific routine identifiers, individual contributors, or temporal boundaries. 📄
  • Team Roster Visibility: Obtain a current roster of all personnel integrated within the Geekbot collaboration space. 👥
  • Submission Gateway: Programmatically file completed standup responses directly into Geekbot. 📝

Watch the demonstration video:

Video Thumbnail

Deployment Instructions 💻

Option 1: Utilizing Smithery for Remote Server Deployment

Deploy the Geekbot MCP as a remote service instance via Smithery for managed operation:

bash npx -y @smithery/cli install @geekbot-com/geekbot-mcp --client claude

This method ensures the remote server instance receives automatic updates corresponding to the latest releases.

Refer to Smithery's Data Policy for operational context.

Option 2: Local Installation (Requires Python 3.10+ and uv)

  1. Prerequisite: Python Installation (v3.10 or newer):

    • macOS Users:

    bash brew install python@3.10

    Consult the Homebrew Python guide for further guidance.

    • Debian/Ubuntu Systems:

    bash sudo apt update sudo apt install python3.10

    • Windows Users: Download the installer from Python.org.

    Refer to the Windows Python documentation for installation specifics.

  2. Prerequisite: Installing the uv Package Manager:

    • macOS/Linux Terminals:

    bash curl -LsSf https://astral.sh/uv/install.sh | sh

    • Windows PowerShell:

    powershell powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

    (For alternative installation methods, see uv Getting Started documentation)

  3. Installing or Updating Geekbot MCP:

    • macOS/Linux:

    bash uv tool install --upgrade geekbot-mcp

    • Windows (PowerShell):

    powershell uv tool install --upgrade geekbot-mcp

Environment Setup & Integration ⚙️

Once the server is installed locally, connect it to your preferred LLM client application (e.g., Claude Desktop, Cursor, Windsurf, etc.) by editing the client's configuration:

  1. Acquire Geekbot API Authentication Credential: Locate your key within the Geekbot API/Webhooks configuration panel 🔑.

  2. Determine the uv Executable Location:

  3. Linux/macOS: Execute in terminal:

bash which uv

  • Windows (PowerShell): Execute in PowerShell:

powershell (Get-Command uv | Select-Object -ExpandProperty Path) -replace '\', '\'

  1. Modify LLM Client Configuration File:

Navigate to your chosen LLM client's MCP configuration manifest (see guides for Claude Desktop, Cursor, Windsurf). Add the Geekbot MCP server definition by updating the configuration file:

{
  "mcpServers": {
    "geekbot-mcp": {
      "command": "UV-PATH",
      "args": [
        "tool",
        "run",
        "geekbot-mcp"
      ],
      "env": {
        "GB_API_KEY": "YOUR-API-KEY"
      }
    }
  }
}

Crucial Replacement Steps: - Substitute UV-PATH with the actual file system path obtained in step 2. - Substitute YOUR-API-KEY with the credential secured in step 1.

Operational Usage Guide 💡

Upon successful configuration, the LLM client gains the ability to invoke the following functionalities to query or manipulate Geekbot data:

Available Functions (Tools) 🛠️

list_standups

Function: Provides a comprehensive listing of all standup routines accessible via the authenticated API key, aiding in identifier discovery.

Sample Invocation: "List every standup routine configured in Geekbot for me."

Returned Data Schema:

  • id: Unique reference key for the standup.
  • name: Display name of the routine.
  • channel: The communication channel (e.g., Slack ID) associated.
  • time: The designated reporting schedule.
  • timezone: The time standard applied to the schedule.
  • questions: The sequence of prompts used in the standup.
  • participants: The roster designated for participation.
  • owner_id: Identifier of the routine's administrator.
  • confidential: Boolean indicating confidentiality settings.
  • anonymous: Boolean indicating if submissions are anonymized.

list_polls

Function: Enumerates all active polls linked to the API key, useful for finding specific poll identifiers.

Sample Invocation: "Show me a directory of all my current Geekbot polls."

Returned Data Schema:

  • id: Unique reference key for the poll.
  • name: Display name of the poll.
  • time: Scheduled timing for the poll initiation.
  • timezone: Timezone context for the schedule.
  • questions: Prompts included in the survey.
  • participants: Designated audience for the poll.
  • creator: The user who initiated the poll structure.

fetch_reports

Function: Fetches submitted standup entries, supporting chronological and categorical constraints.

Sample Invocations:

  • "Retrieve all reports filed yesterday concerning the 'Retrospective' routine."
  • "Display submissions from 'John Doe' specifically for the 'Weekly Sync' standup."
  • "Obtain every report linked to 'Daily Standup' created after the date 2024-06-01."

Acceptable Query Parameters:

  • standup_id: Target routine identifier.
  • user_id: Target participant identifier.
  • after: Cutoff date for submissions (Format: YYYY-MM-DD) 🗓️.
  • before: Latest permissible submission date (Format: YYYY-MM-DD) 🗓️.

Returned Data Schema:

  • id: Unique identifier for the submission record.
  • reporter_name: Name associated with the report sender.
  • reporter_id: Identifier of the report sender.
  • standup_id: Identifier linking to the parent routine.
  • created_at: Timestamp of submission.
  • content: The substantive text or data contained in the answers.

post_report

Function: Submits a newly generated standup response to Geekbot.

Sample Invocation: "Please finalize and transmit the report for the 'Daily Standup' routine now."

Returned Data Schema (Confirmation of successful posting):

  • id: Unique identifier for the newly created submission.
  • reporter_name: Name of the submitting entity.
  • reporter_id: Identifier of the submitting entity.
  • standup_id: Identifier of the targeted routine.
  • created_at: Timestamp of creation.
  • content: The submitted textual response.

list_members

Function: Retrieves the directory of all users sharing collaboration space within the configured Geekbot environment.

Sample Invocation: "Who are the registered collaborators in this Geekbot workspace?"

Returned Data Schema:

  • id: Unique member identifier.
  • name: Member's complete designation.
  • email: Member's electronic mail address.
  • role: Access level within the Geekbot system (e.g., Administrator, Standard User).

fetch_poll_results

Function: Queries and returns the outcome data for a specified poll, optionally time-bound.

Sample Invocation: "Summarize the voting outcomes for the poll concerning the proposed new logo selection."

Returned Data Schema:

  • total_results: Aggregate count of all responses received.
  • question_results: Detailed breakdown of responses per question item.

System Prompts (Pre-defined Queries) 💬

weekly_rollup_report

Purpose: Orchestrates the creation of an aggregated weekly summary report. This summary synthesizes team check-in data, highlights significant progress notes, flags identified organizational obstacles and corresponding mitigation plans, details forthcoming action items, and tracks upcoming product or project rollouts.

Required Argument:

  • standup_id: The unique key identifying the standup routine to base the summary upon.

Operational Recommendations 💡

  • Mandatory Approval Gate: Configure the agent to explicitly request your confirmation prior to executing any tool function, especially those involving data modification (post_report). This safety layer forces a review step, preventing accidental data submission to Geekbot.

  • Pre-Submission Verification: Before executing post_report, instruct the agent to generate and display a preview of the content. This allows for final validation or necessary manual adjustments before the data is officially committed to Geekbot.

  • Data Volume Management: When utilizing fetch_reports, restrict the temporal window (after/before parameters) to sensible durations. Excessive data retrieval across vast timeframes can degrade agent performance. Note that the underlying agent logic may impose inherent limits on the number of individual records it can process per request.

Development Workflow 🧑‍💻

To clone the repository, set up the local service, or propose enhancements:

Initializing the Development Environment

bash

1. Clone the source repository

git clone https://github.com/geekbot-com/geekbot-mcp.git cd geekbot-mcp

2. Install uv if not already present (optional step)

curl -LsSf https://astral.sh/uv/install.sh | sh

3. Set up the isolated environment and install required libraries

uv sync

Executing Automated Tests ✅

bash

Verify all prerequisites are met (uv sync should have been run)

pytest

Contribution Guidelines 🤝

We welcome external contributions! Please feel free to fork the repository and submit a Pull Request detailing your modifications.

Licensing Information 📜

This software is distributed under the terms of the MIT License.

Recognition 🙏

WIKIPEDIA CONTEXT: Business management tools encompass the spectrum of systems, analytical frameworks, control mechanisms, and codified methodologies organizations employ to effectively navigate shifting market dynamics, maintain competitive advantage, and systematically enhance operational effectiveness. These tools cover diverse organizational functions, ranging from resource planning and process monitoring to record-keeping and strategic decision support.

== Key Categories of Business Systems == Business tools can be functionally segmented across departments, addressing aspects such as resource allocation, workflow automation, information persistence, human capital management, and performance oversight. A standard functional division includes tools for data intake/verification, systems for process governance and optimization, and platforms for data aggregation leading to strategic judgment.

Modern business tooling has undergone profound transformation due to rapid technological advancement, complicating the selection process for optimal solutions for any given corporate context. This complexity is driven by perpetual pressures to reduce expenditures, maximize revenue generation, deeply understand customer requirements, and ensure product delivery aligns precisely with market expectations. Consequently, management strategy should prioritize the thoughtful selection and customization of business tools to fit organizational requirements, rather than passively adopting the newest available technology.

== Global Usage Trends (2013 Survey Example) == Historical data, such as a 2013 Bain & Company survey, indicates global priorities in business tooling, reflecting regional needs influenced by market conditions. Top areas often cited include strategic roadmapping, client management systems (CRM), employee feedback mechanisms, comparative analysis (benchmarking), integrated performance metrics (Balanced Scorecard), core capability identification, external sourcing strategies, organizational transition management, logistics oversight (Supply Chain), foundational identity statements (Mission/Vision), and market segment definition.

== Enterprise Software Evolution == Business software, defined as collections of programs executing commercial tasks, has evolved from rudimentary Management Information Systems (MIS) to integrated Enterprise Resource Planning (ERP) suites, later incorporating Customer Relationship Management (CRM), and currently migrating toward cloud-based management ecosystems. While the efficacy of IT investment correlates with organizational outcomes, achieving measurable value critically depends on two factors: the quality of the deployment execution and the diligence applied during the selection and tailoring process for the tools themselves.

See Also

`