# Geekbot MCP
[](https://geekbot.com)
[](https://opensource.org/licenses/MIT)
[](https://www.python.org/downloads/)
[](https://badge.fury.io/py/geekbot-mcp)
**Unlock your Geekbot data within your LLM applications 🚀**
Geekbot MCP (Model Context Protocol) server acts as a bridge, connecting LLM client applications (like Claude) directly to your Geekbot workspace. This allows you to interact with your standups, reports, and team members seamlessly within your conversations using natural language.
## Key Features ✨
- **Access Standup Information**: List all standups in your Geekbot workspace. 📊
- **Retrieve Standup Reports**: Fetch reports with filters for specific standups, users, or date ranges. 📄
- **View Team Members**: Get a list of members you collaborate with in Geekbot. 👥
## Installation 💻
Requires Python 3.10+ and `uv`.
1. **Install uv (if you haven't already):**
```bash
curl -LsSf https://astral.sh/uv/install.sh | sh
```
(See [uv installation docs](https://docs.astral.sh/uv/getting-started/installation/) for more options.)
2. **Install Geekbot MCP:**
```bash
uv tool install geekbot-mcp
```
## Upgrading ⬆️
To update to the latest version:
```bash
uv tool install --upgrade geekbot-mcp
```
## Configuration ⚙️
Connect Geekbot MCP to your LLM (e.g., Claude Desktop):
1. **Get your Geekbot API Key:** Find it in your [Geekbot API/Webhooks settings](https://geekbot.com/dashboard/api-webhooks) 🔑.
2. **Find your `uv` executable path:**
```bash
which uv
```
3. **Configure your LLM client application:** Edit your `claude_desktop_config.json` (or equivalent configuration file for other MCP clients) to add Geekbot MCP server
```json
{
"globalShortcut": "",
"mcpServers": {
// Add or update this section
"geekbot-mcp": {
"command": "<path-returned-by-which-uv>", // Replace with your actual uv path
"args": [
"tool",
"run",
"geekbot-mcp"
],
// Environment variables needed by the server
"env": {
"GB_API_KEY": "<your-geekbot-api-key>" // Replace with your actual API key
}
}
// ... other MCP servers if any
}
// ... other configurations
}
```
*(Refer to the [MCP Quickstart](https://modelcontextprotocol.io/quickstart/) for more details on client configuration.)*
## Usage 💡
Once configured, your LLM client application will have access to the following tools and prompts to interact with your Geekbot data:
### Tools 🛠️
- `list_standups`
**Purpose:** Lists all the standups accessible via your API key. Useful for getting an overview or finding a specific standup ID.
**Example Prompt:** "Hey, can you list my Geekbot standups?"
**Data Fields Returned:**
- `id`: Unique standup identifier.
- `name`: Name of the standup.
- `channel`: Associated communication channel (e.g., Slack channel).
- `time`: Scheduled time for the standup report.
- `timezone`: Timezone for the scheduled time.
- `questions`: List of questions asked in the standup.
- `participants`: List of users participating in the standup.
- `owner_id`: ID of the standup owner.
- `fetch_reports`
**Purpose:** Retrieves specific standup reports. You can filter by standup, user, and date range.
**Example Prompts:**
- "Fetch the reports for submitted yesterday in the Retrospective."
- "Show me reports from user John Doe for the 'Weekly Sync' standup."
- "Get all reports submitted to the Daily Standup standup after June 1st, 2024."
**Available Filters:**
- `standup_id`: Filter by a specific standup ID.
- `user_id`: Filter reports by a specific user ID.
- `after`: Retrieve reports submitted after this date (YYYY-MM-DD) 🗓️.
- `before`: Retrieve reports submitted before this date (YYYY-MM-DD) 🗓️.
**Data Fields Returned:**
- `id`: Unique report identifier.
- `reporter_name`: Name of the user who submitted the report.
- `reporter_id`: ID of the user who submitted the report.
- `standup_id`: ID of the standup the report belongs to.
- `created_at`: Timestamp when the report was submitted.
- `content`: The actual answers/content of the report.
- `list_members`
**Purpose:** Lists all team members you share standups with in your Geekbot workspace.
**Example Prompt:** "Who are the members in my Geekbot workspace?"
**Data Fields Returned:**
- `id`: Unique member identifier.
- `name`: Member's full name.
- `email`: Member's email address.
- `role`: Member's role within Geekbot (e.g., Admin, Member).
### Prompts 💬
- `weekly_rollup_report`
**Purpose:** Generates a comprehensive weekly rollup report that summarizes team standup responses, highlights key updates, identifies risks and mitigation strategies, outlines next steps, and tracks upcoming launches.
**Arguments:**
- `standup_id`: ID of the standup to include in the rollup report.
## Development 🧑💻
Interested in contributing or running the server locally?
### Setup Development Environment
```bash
# 1. Clone the repository
git clone https://github.com/geekbot-com/geekbot-mcp.git
cd geekbot-mcp
# 2. Install uv (if needed)
# curl -LsSf https://astral.sh/uv/install.sh | sh
# 3. Create a virtual environment and install dependencies
uv sync
```
### Running Tests ✅
```bash
# Ensure dependencies are installed (uv sync)
pytest
```
## Contributing 🤝
Contributions are welcome! Please fork the repository and submit a Pull Request with your changes.
## License 📜
This project is licensed under the [MIT License](LICENSE).
## Acknowledgements 🙏
- Built upon the [Anthropic Model Context Protocol](https://github.com/modelcontextprotocol) framework.
- Leverages the official [Geekbot API](https://geekbot.com/developers/).
Raw data
{
"_id": null,
"home_page": null,
"name": "geekbot-mcp",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.10",
"maintainer_email": null,
"keywords": "ai, anthropic, api, chatbot, claude, geekbot, integration, llm, mcp",
"author": null,
"author_email": "Geekbot <support@geekbot.com>",
"download_url": "https://files.pythonhosted.org/packages/e3/12/cfdcf791a8f3681fd8571916eca500f041e19586803d40019e2b3d4557be/geekbot_mcp-0.1.3.tar.gz",
"platform": null,
"description": "# Geekbot MCP\n\n[](https://geekbot.com)\n[](https://opensource.org/licenses/MIT)\n[](https://www.python.org/downloads/)\n[](https://badge.fury.io/py/geekbot-mcp)\n\n**Unlock your Geekbot data within your LLM applications \ud83d\ude80**\n\nGeekbot MCP (Model Context Protocol) server acts as a bridge, connecting LLM client applications (like Claude) directly to your Geekbot workspace. This allows you to interact with your standups, reports, and team members seamlessly within your conversations using natural language.\n\n## Key Features \u2728\n\n- **Access Standup Information**: List all standups in your Geekbot workspace. \ud83d\udcca\n- **Retrieve Standup Reports**: Fetch reports with filters for specific standups, users, or date ranges. \ud83d\udcc4\n- **View Team Members**: Get a list of members you collaborate with in Geekbot. \ud83d\udc65\n\n## Installation \ud83d\udcbb\n\nRequires Python 3.10+ and `uv`.\n\n1. **Install uv (if you haven't already):**\n\n ```bash\n curl -LsSf https://astral.sh/uv/install.sh | sh\n ```\n\n (See [uv installation docs](https://docs.astral.sh/uv/getting-started/installation/) for more options.)\n\n2. **Install Geekbot MCP:**\n\n ```bash\n uv tool install geekbot-mcp\n ```\n\n## Upgrading \u2b06\ufe0f\n\nTo update to the latest version:\n\n```bash\n uv tool install --upgrade geekbot-mcp\n```\n\n## Configuration \u2699\ufe0f\n\nConnect Geekbot MCP to your LLM (e.g., Claude Desktop):\n\n1. **Get your Geekbot API Key:** Find it in your [Geekbot API/Webhooks settings](https://geekbot.com/dashboard/api-webhooks) \ud83d\udd11.\n\n2. **Find your `uv` executable path:**\n\n ```bash\n which uv\n ```\n\n3. **Configure your LLM client application:** Edit your `claude_desktop_config.json` (or equivalent configuration file for other MCP clients) to add Geekbot MCP server\n ```json\n {\n \"globalShortcut\": \"\",\n \"mcpServers\": {\n // Add or update this section\n \"geekbot-mcp\": {\n\n \"command\": \"<path-returned-by-which-uv>\", // Replace with your actual uv path\n \"args\": [\n \"tool\",\n \"run\",\n \"geekbot-mcp\"\n ],\n // Environment variables needed by the server\n \"env\": {\n \"GB_API_KEY\": \"<your-geekbot-api-key>\" // Replace with your actual API key\n }\n }\n // ... other MCP servers if any\n }\n // ... other configurations\n }\n ```\n\n *(Refer to the [MCP Quickstart](https://modelcontextprotocol.io/quickstart/) for more details on client configuration.)*\n\n\n## Usage \ud83d\udca1\n\nOnce configured, your LLM client application will have access to the following tools and prompts to interact with your Geekbot data:\n\n### Tools \ud83d\udee0\ufe0f\n\n- `list_standups`\n\n**Purpose:** Lists all the standups accessible via your API key. Useful for getting an overview or finding a specific standup ID.\n\n**Example Prompt:** \"Hey, can you list my Geekbot standups?\"\n\n**Data Fields Returned:**\n\n- `id`: Unique standup identifier.\n- `name`: Name of the standup.\n- `channel`: Associated communication channel (e.g., Slack channel).\n- `time`: Scheduled time for the standup report.\n- `timezone`: Timezone for the scheduled time.\n- `questions`: List of questions asked in the standup.\n- `participants`: List of users participating in the standup.\n- `owner_id`: ID of the standup owner.\n\n- `fetch_reports`\n\n**Purpose:** Retrieves specific standup reports. You can filter by standup, user, and date range.\n\n**Example Prompts:**\n\n- \"Fetch the reports for submitted yesterday in the Retrospective.\"\n- \"Show me reports from user John Doe for the 'Weekly Sync' standup.\"\n- \"Get all reports submitted to the Daily Standup standup after June 1st, 2024.\"\n\n**Available Filters:**\n\n- `standup_id`: Filter by a specific standup ID.\n- `user_id`: Filter reports by a specific user ID.\n- `after`: Retrieve reports submitted after this date (YYYY-MM-DD) \ud83d\uddd3\ufe0f.\n- `before`: Retrieve reports submitted before this date (YYYY-MM-DD) \ud83d\uddd3\ufe0f.\n\n**Data Fields Returned:**\n\n- `id`: Unique report identifier.\n- `reporter_name`: Name of the user who submitted the report.\n- `reporter_id`: ID of the user who submitted the report.\n- `standup_id`: ID of the standup the report belongs to.\n- `created_at`: Timestamp when the report was submitted.\n- `content`: The actual answers/content of the report.\n\n- `list_members`\n\n**Purpose:** Lists all team members you share standups with in your Geekbot workspace.\n\n**Example Prompt:** \"Who are the members in my Geekbot workspace?\"\n\n**Data Fields Returned:**\n\n- `id`: Unique member identifier.\n- `name`: Member's full name.\n- `email`: Member's email address.\n- `role`: Member's role within Geekbot (e.g., Admin, Member).\n\n### Prompts \ud83d\udcac\n\n- `weekly_rollup_report`\n\n**Purpose:** Generates a comprehensive weekly rollup report that summarizes team standup responses, highlights key updates, identifies risks and mitigation strategies, outlines next steps, and tracks upcoming launches.\n\n**Arguments:**\n\n- `standup_id`: ID of the standup to include in the rollup report.\n\n## Development \ud83e\uddd1\u200d\ud83d\udcbb\n\nInterested in contributing or running the server locally?\n\n### Setup Development Environment\n\n```bash\n# 1. Clone the repository\ngit clone https://github.com/geekbot-com/geekbot-mcp.git\ncd geekbot-mcp\n\n# 2. Install uv (if needed)\n# curl -LsSf https://astral.sh/uv/install.sh | sh\n\n# 3. Create a virtual environment and install dependencies\nuv sync\n```\n\n### Running Tests \u2705\n\n```bash\n# Ensure dependencies are installed (uv sync)\npytest\n```\n\n## Contributing \ud83e\udd1d\n\nContributions are welcome! Please fork the repository and submit a Pull Request with your changes.\n\n## License \ud83d\udcdc\n\nThis project is licensed under the [MIT License](LICENSE).\n\n## Acknowledgements \ud83d\ude4f\n\n- Built upon the [Anthropic Model Context Protocol](https://github.com/modelcontextprotocol) framework.\n- Leverages the official [Geekbot API](https://geekbot.com/developers/).\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Model Context Protocol (MCP) server integrating Geekbot data and tools to Claude AI",
"version": "0.1.3",
"project_urls": {
"Bug Tracker": "https://github.com/geekbot-com/geekbot-mcp/issues",
"Homepage": "https://github.com/geekbot-com/geekbot-mcp"
},
"split_keywords": [
"ai",
" anthropic",
" api",
" chatbot",
" claude",
" geekbot",
" integration",
" llm",
" mcp"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "3ed5a9b454731950d2470ba305df4124e1f729e42442f155e9568911a8698437",
"md5": "3999e87b286d99e41871c4150b1075a0",
"sha256": "39370b191122ec5050dca21878ac2cf8eb10ddc22e1f957fd2b6beec3862b950"
},
"downloads": -1,
"filename": "geekbot_mcp-0.1.3-py3-none-any.whl",
"has_sig": false,
"md5_digest": "3999e87b286d99e41871c4150b1075a0",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.10",
"size": 13567,
"upload_time": "2025-04-07T21:29:53",
"upload_time_iso_8601": "2025-04-07T21:29:53.060022Z",
"url": "https://files.pythonhosted.org/packages/3e/d5/a9b454731950d2470ba305df4124e1f729e42442f155e9568911a8698437/geekbot_mcp-0.1.3-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "e312cfdcf791a8f3681fd8571916eca500f041e19586803d40019e2b3d4557be",
"md5": "dd57d3483d6ba112808f8c826a4ae29a",
"sha256": "6ed8f8895272ea4412f5e1705093f765bf848e55348028be690b92436398ddff"
},
"downloads": -1,
"filename": "geekbot_mcp-0.1.3.tar.gz",
"has_sig": false,
"md5_digest": "dd57d3483d6ba112808f8c826a4ae29a",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.10",
"size": 106832,
"upload_time": "2025-04-07T21:29:54",
"upload_time_iso_8601": "2025-04-07T21:29:54.136589Z",
"url": "https://files.pythonhosted.org/packages/e3/12/cfdcf791a8f3681fd8571916eca500f041e19586803d40019e2b3d4557be/geekbot_mcp-0.1.3.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-04-07 21:29:54",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "geekbot-com",
"github_project": "geekbot-mcp",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "geekbot-mcp"
}