geekbot mcp
A server that bridges Anthropic's Claude AI with Geekbot's standup management tools, allowing users to access and utilize Geekbot data within Claude conversations.
A server that bridges Anthropic's Claude AI with Geekbot's standup management tools, allowing users to access and utilize Geekbot data within Claude conversations.
Geekbot MCP server acts as a bridge between Anthropic's Claude AI and Geekbot's powerful standup, polls and survey management tools. Provides access to your Geekbot data and a set of tools to seamlessly use them in your Claude AI conversations.
Download the uv package manager
curl -LsSf https://astral.sh/uv/install.sh | sh
Further instructions can be found here
git clone https://github.com/geekbot-com/geekbot-mcp.git
cd geekbot-mcp
uv tool install --editable .
Before using Geekbot MCP, you need to set up your Geekbot API key:
You can obtain your Geekbot API key from here.
Configure the mcp server in your claude_desktop_config.json
{
"globalShortcut": "",
"mcpServers": {
"geekbot-mcp": {
"command": "<path-to-your-uv-executable>",
"args": [
"tool",
"run",
"geekbot-mcp"
],
"env": {
"GB_API_KEY": "<your-geekbot-api-key>"
}
}
}
}
To find the path to your uv executable, you can run which uv
in your terminal.
You can find more information about the configuration here
list_standups
Retrieves a list of all standups from your Geekbot workspace.
The response is in a plain text format.
<Standups>
***Standup: 1 - Infrastructure Changelog***
id: 1
name: Infrastructure Changelog
channel: team-infrastructure
time: 10:00:00
timezone: user_local
questions:
- text: What changed in the infrastructure today?
answer_type: text
is_random: false
***Standup: 2 - Meeting Agenda (TOC Beta)***
id: 2
name: Meeting Agenda (TOC Beta)
channel: meeting-notes
time: 10:00:00
timezone: user_local
questions:
- text: What should we discuss in this meeting?
answer_type: text
is_random: false
</Standups>
fetch_reports
Fetches standup reports with support for filtering by:
The response is in a plain text format.
<Reports>
***Report: 1 - 1***
id: 208367845
reporter_name: John Doe | @john_doe
reporter_id: U1234
standup_id: 1
created_at: 2025-03-27 13:52:59
content:
q: What have you done since your last report?
a: • Plan work for the next week
• Worked on the new feature
q: What will you do today?
a: • Plan work for the next week
• Worked on the new feature
q: How do you feel today?
a: I am fine.
list_members
Retrieves a list of all members from your Geekbot workspace.
git clone https://github.com/geekbot-com/geekbot-mcp.git
cd geekbot-mcp
uv venv
source .venv/bin/activate
uv pip install -e
pytest
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License
[
{
"description": "Fetch standups list from Geekbot Returns: str: Properly formatted JSON string of standups list ",
"inputSchema": {
"properties": {},
"title": "fetch_standupsArguments",
"type": "object"
},
"name": "fetch_standups"
},
{
"description": "Fetch reports list from Geekbot Args: standup_id: int, optional, default is None The standup id to fetch reports for user_id: int, optional, default is None The user id to fetch reports for after: str, optional, default is None The date to fetch reports after in YYYY-MM-DD format before: str, optional, default is None The date to fetch reports before in YYYY-MM-DD format Returns: str: Properly formatted JSON string of reports list ",
"inputSchema": {
"properties": {
"after": {
"default": {
"path": "README.md",
"type": "blob"
},
"title": "After",
"type": "string"
},
"before": {
"default": {
"path": "README.md",
"type": "blob"
},
"title": "Before",
"type": "string"
},
"standup_id": {
"default": {
"path": "README.md",
"type": "blob"
},
"title": "Standup Id",
"type": "integer"
},
"user_id": {
"default": {
"path": "README.md",
"type": "blob"
},
"title": "User Id",
"type": "integer"
}
},
"title": "fetch_reportsArguments",
"type": "object"
},
"name": "fetch_reports"
}
]