worklab-tools
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| HF_TOKEN | Yes | HuggingFace token, required for transcribe_audio and register_voiceprint | |
| GEMINI_API_KEY | Yes | API key for Google AI Studio, required for generate_image | |
| OPENROUTER_API_KEY | Yes | OpenRouter API key, required for generate_ppt | |
| OPENROUTER_BASE_URL | No | Base URL for OpenRouter API | https://openrouter.ai/api/v1 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| index_knowledgeA | Rebuild the vector index from all markdown files in the knowledge base. Scans companies/, people.md, projects.md, meetings/ and indexes all content into ChromaDB with rich metadata for semantic search and filtering. Call this after adding or updating knowledge base files. |
| upsert_knowledgeA | Incrementally update the vector index — only re-index changed files. Compares file MD5 hashes to detect additions, modifications, and deletions. Much faster than index_knowledge() when only a few files changed. |
| search_knowledgeA | Search the knowledge base using semantic similarity with optional filters. |
| generate_imageA | Generate an image from a text description using Gemini (nano banana). Use this when the user needs illustrations, diagrams, icons, or any visual content. The image will be saved to the current working directory. |
| generate_pptA | Generate a complete PPT presentation from a topic and optional context. Plans an outline using Gemini, generates slide images, and outputs a PDF. |
| transcribe_audioA | Transcribe an audio/video file to text using local Whisper. Automatically detects multiple speakers using pyannote and matches against registered voiceprints. Unknown speakers are labeled as "未知说话人1", "未知说话人2", etc. |
| register_voiceprintA | Register a person's voiceprint from an audio file. The audio should contain only one person speaking clearly for 20-30 seconds. The voiceprint will be saved and used to identify this person in future meeting transcriptions. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 7 tools
Most tools have clearly distinct purposes: knowledge indexing/search, image generation, PPT creation, audio transcription, and voiceprint registration. However, index_knowledge and upsert_knowledge both handle updating the vector index, and an agent might initially be unsure which to call; descriptions clarify the difference but some overlap exists.
All tool names follow a consistent verb_noun pattern in snake_case: index_knowledge, search_knowledge, generate_image, generate_ppt, transcribe_audio, register_voiceprint. This makes the set predictable and easy to navigate.
Seven tools is well within the ideal range and each tool serves a distinct function across three logical clusters: knowledge management (3), content generation (2), and audio processing (2). The count feels appropriately scoped for a worklab assistant without being overwhelming.
The knowledge base tools cover the full indexing/search lifecycle, and image/PPT generation covers creation needs. However, voiceprint management is minimal—there is a register function but no way to list, update, or delete voiceprints, and audio transcription relies on pre-registered voices without a fallback for managing those. Overall, core workflows are covered with minor gaps.