Bahn: aisupport, Analyse-O2C-C2S, awesome-bahn-mcp-servers, beam-mcp,
Confluence_Bot, db-planet-mcp-server, O2C-Harness, project-audit,
Projekt-KIQ-HP, teamlandkarte-mcp
Dhive: Jury-Voting
Privat: CV, NoteGraph (NOTE: NoteGraph needs complete redo after consolidation)
Shared: AI-Orchestrator, OrgMyLife, power_skills_and_more
Shared/references: symphony (read-only)
Bahn repos remain available as independent remotes - this monorepo
pulls them in via subtree, the originals are untouched.
8.6 KiB
8.6 KiB
DB Planet MCP Server — Tool Overview
29 tools across 9 components. Each tool maps to one or more Haiilo API endpoints.
1. Search (3 tools)
| Tool | API Endpoint | What it does |
|---|---|---|
| Search_FullText | GET /api/search?term= |
Keyword search across all content. Returns metadata (id, type, excerpt). |
| Search_QuickEntity | GET /api/quick-entity-search?term= |
Fast entity lookup by name (users, workspaces, pages, events). |
| Search_Grouped | GET /api/search/grouped?term= |
Same as FullText but results grouped by content type. |
Example user queries:
- "Find articles about sustainability on DB Planet"
- "Search for GenAI content"
- "Is there a workspace called Innovation Hub?"
- "Find the Town Hall event"
Limitations:
- Keyword matching only, not semantic search. Short queries (1-2 words) work best.
- LLMs sometimes wrap queries in quotes — we strip them automatically.
2. Workspace Management (5 tools)
| Tool | API Endpoint | What it does |
|---|---|---|
| Workspace_List | GET /api/workspaces |
List workspaces. memberOnly=true filters for user's own workspaces (client-side pagination + filter). |
| Workspace_Get | GET /api/workspaces/{id} |
Get workspace details by UUID or slug. |
| Workspace_GetMembers | GET /api/workspaces/{id}/members |
Get member list for a workspace. |
| Workspace_Join | PUT /api/workspaces/{id}/users/join |
Join a workspace. |
| Workspace_Create | POST /api/workspaces |
Create a new workspace. Auto-sets current user as admin. |
Example user queries:
- "What workspaces am I a member of?" →
Workspace_List(memberOnly=true) - "Show me the Innovation Hub workspace" →
Search_QuickEntity→Workspace_Get - "Who are the members of the BahnGPT workspace?" →
Workspace_GetMembers - "Join the Digital Transformation workspace" →
Search_QuickEntity→Workspace_Join - "Create a workspace called Q1 Planning" →
Workspace_Create
Limitations:
- API has no server-side membership filter —
memberOnlypaginates all workspaces client-side. - API defaults to 20 results per page.
3. News (1 tool)
| Tool | API Endpoint | What it does |
|---|---|---|
| News_GetFeed | GET /web/blog/newsfeed |
Get news articles from subscribed pages. Filters: published/scheduled/drafts, date range. |
Example user queries:
- "What are the latest news on DB Planet?"
- "Show me articles from January 2026"
- "Are there any draft articles?"
Limitations:
- ⚠️ Returns 404 on staging — endpoint doesn't exist in staging environment.
- Only returns articles from pages the authenticated user is subscribed to.
4. People (4 tools)
| Tool | API Endpoint | What it does |
|---|---|---|
| People_GetMe | GET /api/users/me |
Get current user's profile. |
| People_Get | GET /api/users/{id} |
Get a user's profile by UUID. |
| People_List | GET /api/users |
List all users with pagination. |
| People_Search | GET /api/users/chooser/search?term=&types=user |
Search users by name only. |
| People_GetManaged | GET /api/users/{id}/managed |
Get all users that a given user manages (direct reports). |
Example user queries:
- "Show me my DB Planet profile" →
People_GetMe - "Find Alexandra on DB Planet" →
People_Search - "How many users are on DB Planet?" →
People_List - "Who does Alexandra manage?" →
People_Search+People_GetManaged
Limitations:
- People_Search only matches by name — cannot search by department, job title, or expertise.
properties.departmentexists on profiles but is not queryable and often null on staging.- No "find people in department X" capability via the API.
5. Events (4 tools)
| Tool | API Endpoint | What it does |
|---|---|---|
| Event_Get | GET /api/events/{id} |
Get event details by UUID. |
| Event_GetMemberships | GET /api/events/{id}/memberships |
Get attendee list. Only works if showParticipants is enabled. |
| Event_UpdateStatus | PUT /api/events/{id}/status |
Update attendance: ATTENDING, NOT_ATTENDING, TENTATIVE. |
| Event_Create | POST /api/events |
Create a new event. Auto-sets current user as host/admin. |
Example user queries:
- "Show me details about the Town Hall event" →
Search_QuickEntity→Event_Get - "Who is attending the Innovation Workshop?" →
Event_GetMemberships - "Register me for the team building event" →
Event_UpdateStatus(status=ATTENDING) - "Decline the Friday meeting" →
Event_UpdateStatus(status=NOT_ATTENDING) - "Create a team event on May 15th at Frankfurt HQ" →
Event_Create
Limitations:
- No "list all events" endpoint — must use Search_QuickEntity to find events by name.
- Event_GetMemberships returns 404 if the event has
showParticipants=false.
6. Social (4 tools)
| Tool | API Endpoint | What it does |
|---|---|---|
| Social_GetComments | GET /api/comments?targetId=&targetType= |
Get comments on an entity. |
| Social_PostComment | POST /api/comments |
Post a comment. Auto-sets current user as author. |
| Social_GetLikes | GET /api/like-targets/{type}/{id}/likes |
Get like count and list. |
| Social_ToggleLike | POST /api/like-targets/{type}/{id}/likes/{userId} |
Like or unlike content. |
Example user queries:
- "Show me comments on the latest blog post" →
Search_FullText→Social_GetComments - "How many likes does the sustainability article have?" →
Social_GetLikes - "Like the welcome post" →
People_GetMe+Search_FullText→Social_ToggleLike - "Comment 'Great work!' on the team update" →
Search_FullText→Social_PostComment
Limitations:
- Valid targetTypes:
blog-article,timeline-item,wiki-articleonly. Events are NOT supported. - Requires content UUID — must search first to find it.
- ToggleLike requires the user's UUID (from People_GetMe).
7. Notifications (3 tools)
| Tool | API Endpoint | What it does |
|---|---|---|
| Notification_List | GET /api/notifications |
List notifications. Filter by category: ACTIVITY, DISCUSSION. |
| Notification_GetStatus | GET /api/notifications/status |
Get unseen notification count. |
| Notification_MarkSeen | PUT /api/notifications/action/mark-seen |
Mark notifications as seen. Optional category filter. |
Example user queries:
- "Do I have unread notifications?" →
Notification_GetStatus - "Show me my activity notifications" →
Notification_List(category=ACTIVITY) - "Show me discussion notifications" →
Notification_List(category=DISCUSSION) - "Mark all notifications as read" →
Notification_MarkSeen
Limitations:
- Category parameter may be required (API returns error without it on some environments).
8. Pages (4 tools)
| Tool | API Endpoint | What it does |
|---|---|---|
| Page_List | GET /api/pages |
List all pages. |
| Page_Get | GET /api/pages/{id} |
Get page details by UUID or slug. |
| Page_GetMembers | GET /api/pages/{id}/members |
Get page members/admins. |
| Page_Create | POST /api/pages |
Create a new page. Auto-sets current user as admin. |
Example user queries:
- "What pages are available on DB Planet?" →
Page_List - "Show me the HR Department page" →
Search_QuickEntity→Page_Get - "Who manages the Innovation page?" →
Page_GetMembers - "Create a page for the sustainability initiative" →
Page_Create
Limitations:
- ⚠️ Page_Create returns 404 on staging — endpoint doesn't exist in staging environment.
9. Content (1 tool)
| Tool | API Endpoint | What it does |
|---|---|---|
| Content_GetFull | Various widget endpoints | Fetch full rendered content by ID and type. Supports: blog-article, wiki-article, page, workspace, app, timeline-item. |
Example user queries:
- "Show me the full text of that article" →
Content_GetFull(after search) - "Read the wiki page about onboarding" →
Search_FullText→Content_GetFull
Limitations:
- Requires
appIdfor blog and wiki articles (available from Search_FullText results). - Uses internal widget layout endpoints — may break if Haiilo changes layout naming.
Summary
| Component | Tools | Status |
|---|---|---|
| Search | 3 | ✅ Working |
| Workspaces | 5 | ✅ Working |
| News | 1 | ⚠️ 404 on staging |
| People | 5 | ✅ Working (name search only) |
| Events | 4 | ✅ Working |
| Social | 4 | ✅ Working |
| Notifications | 3 | ✅ Working |
| Pages | 4 | ✅ Working (Create 404 on staging) |
| Content | 1 | ✅ Working |
| Total | 30 |