MycroftHolmes-Ai/mcp-netsis-rest-api
If you are the rightful owner of mcp-netsis-rest-api and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
This project is a Model Context Protocol (MCP) server developed to integrate Netsis NetOpenX REST API with Claude Desktop.
Netsis NetOpenX REST API MCP Server
Bu proje, Netsis NetOpenX REST API'yi Claude Desktop ile entegre etmek için geliştirilmiş bir Model Context Protocol (MCP) sunucusudur.
🚀 Özellikler
- OAuth2 Token Yönetimi: 8 saatlik token ömrü ile otomatik yenileme
- SQL Query Desteği: Doğrudan Netsis veritabanına SQL sorguları
- REST API Erişimi: Tüm Netsis API endpoint'lerine erişim
- Önbellekleme: Token ve yanıtlar için akıllı önbellekleme
- Hata Yönetimi: Detaylı hata raporlama ve loglama
- Rate Limiting: Dakikada 60 istek limiti yönetimi
📋 Gereksinimler
- Windows 10/11
- Python 3.11 veya üzeri
- Node.js 18.0 veya üzeri
- Claude Desktop (en son sürüm)
- Netsis NetOpenX REST API erişimi
🛠️ Kurulum
Otomatik Kurulum (Önerilen)
-
Proje dosyalarını
C:\ClaudeCode\mcp-nesis-rest-api
dizinine çıkarın -
Komut istemcisini (CMD) yönetici olarak açın ve proje dizinine gidin:
cd C:\ClaudeCode\mcp-nesis-rest-api
- Otomatik kurulum script'ini çalıştırın:
setup.bat
Bu script otomatik olarak:
- Python bağımlılıklarını yükler
- Node.js bağımlılıklarını yükler
- API bağlantısını test eder
- Claude Desktop yapılandırmasını günceller
Manuel Kurulum
- Python bağımlılıklarını yükleyin:
pip install -r requirements.txt
- Node.js bağımlılıklarını yükleyin:
npm install
- API bağlantısını test edin:
python test_netsis_connection.py --quick
- Claude Desktop yapılandırması:
Claude Desktop ayarlarına (claude_desktop_config.json
) aşağıdaki yapılandırmayı ekleyin:
{
"mcpServers": {
"netsis-rest-api": {
"command": "C:\\ClaudeCode\\mcp-nesis-rest-api\\netsis_mcp.bat",
"args": [],
"env": {
"NETSIS_BASE_URL": "http://78.186.218.65:9090/api/v2",
"NETSIS_USERNAME": "api_user",
"NETSIS_PASSWORD": "api_password"
}
}
}
}
🔧 Yapılandırma
Ortam Değişkenleri
Aşağıdaki ortam değişkenlerini sistem veya .env
dosyasında tanımlayabilirsiniz:
NETSIS_BASE_URL
: API base URL (varsayılan: http://78.186.218.65:9090/api/v2)NETSIS_USERNAME
: API kullanıcı adıNETSIS_PASSWORD
: API şifresi
.env Dosyası Örneği
NETSIS_BASE_URL=http://78.186.218.65:9090/api/v2
NETSIS_USERNAME=api_user
NETSIS_PASSWORD=api_password
📖 Kullanım
Claude Desktop'ta Kullanım
MCP kurulduktan sonra, Claude Desktop'ta doğrudan Netsis API'ye erişebilirsiniz:
Claude: "Netsis'ten son 10 ürünü getir"
Claude: "STOKLAR tablosundan stok_kodu = 'ABC123' olan ürünü sorgula"
Claude: "Bugünkü stok hareketlerini listele"
Komut Satırı Araçları
Token Yönetimi:
# Yeni token al
python token_helper.py --get-token
# Token önbelleğini temizle
python token_helper.py --clear-cache
# Bağlantı testi
python token_helper.py --test
Tam Test Suite:
# Tüm testleri çalıştır
python test_netsis_connection.py
# Hızlı bağlantı testi
python test_netsis_connection.py --quick
📁 Proje Yapısı
mcp-nesis-rest-api/
├── token_helper.py # OAuth2 token yönetimi
├── netsis_mcp.bat # MCP başlatıcı wrapper
├── test_netsis_connection.py # Bağlantı test script'i
├── setup.bat # Otomatik kurulum script'i
├── requirements.txt # Python bağımlılıkları
├── package.json # Node.js yapılandırması
├── README.md # Bu dosya
├── logs/ # Log dosyaları
├── docs/ # Ek dokümantasyon
├── tests/ # Test dosyaları
└── examples/ # Örnek kullanımlar
🔍 API Endpoint'leri
Temel Endpoint'ler
POST /Token
: OAuth2 token alımıPOST /Query
: SQL sorgularıGET /Items
: Ürün listesiGET /StockMovements
: Stok hareketleriGET /Customers
: Müşteri listesiGET /Orders
: Sipariş listesi
SQL Query Örnekleri
-- Stok sorgulama
SELECT STOK_KODU, STOK_ADI, BAKIYE FROM STOKLAR WHERE BAKIYE > 0
-- Fiyat listesi
SELECT * FROM FIYAT_LISTELERI WHERE AKTIF = 1
-- Müşteri bakiyeleri
SELECT CARI_KOD, CARI_ISIM, BAKIYE FROM CARILER WHERE TIP = 'M'
🐛 Sorun Giderme
Token Hatası
# Token önbelleğini temizle ve yeniden dene
python token_helper.py --clear-cache
Bağlantı Hatası
# Detaylı test çalıştır
python test_netsis_connection.py
MCP Başlatma Hatası
- Claude Desktop'ı yeniden başlatın
- Log dosyalarını kontrol edin:
logs/netsis_mcp_YYYYMMDD.log
- Yapılandırma dosyasını doğrulayın
📊 Performans
- Token önbellekleme ile API çağrıları %50 daha hızlı
- Rate limiting: 60 istek/dakika
- Ortalama yanıt süresi: <500ms
- Maksimum eşzamanlı bağlantı: 10
🔒 Güvenlik
- Token'lar güvenli şekilde önbelleklenir (chmod 600)
- SQL injection koruması
- SSL sertifikası doğrulaması (iç sunucular için devre dışı)
- Hassas bilgiler loglanmaz
🤝 Katkıda Bulunma
- Fork yapın
- Feature branch oluşturun (
git checkout -b feature/amazing-feature
) - Değişikliklerinizi commit edin (
git commit -m 'Add amazing feature'
) - Branch'inizi push edin (
git push origin feature/amazing-feature
) - Pull Request açın
📝 Lisans
Bu proje MIT lisansı altında lisanslanmıştır.
👥 Destek
Sorunlar için:
- GitHub Issues: Sorun bildir
- E-posta: support@kuzenai.com
🎯 Gelecek Özellikler
- Webhook desteği
- Batch işlem desteği
- GraphQL gateway
- Prometheus metrikleri
- Docker container desteği
Not: Bu MCP, KuzenAI AdsManager projesinin bir parçasıdır ve Netsis ERP sistemini Claude Desktop ile entegre etmek için tasarlanmıştır.