DevHub MCP Server

resmi

DevHub CMS platforması içinde web sitesi içeriğini yönetin ve kullanın

Dokümantasyon

DevHub CMS MCP

smithery badge

DevHub CMS sistemi içinde içerik yönetimi için bir Model Bağlam Protokolü (MCP) entegrasyonu.

Kurulum

Yerel sisteminizde uv paket yöneticisinin kurulu olması gerekmektedir.

Claude Desktop için manuel yapılandırma

Bu sunucuyu Claude Desktop uygulaması ile kullanmak için, claude_desktop_config.json dosyanızın "mcpServers" bölümüne aşağıdaki yapılandırmayı ekleyin:

{
    "mcpServers": {
        "devhub_cms_mcp": {
            "command": "uvx",
            "args": [
                "devhub-cms-mcp"
            ],
            "env": {
                "DEVHUB_API_KEY": "YOUR_KEY_HERE",
                "DEVHUB_API_SECRET": "YOUR_SECRET_HERE",
                "DEVHUB_BASE_URL": "https://yourbrand.cloudfrontend.net"
            }
        }
    }
}

Yapılandırmayı güncelledikten sonra Claude Desktop'ı yeniden başlatın.

Cursor için manuel yapılandırma

Bu MCP, yukarıdakine benzer bir yapılandırma ile Cursor genel ortamına veya bireysel projelere eklenerek Cursor'da da kullanılabilir.

Örnekler burada

Claude Code ile kurulum

Claude Code'un komut satırı MCP kurulumlarını destekler.

Aşağıdaki ortam değişkenlerini güncelleyerek devhub-cms-mcp ekleyebilirsiniz

claude mcp add devhub-cms-mcp \
    -e DEVHUB_API_KEY=YOUR_KEY_HERE \
    -e DEVHUB_API_SECRET=YOUR_SECRET_HERE \
    -e DEVHUB_BASE_URL=https://yourbrand.cloudfrontend.net \
    -- uvx devhub-cms-mcp

Smithery ile kurulum

DevHub CMS MCP'yi Smithery aracılığıyla Claude Desktop için otomatik olarak kurmak için:

npx -y @smithery/cli install @devhub/devhub-cms-mcp --client claude

Yerel geliştirme

Depoyu (veya kendi fork'unuzu) klonlayın

git clone [email protected]:devhub/devhub-cms-mcp.git

Claude Desktop için manuel yapılandırma

Bu sunucuyu yerel geliştirme için Claude Desktop uygulamasıyla kullanmak üzere, claude_desktop_config.json dosyanızın "mcpServers" bölümüne aşağıdaki yapılandırmayı ekleyin:

{
    "mcpServers": {
        "devhub_cms_mcp": {
            "command": "uv",
            "args": [
                "--directory",
                "/YOUR/LOCAL/PATH/devhub-cms-mcp/",
                "run",
                "main.py"
            ],
            "env": {
                "DEVHUB_API_KEY": "YOUR_KEY_HERE",
                "DEVHUB_API_SECRET": "YOUR_SECRET_HERE",
                "DEVHUB_BASE_URL": "https://yourbrand.cloudfrontend.net"
            }
        }
    }
}

Yapılandırmayı güncelledikten sonra Claude Desktop'ı yeniden başlatın.

Doğrudan uv ile çalıştırma yapılandırması

Bu MCP'nin çalışması için aşağıdaki ortam değişkenlerinin ayarlanması gerekir:

export DEVHUB_API_KEY="your_api_key"
export DEVHUB_API_SECRET="your_api_secret"
export DEVHUB_BASE_URL="https://yourbrand.cloudfrontend.net"

Ardından MCP'yi çalıştırın

uv run main.py

Mevcut Araçlar

Bu MCP, DevHub CMS ile etkileşim için aşağıdaki araçları sağlar:

İşletme ve Konum Yönetimi

  • get_businesses(): DevHub hesabındaki tüm işletmeleri getirir. İşletmelerin kimlikleri ve adlarıyla birlikte bir liste döndürür.
  • get_locations(business_id): Belirli bir işletme için tüm konumları getirir. Adres, koordinatlar ve URL'ler dahil olmak üzere ayrıntılı konum bilgisi döndürür.
  • get_hours_of_operation(location_id, hours_type='primary'): Belirli bir DevHub konumu için çalışma saatlerini getirir. Haftanın her günü için yapılandırılmış bir zaman aralığı listesi döndürür.
  • update_hours(location_id, new_hours, hours_type='primary'): Bir DevHub konumunun çalışma saatlerini günceller.
  • get_nearest_location(business_id, latitude, longitude): Coğrafi koordinatlara göre en yakın DevHub konumunu bulur.
  • site_from_url(url): Bir URL'den DevHub site kimliğini ve ayrıntılarını alır. Site kimliği, URL ve ilişkili konum kimliklerini döndürür.

İçerik Yönetimi

  • get_blog_post(post_id): Kimliğe göre tek bir blog yazısını, başlığı, tarihi ve HTML içeriği dahil olmak üzere getirir.
  • create_blog_post(site_id, title, content): Yeni bir blog yazısı oluşturur. İçerik HTML formatında olmalı ve bir H1 etiketi içermemelidir.
  • update_blog_post(post_id, title=None, content=None): Mevcut bir blog yazısının başlığını ve/veya içeriğini günceller.

Medya Yönetimi

  • upload_image(base64_image_content, filename): DevHub medya galerisine bir resim yükler. Webp, jpeg ve png formatlarını destekler. Resim, base64 ile kodlanmış bir dize olarak sağlanmalıdır.

LLM'ler ile Kullanım

Bu MCP, Model Bağlam Protokolü'nü destekleyen Büyük Dil Modelleri ile kullanılmak üzere tasarlanmıştır. LLM'lerin, doğrudan LLM'ye yerel olarak entegre edilmiş API erişimine ihtiyaç duymadan DevHub CMS'de içerik yönetmesine olanak tanır.

Test

Bu paket, DevHub API'sine yapılan isteklerin taklit edildiği bir test paketi içerir; böylece gerçek API çağrıları yapmadan işlevselliği test edebilirsiniz.

Testleri Çalıştırma

Testleri çalıştırmak için önce paketi test bağımlılıklarıyla birlikte kurun:

uv pip install -e ".[test]"

Testleri pytest ile çalıştırın:

uv run pytest

Daha ayrıntılı çıktı ve test kapsamı bilgisi için:

uv run pytest -v --cov=devhub_cms_mcp

Test Yapısı

  • tests/devhub_cms_mcp/test_mcp_integration.py: MCP entegrasyon uç noktaları için testler