npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@appaflytech/wappa-mcp

v0.0.3

Published

MCP Server for WAPPA (Content Management System & Web Site Tools) Admin API — Claude Code integration for component, page, widget, and site management

Downloads

332

Readme

@appaflytech/wappa-mcp

WAPPA (Content Management System & Web Site Tools) Admin API için MCP (Model Context Protocol) Server.

Claude Code'a WAPPA Admin API üzerinde doğrudan CRUD işlemleri yapma yeteneği kazandırır: site, sayfa, bileşen, layout, entity, query, menü, tema, dil ve daha fazlasını yönetin.

Kurulum

npx ile (Kurulum Gerektirmez)

Doğrudan MCP yapılandırmasında kullanabilirsiniz — ayrıca npm install yapmanıza gerek yok:

{
  "mcpServers": {
    "wap": {
      "command": "npx",
      "args": ["-y", "@appaflytech/wappa-mcp"],
      "env": {
        "WAP_ADMIN_API_URL": "https://your-wap-admin-api-url.com",
        "WAP_SITE_KEY": "your-site-slug",
        "WAP_EMAIL": "[email protected]",
        "WAP_PASSWORD": "your-password",
        "WAP_LANGUAGE": "en-us"
      }
    }
  }
}

Global Kurulum

npm install -g @appaflytech/wappa-mcp

Proje İçi Kurulum

npm install @appaflytech/wappa-mcp

Yapılandırma

Environment Variables

| Değişken | Zorunlu | Açıklama | Örnek | | ------------------- | ------- | ------------------------------------------- | -------------------------------------- | | WAP_ADMIN_API_URL | Evet | Admin API base URL | https://wap-admin-api.example.com | | WAP_SITE_KEY | Evet | Site slug/key (URL'de kullanılan kısa isim) | glomil | | WAP_SITE_ID | Hayır | WAP_SITE_KEY yoksa fallback site ID | xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx | | WAP_EMAIL | Evet | Admin kullanıcı e-postası | [email protected] | | WAP_PASSWORD | Evet | Admin kullanıcı şifresi | your-password | | WAP_LANGUAGE | Hayır | API dili (Accept-Language header) | tr (varsayılan) |

Claude Code MCP Yapılandırması

Projenizin .claude/mcp.json dosyasına ekleyin:

{
  "mcpServers": {
    "wap": {
      "command": "npx",
      "args": ["-y", "@appaflytech/wappa-mcp"],
      "env": {
        "WAP_ADMIN_API_URL": "https://wap-admin-api.example.com",
        "WAP_SITE_KEY": "your-site-slug",
        "WAP_EMAIL": "[email protected]",
        "WAP_PASSWORD": "your-password"
      }
    }
  }
}

Kullanılabilir Tool'lar

Sites (Siteler)

  • list_sites — Tüm siteleri listele
  • get_site — Site detayı getir
  • create_site — Yeni site oluştur
  • update_site — Site güncelle
  • delete_site — Site sil
  • get_sites_with_entities — Site + entity şemaları birlikte getir

Pages (Sayfalar)

  • list_pages — Sayfaları listele (başlık/path/layout/status filtresi)
  • get_page — Sayfa detayı getir (views, layout, meta dahil)
  • create_page — Yeni sayfa oluştur (views, refs, layoutId ile)
  • update_page — Sayfa güncelle
  • delete_page — Sayfa sil
  • publish_page — Sayfayı yayınla (Draft → Published)
  • unpublish_page — Sayfayı yayından kaldır (Published → Draft)
  • get_page_versions — Sayfa versiyonlarını listele
  • generate_page_path — Benzersiz URL path öner
  • create_page_localization — Sayfa çevirisi oluştur

Components (Bileşenler)

  • list_components — API'deki özel bileşenleri listele
  • get_component — Bileşen detayı getir; GUID verilirse API'ye gider, kebab-case isim (örn: heading) verilirse önce yerleşik base bileşenlerde arar
  • create_component — Yeni bileşen oluştur (schema dahil)
  • update_component — Bileşeni güncelle
  • delete_component — Bileşeni sil
  • list_base_components — Sistemde yerleşik gelen base (built-in) bileşenleri listele; isMobile ve type parametreleriyle filtrele. Schema değişikliği için src/base-components.ts düzenle.

Layouts

  • list_layouts — Layout'ları listele
  • get_layout — Layout detayı getir
  • create_layout — Yeni layout oluştur
  • update_layout — Layout güncelle
  • delete_layout — Layout sil
  • clone_layout — Layout kopyala
  • clone_layout_to_site — Layout'u başka siteye kopyala

Entities (Varlık Şemaları)

  • list_entities — Entity şemalarını listele
  • get_entity — Entity detayı getir
  • create_entity — Yeni entity şeması oluştur
  • update_entity — Entity şemasını güncelle
  • delete_entity — Entity sil
  • get_entity_relations — Entity ilişkilerini getir

Dynamic Entities (Kayıtlar / İçerikler)

  • list_dynamic_entity_records — Entity kayıtlarını listele
  • get_dynamic_entity_record — Kayıt detayı getir
  • create_dynamic_entity_record — Yeni kayıt oluştur
  • update_dynamic_entity_record — Kaydı güncelle
  • update_dynamic_entity_status — Kayıt durumunu değiştir
  • delete_dynamic_entity_record — Kaydı sil
  • clone_dynamic_entity_record — Kaydı kopyala
  • create_dynamic_entity_localization — Kayıt çevirisi oluştur
  • get_dynamic_entity_versions — Kayıt versiyonlarını listele

Queries

  • list_queries — Query'leri listele
  • get_query — Query detayı getir
  • run_query — Query çalıştır
  • create_query — Yeni query oluştur (sql/rest/js)
  • update_query — Query güncelle
  • delete_query — Query sil

Menus (Menüler)

  • list_menus — Menüleri listele
  • get_menu — Menü detayı getir
  • create_menu — Yeni menü oluştur
  • update_menu — Menü güncelle
  • delete_menu — Menü sil
  • clone_menu — Menü kopyala

Widgets

  • list_widgets — Widget tanımlarını listele
  • get_widget — Widget detayı getir
  • create_widget — Yeni widget oluştur
  • update_widget — Widget güncelle
  • delete_widget — Widget sil

Themes (Temalar)

  • list_themes — Tema ayarlarını listele
  • get_theme — Tema detayı getir
  • create_theme — Yeni tema oluştur (renkler, yazı boyutları)
  • update_theme — Tema güncelle
  • delete_theme — Tema sil

Languages (Diller)

  • list_languages — Desteklenen dilleri listele
  • get_language — Dil detayı getir
  • create_language — Yeni dil ekle
  • update_language — Dil güncelle
  • delete_language — Dil sil

General

  • get_app_settings — Uygulama ayarlarını getir
  • update_app_settings — Uygulama ayarlarını güncelle
  • wap_custom_request — Herhangi bir Admin API endpoint'ine özel istek gönder

Kimlik Doğrulama

Server, email + şifre ile doğrudan Admin API'ye giriş yapar:

  1. WAP_ADMIN_API_URL/auth/sign-in endpoint'ine POST { email, password }
  2. Dönen JWT token'ı cache'ler
  3. Token'ın exp claim'inden süre hesaplanır, 5 dakika öncesinde yenilenir
  4. Her API isteğinde Authorization: Bearer <token> header'ı eklenir

Lisans

MIT