rybbit-mcp
Enables querying Rybbit Analytics data directly through MCP-compatible clients like Claude Code. It provides tools for monitoring website statistics, user sessions, error logs, funnels, and performance metrics via natural language.
README
@nks-hub/rybbit-mcp
MCP server for Rybbit Analytics — query statistics, errors, users, sessions, funnels, goals, and performance metrics directly from Claude Code or any MCP-compatible client.
Why?
Instead of manually checking the Rybbit dashboard, let your AI assistant query analytics data directly:
- "How many users visited the site today?"
- "Show me the top pages by bounce rate this week"
- "What errors occurred in the last hour?"
- "Show user journey from homepage to checkout"
- "Compare browser usage between mobile and desktop"
Quick Start
Installation
npm install -g @nks-hub/rybbit-mcp
Or clone and build:
git clone https://github.com/nks-hub/rybbit-mcp.git
cd rybbit-mcp
npm install && npm run build
Configuration
Add to your ~/.claude/settings.json or project .claude/settings.json:
{
"mcpServers": {
"rybbit": {
"command": "npx",
"args": ["-y", "@nks-hub/rybbit-mcp"],
"env": {
"RYBBIT_URL": "https://your-rybbit-instance.com",
"RYBBIT_API_KEY": "your-api-key"
}
}
}
}
Usage
Ask Claude Code anything about your analytics data. The MCP tools are automatically available.
Features
| Feature | Description |
|---|---|
| 27 Analytics Tools | Complete coverage of Rybbit API — overview, metrics, sessions, users, events, errors, performance, funnels, goals, journeys |
| Flexible Auth | API key (recommended) or email/password authentication |
| Smart Filtering | Filter by 22 dimensions (browser, country, UTM, page, device, etc.) with 8 comparison types |
| Time Ranges | Date ranges (YYYY-MM-DD) or relative time (pastMinutesStart) |
| Time Series | Configurable bucket granularity from minutes to years |
| Pagination | Built-in page/limit support for large datasets |
| Response Truncation | Auto-truncation at 25k chars to prevent context bloat |
| Actionable Errors | Error messages guide the LLM toward correct tool usage |
Authentication
Supports two authentication methods:
| Method | Environment Variables | Use Case |
|---|---|---|
| API Key | RYBBIT_API_KEY |
Recommended for production |
| Email/Password | RYBBIT_EMAIL, RYBBIT_PASSWORD |
Development/testing |
Both require RYBBIT_URL pointing to your Rybbit instance.
Tools (27)
Configuration
| Tool | Description |
|---|---|
rybbit_get_config |
Get server version and configuration |
rybbit_list_sites |
List all sites and organizations |
Real-time & Overview
| Tool | Description |
|---|---|
rybbit_live_users |
Current active users count |
rybbit_get_overview |
Aggregated metrics (sessions, pageviews, users, bounce rate, duration) |
rybbit_get_overview_timeseries |
Metrics as time-series with configurable buckets |
rybbit_get_session_locations |
Geographic session data with coordinates for map visualization |
Metrics & Dimensions
| Tool | Description |
|---|---|
rybbit_get_metric |
Breakdown by dimension (browser, OS, country, page, UTM, etc.) |
rybbit_get_retention |
User retention cohort analysis |
Sessions
| Tool | Description |
|---|---|
rybbit_list_sessions |
Session list with filtering and pagination |
rybbit_get_session |
Full session detail with events and user traits |
Users
| Tool | Description |
|---|---|
rybbit_list_users |
Identified users with session counts and traits |
rybbit_get_user |
User detail with traits and activity |
rybbit_get_user_traits |
Trait keys, values, or find users by trait |
Events
| Tool | Description |
|---|---|
rybbit_list_events |
Raw event records with filtering |
rybbit_get_event_names |
Custom event names and counts |
rybbit_get_event_properties |
Property breakdowns per event |
rybbit_get_event_timeseries |
Event count trends over time with configurable buckets |
rybbit_get_outbound_links |
Outbound link clicks with URLs and counts |
Errors
| Tool | Description |
|---|---|
rybbit_get_errors |
Error types/counts, individual instances, or timeseries for a specific error |
Performance (Web Vitals)
| Tool | Description |
|---|---|
rybbit_get_performance |
Core Web Vitals (LCP, CLS, INP, FCP, TTFB) with percentiles |
rybbit_get_performance_timeseries |
Web Vitals trends over time |
Funnels & Goals
| Tool | Description |
|---|---|
rybbit_list_funnels |
Saved funnels with step definitions |
rybbit_analyze_funnel |
Ad-hoc funnel analysis with custom steps |
rybbit_get_funnel_step_sessions |
Sessions that reached or dropped off at a funnel step |
rybbit_list_goals |
Goals with conversion metrics |
rybbit_get_goal_sessions |
Sessions that completed a specific goal |
Journeys
| Tool | Description |
|---|---|
rybbit_get_journeys |
User navigation path analysis |
Common Parameters
All analytics tools support these optional parameters:
| Parameter | Type | Description |
|---|---|---|
siteId |
string | Site identifier (required) |
startDate |
string | Start date YYYY-MM-DD |
endDate |
string | End date YYYY-MM-DD |
timeZone |
string | IANA timezone (e.g., Europe/Prague) |
filters |
array | Filter array [{parameter, type, value[]}] |
pastMinutesStart |
number | Minutes ago (alternative to date range) |
Filter Parameters
browser, operating_system, language, country, region, city, device_type, referrer, hostname, pathname, page_title, querystring, event_name, channel, utm_source, utm_medium, utm_campaign, utm_term, utm_content, entry_page, exit_page, user_id
Filter Types
equals, not_equals, contains, not_contains, regex, not_regex, greater_than, less_than
Time Buckets
minute, five_minutes, ten_minutes, fifteen_minutes, hour, day, week, month, year
Development
# Install dependencies
npm install
# Build
npm run build
# Watch mode
npm run dev
# Type checking
npx tsc --noEmit
Requirements
- Node.js: 18+
- Rybbit Analytics: Self-hosted or cloud instance
Contributing
Contributions are welcome! For major changes, please open an issue first.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'feat: description') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
Support
- 📧 Email: dev@nks-hub.cz
- 🐛 Bug reports: GitHub Issues
- 📖 MCP Protocol: modelcontextprotocol.io
License
MIT License — see LICENSE for details.
Links
- Rybbit Analytics
- npm Package
- @nks-hub/rybbit-ts — TypeScript tracking SDK
- rybbit-flutter-sdk — Flutter/Dart tracking SDK
<p align="center"> Made with ❤️ by <a href="https://github.com/nks-hub">NKS Hub</a> </p>
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。