Prototype · Preview: every server in the official registry, synced every 30 minutes. Sign in with Google to write reviews.
PopNx MCPMCP servers for people who use AI · explained in plain words

Digitaltableteur

by PetriLahdelmaversion 2.0.0i★ 0iRuns in the cloud
Registry namecom.digitaltableteur/mcp

How to install

What it does

Design system contracts, docs search, and usage validation for @digitaltableteur components.

  • Connects Runs in the cloud
  • Account or key No key needed
  • Category Design, images & audio

Install

Pick the AI app you use, then copy the settings.

Passed 3/3 checks · What you ask goes through the maker’s server (www.digitaltableteur.com)

First: which AI do you use?

Pick your app and the steps appear below.

Works with Claude · about 2 min

No key, nothing to install · Set it up once on claude.ai or the desktop app, then use it in chat · free accounts can add 1 · on Team/Enterprise an Owner adds it

  1. Open Claude’s Connectors page

    CustomizeConnectors

    CustomizeConnectors1+ Add2https://…3Add4
  2. Click “+ Add” → “Add custom connector” and fill in these 2 fields

    Copy each value into the field with the same name in Claude, then click Continue

    Name · NameDigitaltableteur
    Remote MCP server URL · Addresshttps://www.digitaltableteur.com/mcp

    Leave Authentication as Claude detected it, then click Add

  3. Turn it on in a chat

    +ConnectorsDigitaltableteur

  4. Try it

    Use Digitaltableteur and tell me what you can do for me, then show me one thing

    ✓ If Claude says it is using Digitaltableteur or shows a Digitaltableteur tool in the answer, you are connected

Menu names checked against Anthropic’s help page on Nov 11, 2026 · your screen may differ slightly by app version

Works with ChatGPT on business plans only

ChatGPT Business, Enterprise or Edu on the web, added by a workspace admin or owner · On Free, Plus or Pro: your ChatGPT plan cannot connect MCP yet

  1. Open ChatGPT’s add-MCP page on the web

    Plugins+Add custom MCP server

    ChatGPTPlugins1+2https://…3Create4
  2. Fill in the name and address

    Enter a name, paste the address under Connection, tick the risk warning and click Create as a plugin

    Name · NameDigitaltableteur
    Connection · Addresshttps://www.digitaltableteur.com/mcp
  3. Pick Digitaltableteur in a chat

    Start a new chat and pick Digitaltableteur from your plugins before typing

  4. Try it

    Use Digitaltableteur and tell me what you can do for me, then show me one thing

    ✓ If ChatGPT says it is using Digitaltableteur or shows a Digitaltableteur tool in the answer, you are connected

Menu names checked against OpenAI’s help page on Nov 11, 2026 · your screen may differ slightly by app version

Works with Claude Code · about 2 min

No key, nothing to install

  1. Open Terminal

    Mac: press Command+Space and type Terminal · Windows: open PowerShell

  2. Paste this command and press Enter

    claude mcp add --transport http --scope user digitaltableteur https://www.digitaltableteur.com/mcp
  3. Type /mcp in Claude Code

    You should see Digitaltableteur listed as connected

  4. Try it

    Use Digitaltableteur and tell me what you can do for me, then show me one thing

    ✓ If Claude Code says it is using Digitaltableteur or shows a Digitaltableteur tool in the answer, you are connected

Menu names checked against Anthropic’s help page on Nov 11, 2026 · your screen may differ slightly by app version

Works with Cursor · about 2 min

No key, nothing to install

  1. Click this button to open Cursor

    Open in Cursor

    Cursor asks you to confirm; click Install

  2. Open the AI chat in Cursor in Agent mode

  3. Try it

    Use Digitaltableteur and tell me what you can do for me, then show me one thing

    ✓ If Cursor says it is using Digitaltableteur or shows a Digitaltableteur tool in the answer, you are connected

Menu names checked against Cursor’s help page on Nov 11, 2026 · your screen may differ slightly by app version

Works with VS Code · about 2 min

No key, nothing to install

  1. Click this button to open VS Code

    Open in VS Code

    VS Code asks you to confirm; click Install

  2. Open the AI chat in VS Code in Agent mode

  3. Try it

    Use Digitaltableteur and tell me what you can do for me, then show me one thing

    ✓ If VS Code says it is using Digitaltableteur or shows a Digitaltableteur tool in the answer, you are connected

Menu names checked against VS Code’s help page on Nov 11, 2026 · your screen may differ slightly by app version

Other apps that use MCP, such as Windsurf, Zed or Gemini CLI, each add servers differently. See how in the app list.

See every app that uses MCP →

Address for apps that connect over the web

Addresshttps://www.digitaltableteur.com/mcp

JSON settings are under “For developers” below

Stuck? Ask people who use Digitaltableteur💬 Discussion →
For developers: Terminal commands and JSON settings

Over the web

Claude Code

claude mcp add --transport http --scope user digitaltableteur https://www.digitaltableteur.com/mcp

Cursor (~/.cursor/mcp.json)

{
  "mcpServers": {
    "digitaltableteur": {
      "url": "https://www.digitaltableteur.com/mcp"
    }
  }
}

VS Code (mcp.json)

{
  "servers": {
    "digitaltableteur": {
      "type": "http",
      "url": "https://www.digitaltableteur.com/mcp"
    }
  }
}

These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.

At a glance

Downloads per weeki
Not on npm/PyPI
Verified domain
✓ digitaltableteur.com
Licencei
No licence stated
Connection
Runs in the cloud
Transport
streamable-http
Latest versioni
2.0.0
Published to registryi
Sep 26, 2026
Code last changedi
–
Maker
PetriLahdelma
Repo
–
Registry status
Active

Which apps can use it

Based on how this server connects and on each app’s own docs, checked Nov 10, 2026.

Connect over the internet in

ClaudeChatGPTGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatOpen WebUIRaycast

All apps, with pros and cons →

Related guides

What it can do

Tool names and descriptions exactly as the server reported them on Nov 8, 2026. The maker wrote them, not us; we show them as plain text.

  • list_case_studies

    List Digitaltableteur portfolio case studies with slug, title, category, tags and URLs.

  • get_case_study

    Get one case study by URL slug (e.g. dsharp-design-system, helsinki-design-system).

  • list_pricing_packages

    List every consulting offer on the pricing page: name, price as shown, duration, pricing model (fixed_scope, hourly, monthly or quoted) and URL.

  • get_hourly_rate

    Get the hourly rates in EUR as the pricing page shows them: the standard rate and the partnership rate with its conditions. VAT excluded.

  • list_services

    List core consulting services (design system audit, component library, tokens, AI DesignOps).

  • list_expertise_stacks

    List technology and practice areas (React, Next.js, Storybook, Figma, TypeScript, etc.).

  • list_audiences

    List client audiences Digitaltableteur serves (startups, scaleups, enterprise, etc.).

  • get_open_hours

    Get Digitaltableteur office hours in Europe/Helsinki timezone.

  • get_consulting_fit

    Map a visitor problem statement to the best-matching consulting service.

  • search

    Search the @dt design-system docs registry by name, keyword or UI intent. Returns budgeted briefs (import line, key props, related components) with a hint for the follow-up get call.

  • get

    Get the full docs-registry entry for one component: usage guidance, props, example story source and theming tokens.

  • validate_component_usage

    Check proposed @dt JSX against the component contracts: prop relationships, forbidden prop combinations, deprecated props and raw-UI replacements. Pass a TSX snippet or a component name with props.

Basic checksi

We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 12, 2026

  • ✓ Pass

    Maker matches the repo

    The registry name was verified against the domain digitaltableteur.com (the registry checks domain ownership)

  • … Not checked yet

    Still maintained

    We have not read this repo from GitHub yet

  • … Not checked yet

    Has a licence

    We have not read this repo from GitHub yet

  • ✓ Pass

    Endpoint responds

    Responded in 1080 ms (HTTP 200)

  • – Not applicable

    Sign-in with OAuth

    No sign-in needed

  • ✓ Pass

    No hidden instructions in tool descriptions

    Read 12 tool descriptions and found no hidden instructions to the AI

Discussion

Ask, share a tip or report that it does not work. Sorted by what people marked helpful.

No posts yet. Be the first to ask or share.

Posts here are written by users, not the PopNx team.

Sign in with Google to post

User reviews

No reviews yet

Sign in with Google to write a review

Compared with others in Design, images & audioi

  • More stars than 0% of the other 2946 servers in this category
  • Published to the registry more recently than 35% of the other 2946 servers in this category
  • Basic checks equal to or better than 100% of the other 2946 servers in this category

Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.

Common questions

Is Digitaltableteur safe?

It passed 3 of 3 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.

What keys or codes does it need?

The registry does not list a required key, though some servers ask you to sign in on first use.

Does it run on my computer or in the cloud?

It runs in the maker’s cloud. Connect over the internet with nothing to install, but what you send passes through the maker’s servers.

Is it still maintained?

The GitHub repo last changed –, and the latest version (2.0.0) reached the registry 2 months ago.

Which apps can use it?

Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. It connects by URL, so apps that accept remote MCP servers work too, such as ChatGPT Business and above.

What can I use instead?

In the same category: Figma Context MCP, AutoClip, Next AI Draw.io

Others in the same category

Servers in the same category from other makers, sorted by stars.

Reading a card:↓ Downloads per weeki★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi

Figma Context MCP

Give your coding agent access to your Figma data. Implement designs in any framework in one-shot.

by GLipsWidely used↓ 152.1K/wk★ 16.2KUpdated 5 months ago

Runs on your computer

AutoClip

Clip long videos into short clips with covers and captions. Local CLI and MCP.

by zhouxiaokaWidely used↓ 205/wk★ 10.3KUpdated 15 days ago

Runs on your computer

Next AI Draw.io

draw.io diagrams your AI agent draws on a live browser canvas that you can also edit by hand

by DayuanJiangWidely used↓ 21.7K/wk★ 36.9K Stars for the whole repoUpdated 5 days ago

Runs on your computer

README from the maker

Open the README

Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.

 _____   _______

| \ | | | | | | | | | | | | | | | || | | | |_____/ |_|

Digitaltableteur

"Iteration beats perfection—ship today, learn tomorrow, refine forever."

Digitaltableteur is a hybrid monorepo portfolio website featuring both Next.js 16 (production) and Vite (legacy) applications. Built with React 19 and TypeScript 6.x, it showcases a comprehensive design system, multi-language support (EN/FI/SV), AI-powered chat interface, and enterprise-grade tooling including Sentry observability, Linear issue management, and MCP (Model Context Protocol) integrations.

🚀 Features

Core Architecture
  • Hybrid Monorepo: Next.js 16 App Router (production) + Vite 6.4 (legacy) in parallel migration
  • AI Documentation System: Hierarchical CLAUDE.md/AGENTS.md structure optimized for AI assistants
  • Design System: 50+ components with CSS Modules, design tokens, Storybook, and visual regression testing
  • Type Safety: TypeScript 6.x strict mode with comprehensive interfaces and JSDoc documentation
User Experience
  • Multi-language Support: Complete i18n with English, Finnish, and Swedish (100% translation coverage)
  • AI Chat Interface: OpenAI-powered chat with guided email workflow, dynamic component injection, markdown rendering
  • Responsive Design: Mobile-first with progressive enhancement (backdrop-filter, gap, :has() selector)
  • Progressive Web App: Service worker caching, offline support, native share API integration
  • Accessibility: WCAG AA compliant with axe-core testing, semantic HTML, ARIA attributes, keyboard navigation
Content & Media
  • Blog Platform: Sanity CMS integration with MDX, syntax highlighting, reading time estimates
  • Secure CV Download: Password-protected with API validation and rate limiting
  • Image Optimization: Next.js Image component, lazy loading, responsive srcset generation
  • Contact Integration: EmailJS with guided multi-step workflow, validation, and accessibility
Developer Experience
  • Storybook 10: Component development with WIP badge system, visual regression testing
  • Testing: Vitest + Testing Library (>80% coverage target), accessibility tests, E2E with Playwright
  • MCP Integrations: GitHub, Figma, Context7, TypeScript LSP, Sentry for AI-assisted development
  • Linear Automation: Programmatic issue creation/update, label management, state workflows
  • Sentry Observability: Error tracking, performance monitoring, release health, MCP query interface
Performance & SEO
  • Code Splitting: Dynamic imports with React.lazy() (Vite) and next/dynamic (Next.js)
  • Bundle Optimization: Tree shaking, minification, aggressive cache busting with content hashes
  • SEO: Dynamic metadata with generateMetadata(), sitemap.xml, robots.txt, structured data
  • Analytics: Google Analytics 4 integration with privacy controls

🏁 Getting Started

Prerequisites
  • Node.js 18+ (LTS recommended)
  • npm 9+ or compatible package manager
Installation
# Clone repository

git clone https://github.com/PetriLahdelma/digitaltableteur.git cd digitaltableteur

Install dependencies

npm install

Copy environment template

cp .env.example .env.local

Environment Configuration

Required for development:

# Analytics

VITE_GA_ID=G-XXXXXXXXXX # Google Analytics 4

Email Services

VITE_EMAILJS_SERVICE_ID=service_xxx VITE_EMAILJS_TEMPLATE_ID=template_xxx VITE_EMAILJS_PUBLIC_KEY=xxx

MCP Servers (optional for enhanced AI features)

FIGMA_TOKEN=figd_xxx # Figma design access GITHUB_MCP_PAT=github_pat_xxx # GitHub operations CONTEXT7_API_KEY=xxx # Context7 documentation access

Linear Issue Management (optional)

LINEAR_API_KEY=lin_api_xxx LINEAR_TEAM_ID=xxx LINEAR_PROJECT_ID=xxx

Akaunting Accounting (optional, self-hosted)

AKAUNTING_API_USERNAME=admin@digitaltableteur.com AKAUNTING_API_PASSWORD=xxx AKAUNTING_COMPANY_ID=1

Production only:

CV_PASSWORD=xxx                              # Secure resume download

OPENAI_API_KEY=sk-xxx # AI chat functionality SENTRY_DSN=https://xxx@xxx.ingest.sentry.io/xxx SENTRY_AUTH_TOKEN=xxx # Source map upload

See .env.example for complete list with descriptions.

⚒️ Development

Development Servers
# Next.js dev server (production app)

npm run dev # http://localhost:3001

Storybook component development

npm run storybook # http://localhost:6010

Code Quality & Testing
# Type checking

npm run typecheck # TypeScript validation across project

Linting

npm run lint # ESLint + Stylelint npm run lint:fix # Auto-fix linting issues

Testing

npm test # Run all tests (Vitest) npm run test:watch # Watch mode npm run test:coverage # Coverage report (>80% target) npm run test:a11y # Accessibility tests (axe-core) npm run test:visual # Visual regression (Playwright + Storybook)

Pre-commit validation (run before PR)

npm run typecheck && npm run lint && npm test && npm run build

MCP & Automation
# GitHub MCP Server

npm run github:mcp:test # Test connectivity and authentication

Figma MCP Server

npm run figma:mcp:test # Test connectivity and authentication

Context7 MCP Server

npm run context7:mcp # Launch locally (respects CONTEXT7_API_KEY) npm run context7:mcp -- --remote-check # Test remote endpoint

TypeScript LSP Status

npm run ts:mcp:status # Validate TypeScript language server npm run ts:mcp:status:stub # Generate stub status

Linear Issue Management

npx tsx scripts/linear/create-issue.ts # Interactive issue creation npx tsx scripts/linear/update-issue.ts --issue DIG-16 --state "Done" npx tsx scripts/linear/check-issue.ts DIG-16 # Display issue details

Sentry Observability

node scripts/sentry-mcp.js issues digitaltableteur 10 --unresolved npm run generate-sentry-summary # Generate dashboard data

🏗 Build & Deployment

Build Commands
# Next.js production build

npm run build # Output: .next/

Storybook static build

npm run build-storybook # Output: storybook-static/

Deployment
# Vite to GitHub Pages

npm run deploy # Build + gh-pages deployment

Vite + Storybook visual diffs

npm run deploy-with-storybook # Deploy with visual regression report

Manual cache busting

npm run cache-bust # Add version metadata + .nojekyll

Vercel (production - automatic on push to main)

vercel --prod

Hybrid Deployment Strategy:

  • Vite App: GitHub Pages (https://digitaltableteur.com)
  • Next.js App: Vercel (https://nextjs-app.vercel.app)
  • Serverless Functions: Vercel (/api/* routes)
  • Routing: Vercel rewrites route specific paths to Next.js (see vercel.json)
Build Optimizations

Vite Build:

  • Tree-shaken JavaScript bundles with content hashes
  • Minified CSS with vendor prefixes and logical properties
  • Compressed images and fonts
  • Service worker for offline caching (Workbox)
  • Aggressive cache busting with filename hashing

Next.js Build:

  • Server-side rendering (SSR) for SEO
  • Static generation for blog posts
  • Image optimization with Next.js Image component
  • API routes as Vercel serverless functions
  • Automatic code splitting per route

🤖 AI Documentation System

Hierarchical Structure

The project uses a hierarchical CLAUDE.md/AGENTS.md system optimized for AI assistants:

Root Documentation (Universal Rules)

├── CLAUDE.md (380 lines) # Comprehensive authority for Claude Code ├── AGENTS.md (150 lines) # Quick reference for generic agents └── .github/copilot-instructions.md # GitHub Copilot specific

Subdirectory Documentation (Specific Context) ├── app/CLAUDE.md + AGENTS.md # Next.js App Router patterns ├── shared/components/CLAUDE.md + AGENTS.md # Component library rules ├── docs/AGENTS.md # Documentation navigation └── scripts/AGENTS.md # Automation patterns

Claude Code Configuration ├── .claude/settings.json # Hooks (auto-format, safety checks) └── .claude/commands/ # Custom slash commands ├── review.md # Comprehensive code review ├── fix-issue.md # GitHub issue workflow ├── create-component.md # Component generation └── create-linear-issue.md # Issue creation

Key Features

CLAUDE.md (Claude Code Authority)

  • 200-400 lines per file
  • Treated as immutable system rules
  • Read hierarchically (up from CWD + discovers subdirectories)
  • Comprehensive patterns with file examples

AGENTS.md (Generic AI Quick Reference)

  • 100-200 lines per file
  • JIT (Just-In-Time) indexing with search commands
  • Minimal duplication, maximum efficiency
  • Copy-paste ready commands

Claude Code Enhancements

  • Hooks: Auto-format (Prettier), dangerous command blocking
  • Custom Commands: /review, /fix-issue, /create-component, /create-linear-issue
  • Token Efficiency: 60-80% reduction per query vs monolithic docs
Usage

Claude Code (automatic):

/review                         # Comprehensive code review

/fix-issue 123 # Analyze and fix GitHub issue /create-component Button # Generate component (5 files) /create-linear-issue Implement X # Create Linear issue

Generic AI Agents (manual reference):

cat AGENTS.md                           # Root rules

cat app/AGENTS.md # Next.js patterns cat shared/components/AGENTS.md # Component rules

Documentation:

  • Migration Guide
  • System Summary
  • Visual Tree

🎨 Design Asset Management

Fetch Figma design

If you need the raw design data, you can download the Figma file as JSON. Set the FIGMA_TOKEN environment variable with your personal access token, then run:

npm run fetch-figma

Synchronizes design tokens and assets from Figma using the API. The file is saved as figma.json in the project root.

SEO & Content Generation
npm run generate:sitemap    # Generate XML sitemap

npm run generate:llms # Create LLM-friendly content index npm run generate:alt-text # Generate accessibility descriptions (requires OPENAI_API_KEY)

generate:alt-text streams local image bytes to the OpenAI Vision API so it can describe the actual artwork; add OPENAI_API_KEY (and optionally OPENAI_ALT_MODEL) to .env.local before running, or append --force to regenerate every alt attribute.

Sanity Blog Publishing

Quick Publish Workflow:

# Publish single article from Sanity

npm run sanity:publish-single

Publish all articles

npm run sanity:publish

  • See docs/SANITY_PUBLISHING_AUTOMATION.md for the complete automated publishing workflow
  • See docs/SANITY_MIGRATION.md for the full migration workflow (React → Sanity via sanity:parse-posts / sanity:convert / sanity:upload, Sanity → MDX via sanity:sync-from-remote, redirects generation, cleanup helpers)

🏗 Architecture

Hybrid Monorepo Structure
digitaltableteur/

├── app/ # Next.js 16 App Router (production) │ ├── layout.tsx # Root layout with providers │ ├── page.tsx # Home page (server component) │ ├── about/page.tsx # Route pages │ ├── blog/[slug]/page.tsx # Dynamic routes │ └── api/*/route.ts # API routes (Vercel functions) │ ├── src/

Only the beginning is shown; read the rest in the repo