kb_update_preferences
Customize your AI interaction experience by updating communication style, technical level, response detail, and personal preferences for tailored assistance.
Instructions
Update user preferences (communication style, technical level, etc.)
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| communicationStyle | No | ||
| favoriteTools | No | ||
| interests | No | ||
| learningStyle | No | ||
| responseDetail | No | ||
| technicalLevel | No | ||
| workingHours | No |
Implementation Reference
- src/index.ts:120-135 (registration)Tool registration and input schema definition for 'kb_update_preferences' in the tools array used by ListToolsRequestSchema handler.{ name: 'kb_update_preferences', description: 'Update user preferences (communication style, technical level, etc.)', inputSchema: { type: 'object', properties: { communicationStyle: { type: 'string' }, learningStyle: { type: 'string' }, workingHours: { type: 'string' }, responseDetail: { type: 'string', enum: ['concise', 'detailed', 'balanced'] }, technicalLevel: { type: 'string', enum: ['beginner', 'intermediate', 'expert'] }, favoriteTools: { type: 'array', items: { type: 'string' } }, interests: { type: 'array', items: { type: 'string' } } } } },
- src/index.ts:581-591 (handler)MCP CallToolRequestSchema handler case for 'kb_update_preferences' that delegates to KnowledgeManager.updatePreferences and returns success response.case 'kb_update_preferences': { await km.updatePreferences(args as any); return { content: [ { type: 'text', text: '✅ Preferences updated successfully' } ] }; }
- src/KnowledgeManager.ts:175-188 (handler)Core implementation in KnowledgeManager that updates the preferences object in the knowledge base, logs history, and persists to file.async updatePreferences(updates: Partial<Preferences>): Promise<void> { Object.entries(updates).forEach(([field, value]) => { const oldValue = (this.kb.preferences as any)[field]; (this.kb.preferences as any)[field] = value; this.addHistory({ action: oldValue === undefined ? 'add' : 'update', category: 'preferences', field, oldValue, newValue: value }); }); await this.save(); }