update_settings
Modify workspace preferences including language, article length, picture style, tone, auto-accept suggestions, and writing style settings for content generation.
Instructions
Update workspace settings: language, article length, pictures style, tone, auto-accept suggestions, writing style preferences, and more.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| workspace_id | Yes | Workspace UUID | |
| language | No | Language code, e.g. en, fr | |
| article_length | No | Default article length: short, normal, long, extra_long | |
| pictures_style | No | Default picture style | |
| max_articles_per_period | No | Max articles per period | |
| max_articles_period | No | Period: day, week, month | |
| prefered_tone_of_voice_id | No | Default tone of voice UUID | |
| auto_accept_suggestions | No | Automatically accept new suggestions | |
| use_title_cases_in_headings | No | Use title case in article headings | |
| prefer_active_voice | No | Prefer active voice in articles | |
| write_in_first_person | No | Write articles in first person |
Implementation Reference
- src/tools/settings.ts:18-42 (handler)The `update_settings` tool is registered and implemented within `src/tools/settings.ts`. It takes a workspace ID and various optional configuration parameters, which it then merges into a PATCH request to the workspace settings endpoint.
server.tool( 'update_settings', 'Update workspace settings: language, article length, pictures style, tone, auto-accept suggestions, writing style preferences, and more.', { workspace_id: z.string().describe('Workspace UUID'), language: z.string().optional().describe('Language code, e.g. en, fr'), article_length: z.string().optional().describe('Default article length: short, normal, long, extra_long'), pictures_style: z.string().optional().describe('Default picture style'), max_articles_per_period: z.number().optional().describe('Max articles per period'), max_articles_period: z.string().optional().describe('Period: day, week, month'), prefered_tone_of_voice_id: z.string().optional().describe('Default tone of voice UUID'), auto_accept_suggestions: z.boolean().optional().describe('Automatically accept new suggestions'), use_title_cases_in_headings: z.boolean().optional().describe('Use title case in article headings'), prefer_active_voice: z.boolean().optional().describe('Prefer active voice in articles'), write_in_first_person: z.boolean().optional().describe('Write articles in first person'), }, async ({ workspace_id, ...params }) => { const body: Record<string, unknown> = {}; for (const [k, v] of Object.entries(params)) { if (v !== undefined) body[k] = v; } const res = await client.patch(`/workspaces/${workspace_id}/settings`, { settings: body }); return { content: [{ type: 'text' as const, text: JSON.stringify(res.data) }] }; } );