@elsahafy/ux-mcp-server 2.0.0 → 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,484 @@
1
+ {
2
+ "name": "Ethical Design & Dark Patterns",
3
+ "description": "Comprehensive guide to ethical design principles and avoiding dark patterns that manipulate users",
4
+ "definition": "Ethical design is the practice of creating products that respect users, their attention, data, and autonomy. Dark patterns are user interfaces designed to trick users into doing things they might not want to do.",
5
+ "ethical_design_principles": {
6
+ "respect_users": {
7
+ "autonomy": {
8
+ "description": "Users should have control over their experience",
9
+ "practices": [
10
+ "Provide clear choices, not manipulated decisions",
11
+ "Make opting out as easy as opting in",
12
+ "Don't trick users into actions",
13
+ "Respect user preferences and settings"
14
+ ]
15
+ },
16
+ "attention": {
17
+ "description": "Respect users' time and focus",
18
+ "practices": [
19
+ "Don't use infinite scroll for time-sensitive tasks",
20
+ "Provide ways to control notifications",
21
+ "Don't interrupt unnecessarily",
22
+ "Make it easy to leave/close",
23
+ "Batch notifications instead of spamming"
24
+ ]
25
+ },
26
+ "data": {
27
+ "description": "Handle user data responsibly",
28
+ "practices": [
29
+ "Collect only necessary data",
30
+ "Explain why data is needed",
31
+ "Provide easy data export/deletion",
32
+ "Don't sell data without explicit consent",
33
+ "Be transparent about data usage"
34
+ ]
35
+ }
36
+ },
37
+ "transparency": {
38
+ "description": "Be honest and clear about what the product does",
39
+ "practices": [
40
+ "Clear, understandable privacy policies",
41
+ "Explain costs upfront (no hidden fees)",
42
+ "Honest marketing (no bait-and-switch)",
43
+ "Transparent about AI/automation",
44
+ "Clear terms and conditions (plain language)"
45
+ ],
46
+ "examples": {
47
+ "good": "Free for 30 days, then $9.99/month. Cancel anytime.",
48
+ "bad": "Free trial! (hidden: auto-charges after 7 days, hard to cancel)"
49
+ }
50
+ },
51
+ "inclusivity": {
52
+ "description": "Design for everyone, not just average users",
53
+ "practices": [
54
+ "Accessibility (WCAG AA minimum)",
55
+ "Support assistive technologies",
56
+ "Consider diverse users (age, ability, culture, language)",
57
+ "Avoid assumptions about users",
58
+ "Test with diverse user groups"
59
+ ]
60
+ },
61
+ "sustainability": {
62
+ "description": "Consider environmental and social impact",
63
+ "practices": [
64
+ "Optimize performance (less energy)",
65
+ "Don't encourage wasteful behavior",
66
+ "Consider digital wellbeing",
67
+ "Reduce dark patterns that increase usage unnecessarily"
68
+ ]
69
+ }
70
+ },
71
+ "dark_patterns": {
72
+ "description": "Deceptive design practices that trick users into unintended actions",
73
+ "types": {
74
+ "sneaking": {
75
+ "description": "Hiding or disguising information that the user would care about",
76
+ "examples": {
77
+ "sneak_into_basket": {
78
+ "description": "Adding items to cart without user's knowledge",
79
+ "example": "Insurance or warranty auto-added to cart",
80
+ "why_harmful": "User pays for something they didn't want",
81
+ "ethical_alternative": "Offer as optional add-on with clear checkbox (unchecked by default)"
82
+ },
83
+ "hidden_costs": {
84
+ "description": "Revealing unexpected costs at the last step",
85
+ "example": "Showing $50 price, then $80 at checkout (fees, taxes, shipping)",
86
+ "why_harmful": "Bait-and-switch, wastes user's time",
87
+ "ethical_alternative": "Show total price upfront, or clearly separate base price from fees early"
88
+ },
89
+ "hidden_subscription": {
90
+ "description": "Free trial auto-converts to paid subscription",
91
+ "example": "'Free trial' with credit card required, buried auto-renewal terms",
92
+ "why_harmful": "Unexpected charges",
93
+ "ethical_alternative": "Clear notice of trial end date, reminder before charging, easy cancellation"
94
+ }
95
+ }
96
+ },
97
+ "urgency": {
98
+ "description": "Creating false sense of urgency to pressure decisions",
99
+ "examples": {
100
+ "countdown_timers": {
101
+ "description": "Fake or resetting countdown timers",
102
+ "example": "'Sale ends in 2 hours!' (but timer resets on refresh)",
103
+ "why_harmful": "Manipulates through false scarcity",
104
+ "ethical_alternative": "Real, honest urgency (if sale truly ends, show real countdown)"
105
+ },
106
+ "fake_scarcity": {
107
+ "description": "False claims of limited availability",
108
+ "example": "'Only 2 left in stock!' (but always 2 left)",
109
+ "why_harmful": "Creates false FOMO (fear of missing out)",
110
+ "ethical_alternative": "Show real stock if using scarcity, or don't use scarcity tactics"
111
+ },
112
+ "high_demand_messages": {
113
+ "description": "Fake social pressure",
114
+ "example": "'500 people viewing this!' (not true)",
115
+ "why_harmful": "Manipulates decision-making",
116
+ "ethical_alternative": "Real social proof (verified reviews, actual purchase counts)"
117
+ }
118
+ }
119
+ },
120
+ "misdirection": {
121
+ "description": "Directing user's attention to distract from important info",
122
+ "examples": {
123
+ "visual_prominence": {
124
+ "description": "Making desired action prominent, unwanted action hidden",
125
+ "example": "Giant 'Accept all cookies' button, tiny 'Reject' link",
126
+ "why_harmful": "Manipulates choice through design",
127
+ "ethical_alternative": "Equal visual weight for accept/reject options"
128
+ },
129
+ "trick_wording": {
130
+ "description": "Confusing language to mislead",
131
+ "example": "'No thanks, I don't want to save money' (to decline offer)",
132
+ "why_harmful": "Shames or confuses user",
133
+ "ethical_alternative": "Neutral wording: 'No thanks' or 'Maybe later'"
134
+ },
135
+ "disguised_ads": {
136
+ "description": "Ads that look like content",
137
+ "example": "News article that's actually sponsored content (not labeled)",
138
+ "why_harmful": "Deceptive, erodes trust",
139
+ "ethical_alternative": "Clear 'Sponsored' or 'Ad' label, visual distinction"
140
+ }
141
+ }
142
+ },
143
+ "forced_action": {
144
+ "description": "Making users do something to proceed",
145
+ "examples": {
146
+ "forced_continuity": {
147
+ "description": "Making it hard to cancel subscription",
148
+ "example": "Easy to sign up online, must call to cancel (with long hold times)",
149
+ "why_harmful": "Traps users, wastes time",
150
+ "ethical_alternative": "Cancel as easily as sign-up (same interface)"
151
+ },
152
+ "forced_enrollment": {
153
+ "description": "Requiring account for basic functionality",
154
+ "example": "Can't view content without creating account",
155
+ "why_harmful": "Unnecessary barrier, data grab",
156
+ "ethical_alternative": "Guest checkout, browse without account, optional sign-up"
157
+ },
158
+ "privacy_zuckering": {
159
+ "description": "Tricking users into sharing more data than intended",
160
+ "example": "Pre-checked boxes to share data with partners",
161
+ "why_harmful": "Violates privacy expectations",
162
+ "ethical_alternative": "Unchecked by default, clear opt-in"
163
+ }
164
+ }
165
+ },
166
+ "social_proof": {
167
+ "description": "Fake or manipulated social proof",
168
+ "examples": {
169
+ "fake_reviews": {
170
+ "description": "Fabricated or paid reviews",
171
+ "example": "5-star reviews that are clearly fake or incentivized",
172
+ "why_harmful": "Deceptive, misleads purchasing decisions",
173
+ "ethical_alternative": "Verified reviews only, show mix of ratings, enable filtering"
174
+ },
175
+ "activity_notifications": {
176
+ "description": "Fake activity notifications",
177
+ "example": "'John from Texas just bought this!' (automated, fake)",
178
+ "why_harmful": "Manipulative, dishonest",
179
+ "ethical_alternative": "Real activity only, or don't use this pattern"
180
+ },
181
+ "testimonial_deception": {
182
+ "description": "Fake or cherry-picked testimonials",
183
+ "example": "Stock photo testimonials, only showing positive reviews",
184
+ "why_harmful": "Dishonest representation",
185
+ "ethical_alternative": "Real testimonials with mix of experiences, show average rating"
186
+ }
187
+ }
188
+ },
189
+ "obstruction": {
190
+ "description": "Making it hard to do something user wants",
191
+ "examples": {
192
+ "roach_motel": {
193
+ "description": "Easy to get in, hard to get out",
194
+ "example": "Easy sign-up, but account deletion buried in settings with multiple confirmations",
195
+ "why_harmful": "Locks users in",
196
+ "ethical_alternative": "Symmetrical effort for account creation and deletion"
197
+ },
198
+ "comparison_prevention": {
199
+ "description": "Making it hard to compare options",
200
+ "example": "Pricing tables with confusing, inconsistent units",
201
+ "why_harmful": "Prevents informed decisions",
202
+ "ethical_alternative": "Clear, consistent comparison (features, pricing)"
203
+ },
204
+ "hard_to_cancel": {
205
+ "description": "Complex cancellation process",
206
+ "example": "Must call, wait on hold, convince retention specialist",
207
+ "why_harmful": "Frustrating, wastes time, traps users",
208
+ "ethical_alternative": "Cancel button in account settings, confirm and done"
209
+ }
210
+ }
211
+ },
212
+ "nagging": {
213
+ "description": "Repeatedly asking for something user has declined",
214
+ "examples": {
215
+ "persistent_notifications": {
216
+ "description": "Asking for notification permission repeatedly",
217
+ "example": "Pop-up asking for notifications every visit after user declined",
218
+ "why_harmful": "Annoying, disrespectful",
219
+ "ethical_alternative": "Ask once, or after significant value delivered, respect 'no'"
220
+ },
221
+ "app_rating_prompts": {
222
+ "description": "Repeatedly asking for app rating",
223
+ "example": "Pop-up every day asking for rating",
224
+ "why_harmful": "Interrupts experience, annoying",
225
+ "ethical_alternative": "Ask once after positive interaction, delay between asks"
226
+ },
227
+ "upsell_spam": {
228
+ "description": "Constant upsell prompts",
229
+ "example": "Every action prompts 'Upgrade to Premium!' modal",
230
+ "why_harmful": "Degrades experience",
231
+ "ethical_alternative": "Contextual upsells (when feature is needed), not constant nagging"
232
+ }
233
+ }
234
+ },
235
+ "interface_interference": {
236
+ "description": "Manipulating the interface to influence decisions",
237
+ "examples": {
238
+ "confirmshaming": {
239
+ "description": "Guilt-tripping users who decline",
240
+ "example": "'No thanks, I don't want to save money' (as decline button)",
241
+ "why_harmful": "Manipulative, shames user",
242
+ "ethical_alternative": "Neutral decline: 'No thanks' or 'Maybe later'"
243
+ },
244
+ "bait_and_switch": {
245
+ "description": "Advertising one thing, delivering another",
246
+ "example": "'Download' button leads to ad, not download",
247
+ "why_harmful": "Deceptive, wastes time",
248
+ "ethical_alternative": "Honest buttons and links"
249
+ },
250
+ "disguised_ads": {
251
+ "description": "Ads disguised as interface elements",
252
+ "example": "Fake 'X' close button that opens ad",
253
+ "why_harmful": "Deceptive, frustrating",
254
+ "ethical_alternative": "Clear ad labels, honest close buttons"
255
+ },
256
+ "preselection": {
257
+ "description": "Pre-checking options user likely doesn't want",
258
+ "example": "Newsletter opt-in pre-checked",
259
+ "why_harmful": "Exploits inattention",
260
+ "ethical_alternative": "Opt-in (unchecked by default), especially for marketing"
261
+ }
262
+ }
263
+ }
264
+ }
265
+ },
266
+ "laws_regulations": {
267
+ "gdpr": {
268
+ "name": "General Data Protection Regulation (EU)",
269
+ "key_requirements": {
270
+ "consent": "Explicit, informed consent for data collection",
271
+ "right_to_access": "Users can request their data",
272
+ "right_to_erasure": "Users can delete their data ('right to be forgotten')",
273
+ "data_portability": "Users can export their data",
274
+ "privacy_by_design": "Privacy built into product, not added later"
275
+ },
276
+ "dark_pattern_implications": "Many dark patterns violate GDPR (non-consensual data collection, hard deletion)",
277
+ "penalties": "Up to €20 million or 4% of global revenue"
278
+ },
279
+ "ccpa": {
280
+ "name": "California Consumer Privacy Act (USA)",
281
+ "key_requirements": {
282
+ "disclosure": "Disclose what data is collected and why",
283
+ "opt_out": "Users can opt out of data sale",
284
+ "deletion": "Users can request data deletion",
285
+ "non_discrimination": "Can't discriminate against users who exercise privacy rights"
286
+ },
287
+ "dark_pattern_restrictions": "California AB 2571 explicitly bans dark patterns in subscription services"
288
+ },
289
+ "ftc_guidelines": {
290
+ "name": "Federal Trade Commission (USA)",
291
+ "focus": "Deceptive and unfair practices",
292
+ "dark_patterns": "FTC has issued warnings and fines for dark patterns",
293
+ "examples": "Fake reviews, hidden fees, hard-to-cancel subscriptions"
294
+ }
295
+ },
296
+ "ethical_alternatives": {
297
+ "instead_of_dark_patterns": {
298
+ "build_trust": {
299
+ "practices": [
300
+ "Be transparent about costs, terms, data usage",
301
+ "Make opting out as easy as opting in",
302
+ "Respect user decisions (don't nag)",
303
+ "Use honest social proof (verified reviews)",
304
+ "Provide value, don't manipulate"
305
+ ],
306
+ "benefit": "Long-term customer loyalty, positive reputation, lower churn"
307
+ },
308
+ "user_centered_persuasion": {
309
+ "description": "Persuasion that respects user autonomy",
310
+ "examples": [
311
+ "Show genuine value of premium features (not guilt)",
312
+ "Offer trial with clear terms (not hidden auto-renewal)",
313
+ "Use real urgency (genuine limited offers)",
314
+ "Provide helpful recommendations (not fake scarcity)",
315
+ "Make features discoverable (not force adoption)"
316
+ ]
317
+ },
318
+ "honest_defaults": {
319
+ "practices": [
320
+ "Pre-select options that benefit user, not business",
321
+ "Uncheck optional marketing opt-ins by default",
322
+ "Default to privacy-preserving settings",
323
+ "Show total cost upfront (not hidden until checkout)"
324
+ ]
325
+ }
326
+ }
327
+ },
328
+ "designing_ethically": {
329
+ "process": {
330
+ "1_identify_stakeholders": {
331
+ "description": "Consider all affected parties",
332
+ "include": ["Users", "Non-users affected", "Society", "Environment", "Future generations"]
333
+ },
334
+ "2_question_metrics": {
335
+ "description": "Are you optimizing for right things?",
336
+ "avoid": "Maximizing engagement at all costs (may harm user wellbeing)",
337
+ "consider": ["User satisfaction", "Task completion", "Time saved (not spent)", "User wellbeing"]
338
+ },
339
+ "3_test_for_harm": {
340
+ "questions": [
341
+ "Could this manipulate or deceive users?",
342
+ "Could this harm vulnerable users (children, elderly)?",
343
+ "Could this be addictive?",
344
+ "Could this violate privacy?",
345
+ "Could this discriminate?"
346
+ ]
347
+ },
348
+ "4_provide_agency": {
349
+ "description": "Give users control",
350
+ "practices": [
351
+ "Clear, accessible settings",
352
+ "Easy opt-out/unsubscribe/delete",
353
+ "Transparent about automation/AI",
354
+ "Undo actions",
355
+ "Export data"
356
+ ]
357
+ },
358
+ "5_review_regularly": {
359
+ "description": "Ethics isn't one-time",
360
+ "practices": [
361
+ "Regular ethics audits",
362
+ "User feedback on dark patterns",
363
+ "Update as regulations evolve",
364
+ "Question new features for ethical implications"
365
+ ]
366
+ }
367
+ },
368
+ "ethics_checklist": [
369
+ "[ ] Are all costs and fees shown upfront?",
370
+ "[ ] Is cancellation as easy as sign-up?",
371
+ "[ ] Are opt-ins unchecked by default (especially marketing)?",
372
+ "[ ] Do decline buttons use neutral language (not guilt)?",
373
+ "[ ] Are accept/reject options equally prominent?",
374
+ "[ ] Is social proof genuine (verified reviews, real stats)?",
375
+ "[ ] Are urgency/scarcity tactics honest?",
376
+ "[ ] Can users easily delete their account and data?",
377
+ "[ ] Is privacy policy understandable?",
378
+ "[ ] Are notifications controllable (not nagging)?",
379
+ "[ ] Are comparisons clear and honest?",
380
+ "[ ] Are ads clearly labeled?",
381
+ "[ ] Are auto-renewals clearly disclosed before trial?",
382
+ "[ ] Can users export their data?",
383
+ "[ ] Are vulnerable users (children, elderly) protected?"
384
+ ]
385
+ },
386
+ "benefits_of_ethical_design": {
387
+ "trust": "Users trust brands that respect them",
388
+ "loyalty": "Ethical practices lead to long-term customers",
389
+ "word_of_mouth": "Positive reputation spreads",
390
+ "legal_compliance": "Avoid fines and lawsuits (GDPR, FTC)",
391
+ "employee_morale": "Teams proud of ethical products",
392
+ "reduced_churn": "Users don't flee when they feel tricked",
393
+ "sustainable_growth": "Trust-based growth is sustainable",
394
+ "competitive_advantage": "Stand out as ethical alternative"
395
+ },
396
+ "best_practices": [
397
+ "Be transparent about costs, fees, and terms",
398
+ "Make opting out as easy as opting in",
399
+ "Uncheck optional marketing opt-ins by default",
400
+ "Use neutral language for decline options",
401
+ "Give accept/reject equal visual weight",
402
+ "Use genuine, verified social proof only",
403
+ "Be honest about urgency and scarcity",
404
+ "Make account deletion easy and accessible",
405
+ "Write privacy policies in plain language",
406
+ "Respect user's 'no' (don't nag)",
407
+ "Show total price upfront",
408
+ "Make comparisons clear and honest",
409
+ "Label ads and sponsored content clearly",
410
+ "Disclose auto-renewals before trial starts",
411
+ "Allow data export and deletion",
412
+ "Test with vulnerable users (children, elderly)",
413
+ "Question business metrics (engagement vs wellbeing)",
414
+ "Regular ethics audits",
415
+ "Provide user control (settings, preferences)",
416
+ "Comply with GDPR, CCPA, and other regulations"
417
+ ],
418
+ "anti_patterns_summary": [
419
+ "Hidden costs revealed at checkout",
420
+ "Hard to cancel subscriptions",
421
+ "Pre-checked marketing opt-ins",
422
+ "Confirmshaming (guilt-tripping decline)",
423
+ "Fake urgency (resetting countdown timers)",
424
+ "Fake scarcity ('only 2 left!' always)",
425
+ "Fake social proof (fabricated reviews, activity)",
426
+ "Tiny 'reject' button vs giant 'accept' button",
427
+ "Sneaking items into cart",
428
+ "Forced account creation for basic features",
429
+ "Nagging for notifications after decline",
430
+ "Privacy Zuckering (tricking into sharing data)",
431
+ "Bait and switch (advertise one thing, deliver another)",
432
+ "Disguised ads as content or interface",
433
+ "Roach motel (easy in, hard out)",
434
+ "Complex, buried account deletion",
435
+ "Fake reviews or testimonials",
436
+ "Comparison prevention (confusing pricing tables)",
437
+ "Auto-play videos with sound",
438
+ "Infinite scroll for time-sensitive tasks"
439
+ ],
440
+ "case_studies": {
441
+ "linkedin_dark_pattern": {
442
+ "issue": "LinkedIn sent emails that appeared to be from your contacts, but were actually LinkedIn marketing",
443
+ "settlement": "$13 million class-action settlement (2015)",
444
+ "lesson": "Deceptive practices can lead to legal consequences"
445
+ },
446
+ "turbo_tax_free_filing": {
447
+ "issue": "Advertised 'free' filing but hid free version, pushed paid version",
448
+ "outcome": "FTC settlement, refunds to customers",
449
+ "lesson": "Bait-and-switch is illegal, not just unethical"
450
+ },
451
+ "cookiebot_study": {
452
+ "finding": "Only 0.1% of sites had GDPR-compliant cookie consent (equal accept/reject prominence)",
453
+ "issue": "Most use dark patterns (giant accept button, tiny reject link)",
454
+ "implication": "Widespread non-compliance with regulations"
455
+ }
456
+ },
457
+ "tools_resources": {
458
+ "detection": {
459
+ "deceptive_design": "https://www.deceptive.design/ - Database of dark patterns",
460
+ "dark_patterns_tip_line": "Consumer Reports - Report dark patterns",
461
+ "princeton_study": "Academic research on dark patterns"
462
+ },
463
+ "compliance": {
464
+ "gdpr_checklist": "Official GDPR compliance checklist",
465
+ "ccpa_guide": "California Attorney General CCPA guide"
466
+ },
467
+ "ethical_frameworks": {
468
+ "center_for_humane_tech": "Resources on humane technology design",
469
+ "ethical_os": "Toolkit for anticipating tech's impact",
470
+ "ind_ie": "Ethical Design Manifesto"
471
+ }
472
+ },
473
+ "references": [
474
+ "Deceptive.Design (formerly DarkPatterns.org) - Harry Brignull",
475
+ "Evil by Design (Chris Nodder) - Book on persuasion vs manipulation",
476
+ "Hooked (Nir Eyal) - Ethical habit-forming products",
477
+ "Center for Humane Technology - Humane design resources",
478
+ "GDPR Official Text - European Commission",
479
+ "FTC Dark Patterns Workshop - Federal Trade Commission",
480
+ "Princeton Dark Patterns Study - Academic research",
481
+ "Ethical OS Toolkit - anticipating future of tech",
482
+ "Ind.ie Ethical Design Manifesto"
483
+ ]
484
+ }