DealX
resmiDealX platformu için MCP Sunucusu
Deal X MCP ile neler yapabilirsiniz?
- Reklamları anahtar kelimeye göre ara —
search_adsile metin sorgusu kullanarak DealX platformundaki listeleri bulun. - Sonuçları sırala ve sayfala — Sıralama düzenini (örneğin,
-createdile en yeniler önce), sayfa ofsetini ve sonuç sayısını kontrol edin. - Sonuç sayısını sınırla — İstek başına en fazla 100 reklam olacak şekilde özel bir sayfa boyutu belirleyin.
Dokümantasyon
@dealx/mcp-server
Bu, DealX platformu için bir Model Bağlam Protokolü (MCP) sunucusudur. LLM'lerin DealX platformuyla etkileşime girmesine, özellikle ilanları aramasına olanak tanır.
İçindekiler
Barındırılan dağıtım
Fronteir AI üzerinde barındırılan bir dağıtım mevcuttur.
Genel Bakış
DealX MCP Sunucusu, LLM'lerin DealX platformu ile etkileşime girmesi için standart bir yol sağlamak amacıyla Model Bağlam Protokolü'nü uygular. Şu anda ilan aramayı desteklemekte olup, gelecekte daha fazla işlevsellik eklenmesi planlanmaktadır.
MCP Nedir?
Model Bağlam Protokolü (MCP), LLM'lerin harici sistemlerle etkileşime girmesi için standartlaştırılmış bir yoldur. LLM'lerin verilere erişmesi ve gerçek dünyada eylemler gerçekleştirmesi için yapılandırılmış bir arayüz sağlar. Bu sunucu, LLM'lerin DealX platformuyla etkileşime girmesine izin vermek için MCP spesifikasyonunu uygular.
Kurulum
Ön Koşullar
- Node.js (v20 veya üzeri)
- npm (v11 veya üzeri)
MCP Yapılandırması
Bu sunucuyu Claude gibi bir LLM ile kullanmak için, LLM'nizin MCP yapılandırmasına eklemeniz gerekir:
-
LLM'nizin MCP yapılandırma dosyasını açın:
- Claude Masaüstü Uygulaması:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
- macOS:
- Cline (VS Code Eklentisi):
~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json
- Claude Masaüstü Uygulaması:
-
DealX MCP sunucusunu
mcpServersbölümüne ekleyin:{ "mcpServers": { "dealx": { "command": "npx", "args": ["-y", "@dealx/mcp-server"], "env": { "DEALX_API_URL": "https://dealx.com.ua" }, "disabled": false, "autoApprove": [] } } }
npm ile Kurulum
DealX MCP Sunucusunu kurmanın en kolay yolu npm üzerindendir:
npm install -g @dealx/mcp-server
Geliştirme için Kurulum
Sunucuyu değiştirmek veya geliştirilmesine katkıda bulunmak istiyorsanız:
-
Depoyu klonlayın:
git clone <repository-url> cd dealx/mcp -
Bağımlılıkları yükleyin:
npm install -
.env.exampledosyasını temel alan bir.envdosyası oluşturun:cp .env.example .env -
Uygun değerleri ayarlamak için
.envdosyasını düzenleyin:# DealX API URL DEALX_API_URL=http://localhost:3001 # Optional: Specify the port for the MCP server MCP_SERVER_PORT=3100 # Optional: Log level (debug, info, warn, error) LOG_LEVEL=info -
Sunucuyu derleyin:
npm run build
Kullanım
Sunucuyu Başlatma
Sunucuyu birkaç şekilde çalıştırabilirsiniz:
-
Genel olarak kuruluysa:
node node_modules/@dealx/mcp-server/build/index.js -
Kurulum yapmadan npx kullanarak:
npx -y @dealx/mcp-server -
Ortam değişkenleriyle:
DEALX_API_URL=https://dealx.com.ua npx -y @dealx/mcp-server -
Geliştirme için:
npm start
Bir LLM ile Kullanma
LLM'nizin MCP ayarlarında yapılandırıldıktan sonra, DealX platformuyla etkileşime girmek için doğal dil kullanabilirsiniz.
Örnek istemler:
- "DealX'te 'dizüstü bilgisayar' sorgusuyla ilan ara"
- "DealX'te 'iPhone' için en yeni 5 ilanı bul"
- "Kiev'deki daireler için DealX'i ara"
Mevcut Araçlar
search_ads
DealX platformunda ilanları arayın.
Parametreler:
query(dize, isteğe bağlı): Arama sorgusu dizesisort(dize, isteğe bağlı): Sıralama düzeni (ör. en yeni önce için "-created")offset(sayı, isteğe bağlı): Sayfalama ofseti (1'den başlar, varsayılan: 1)limit(sayı, isteğe bağlı): Sayfa başına sonuç sayısı (maks. 100, varsayılan: 30)
Örnek Kullanım:
{
"query": "laptop",
"sort": "-created",
"offset": 1,
"limit": 10
}
Sunucuyu Genişletme
Sunucu, ek araçlarla kolayca genişletilebilecek şekilde tasarlanmıştır. Yeni bir araç ekleme adımları:
-
src/index.tsiçindekiTOOLSnesnesinde aracı tanımlayın:const TOOLS = { SEARCH_ADS: "search_ads", NEW_TOOL: "new_tool", // Add your new tool here }; -
Araç uygulamanız için
src/toolsdizininde yeni bir dosya oluşturun:// src/tools/new-tool.ts import { ErrorCode, McpError } from "@modelcontextprotocol/sdk/types.js"; interface NewToolParams { // Define your tool parameters here } export async function newTool(params: NewToolParams) { try { // Implement your tool logic here return { content: [ { type: "text", text: JSON.stringify(result, null, 2), }, ], }; } catch (error) { // Handle errors // ... } } -
Aracı
src/index.tsiçindekiListToolsRequestSchemaişleyicisine ekleyin:this.server.setRequestHandler(ListToolsRequestSchema, async () => ({ tools: [ // Existing tools... { name: TOOLS.NEW_TOOL, description: "Description of your new tool", inputSchema: { type: "object", properties: { // Define your tool parameters here }, required: [], // List required parameters }, }, ], })); -
Aracı
src/index.tsiçindekiCallToolRequestSchemaişleyicisine ekleyin:this.server.setRequestHandler(CallToolRequestSchema, async (request) => { const { name, arguments: args } = request.params; switch (name) { // Existing cases... case TOOLS.NEW_TOOL: return await newTool(args); default: throw new McpError(ErrorCode.MethodNotFound, `Unknown tool: ${name}`); } }); -
Yeni aracınızı
src/index.tsiçine aktarın:import { newTool } from "./tools/new-tool.js";
Planlanan Gelecek Araçlar
Gelecekte uygulanması planlanan araçlar şunlardır:
create_ad: DealX platformunda yeni bir ilan oluşturedit_ad: Mevcut bir ilanı düzenledelete_ad: Bir ilanı silget_threads: Bir ilan için tartışma konularını alcreate_thread: Yeni bir tartışma konusu oluştur
Geliştirme
Proje Yapısı
mcp/
├── build/ # Compiled JavaScript files
├── src/ # TypeScript source files
│ ├── tools/ # Tool implementations
│ │ └── search-ads.ts
│ └── index.ts # Main server implementation
├── .env # Environment variables (not in git)
├── .env.example # Example environment variables
├── package.json # Project dependencies and scripts
├── tsconfig.json # TypeScript configuration
└── README.md # This file
npm Betikleri
npm run build- TypeScript'i JavaScript'e derlenpm start- Derlenmiş JavaScript'i kullanarak sunucuyu başlatnpm run dev- Sunucuyu sıcak yeniden yükleme ile geliştirme modunda başlatnpm run lint- ESLint kullanarak kodu denetlenpm run format- Prettier kullanarak kodu biçimlendirnpm test- Testleri çalıştır
Sorun Giderme
Yaygın Sorunlar
Sunucu Başlamıyor
Sunucu başlatılamazsa aşağıdakileri kontrol edin:
- Doğru Node.js sürümünün yüklü olduğundan emin olun
- Tüm bağımlılıkların yüklü olduğunu kontrol edin
.envdosyasının var olduğunu ve doğru değerlere sahip olduğunu doğrulayın- Hata mesajları için konsol çıktısını kontrol edin
Bağlantı Sorunları
LLM sunucuya bağlanamıyorsa:
- Sunucunun çalıştığından emin olun
- LLM'nin ayarlarındaki MCP yapılandırmasının doğru olduğunu kontrol edin
- Sunucu yürütülebilir dosyasının yolunun doğru olduğunu doğrulayın
- Ortam değişkenlerinin doğru ayarlandığını kontrol edin
API Bağlantı Sorunları
Sunucu DealX API'sine bağlanamıyorsa:
- DealX API'sinin çalıştığından emin olun
DEALX_API_URLortam değişkeninin doğru ayarlandığını kontrol edin- API uç noktasına sunucudan erişilebildiğini doğrulayın
Yardım Alma
Burada ele alınmayan sorunlarla karşılaşırsanız, lütfen bu GitHub deposuna bir sorun bildirimi açın.