DealX

आधिकारिक

DealX प्लेटफॉर्म के लिए MCP सर्वर

Deal X MCP के साथ आप क्या कर सकते हैं?

  • कीवर्ड द्वारा विज्ञापन खोजेंsearch_ads के माध्यम से टेक्स्ट क्वेरी का उपयोग करके DealX प्लेटफॉर्म पर लिस्टिंग खोजें।
  • परिणामों को क्रमबद्ध और पृष्ठांकित करें — क्रमबद्ध क्रम को नियंत्रित करें (जैसे, -created के साथ नवीनतम पहले), पृष्ठ ऑफसेट और परिणामों की संख्या।
  • परिणामों की संख्या सीमित करें — प्रति अनुरोध अधिकतम 100 विज्ञापनों तक का कस्टम पेज आकार सेट करें।

दस्तावेज़

@dealx/mcp-server

यह DealX प्लेटफ़ॉर्म के लिए एक मॉडल संदर्भ प्रोटोकॉल (MCP) सर्वर है। यह LLM को DealX प्लेटफ़ॉर्म के साथ इंटरैक्ट करने की अनुमति देता है, विशेष रूप से विज्ञापनों की खोज करने के लिए।

विषय-सूची

होस्टेड परिनियोजन

Fronteir AI पर एक होस्टेड परिनियोजन उपलब्ध है।

अवलोकन

DealX MCP सर्वर मॉडल संदर्भ प्रोटोकॉल को लागू करता है ताकि LLM को DealX प्लेटफ़ॉर्म के साथ इंटरैक्ट करने का एक मानकीकृत तरीका प्रदान किया जा सके। वर्तमान में, यह विज्ञापनों की खोज का समर्थन करता है, भविष्य में और अधिक कार्यक्षमता जोड़ने की योजना है।

MCP क्या है?

मॉडल संदर्भ प्रोटोकॉल (MCP) LLM के लिए बाहरी प्रणालियों के साथ इंटरैक्ट करने का एक मानकीकृत तरीका है। यह LLM को डेटा तक पहुँचने और वास्तविक दुनिया में कार्य करने के लिए एक संरचित इंटरफ़ेस प्रदान करता है। यह सर्वर MCP विनिर्देश को लागू करता है ताकि LLM DealX प्लेटफ़ॉर्म के साथ इंटरैक्ट कर सकें।

स्थापना

पूर्वापेक्षाएँ

  • Node.js (v20 या बाद का संस्करण)
  • npm (v11 या बाद का संस्करण)

MCP कॉन्फ़िगरेशन

इस सर्वर का उपयोग Claude जैसे LLM के साथ करने के लिए, आपको इसे अपने LLM के MCP कॉन्फ़िगरेशन में जोड़ना होगा:

  1. अपने LLM की MCP कॉन्फ़िगरेशन फ़ाइल खोलें:

    • Claude डेस्कटॉप ऐप:
      • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
      • Windows: %APPDATA%\Claude\claude_desktop_config.json
      • Linux: ~/.config/Claude/claude_desktop_config.json
    • Cline (VS Code एक्सटेंशन):
      • ~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json
  2. DealX MCP सर्वर को mcpServers अनुभाग में जोड़ें:

    {
      "mcpServers": {
        "dealx": {
          "command": "npx",
          "args": ["-y", "@dealx/mcp-server"],
          "env": {
            "DEALX_API_URL": "https://dealx.com.ua"
          },
          "disabled": false,
          "autoApprove": []
        }
      }
    }
    

npm के माध्यम से स्थापना

DealX MCP सर्वर को स्थापित करने का सबसे आसान तरीका npm के माध्यम से है:

npm install -g @dealx/mcp-server

विकास के लिए स्थापना

यदि आप सर्वर को संशोधित करना चाहते हैं या इसके विकास में योगदान करना चाहते हैं:

  1. रिपॉजिटरी क्लोन करें:

    git clone <repository-url>
    cd dealx/mcp
    
  2. निर्भरताएँ स्थापित करें:

    npm install
    
  3. .env.example फ़ाइल के आधार पर एक .env फ़ाइल बनाएँ:

    cp .env.example .env
    
  4. उपयुक्त मान सेट करने के लिए .env फ़ाइल संपादित करें:

    # 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
    
  5. सर्वर बनाएँ:

    npm run build
    

उपयोग

सर्वर प्रारंभ करना

आप सर्वर को कई तरीकों से चला सकते हैं:

  1. यदि वैश्विक रूप से स्थापित है:

    node node_modules/@dealx/mcp-server/build/index.js
    
  2. बिना स्थापना के npx का उपयोग करके:

    npx -y @dealx/mcp-server
    
  3. पर्यावरण चर के साथ:

    DEALX_API_URL=https://dealx.com.ua npx -y @dealx/mcp-server
    
  4. विकास के लिए:

    npm start
    

LLM के साथ उपयोग

एक बार आपके LLM की MCP सेटिंग्स में कॉन्फ़िगर हो जाने पर, आप DealX प्लेटफ़ॉर्म के साथ इंटरैक्ट करने के लिए प्राकृतिक भाषा का उपयोग कर सकते हैं।

उदाहरण संकेत:

  • "DealX पर 'लैपटॉप' क्वेरी के साथ विज्ञापन खोजें"
  • "DealX पर 'iPhone' के लिए नवीनतम 5 विज्ञापन खोजें"
  • "कीव में अपार्टमेंट के लिए DealX खोजें"

उपलब्ध उपकरण

search_ads

DealX प्लेटफ़ॉर्म पर विज्ञापन खोजें।

पैरामीटर:

  • query (स्ट्रिंग, वैकल्पिक): खोज क्वेरी स्ट्रिंग
  • sort (स्ट्रिंग, वैकल्पिक): क्रमबद्ध क्रम (जैसे, नवीनतम पहले के लिए "-created")
  • offset (संख्या, वैकल्पिक): पृष्ठांकन ऑफसेट (1 से शुरू, डिफ़ॉल्ट: 1)
  • limit (संख्या, वैकल्पिक): प्रति पृष्ठ परिणामों की संख्या (अधिकतम 100, डिफ़ॉल्ट: 30)

उदाहरण उपयोग:

{
  "query": "laptop",
  "sort": "-created",
  "offset": 1,
  "limit": 10
}

सर्वर का विस्तार

सर्वर को अतिरिक्त उपकरणों के साथ आसानी से विस्तारित करने के लिए डिज़ाइन किया गया है। नया उपकरण जोड़ने का तरीका यहाँ दिया गया है:

  • src/index.ts में TOOLS ऑब्जेक्ट में उपकरण परिभाषित करें:

    const TOOLS = {
      SEARCH_ADS: "search_ads",
      NEW_TOOL: "new_tool", // Add your new tool here
    };
    
  • अपने उपकरण कार्यान्वयन के लिए src/tools निर्देशिका में एक नई फ़ाइल बनाएँ:

    // 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
        // ...
      }
    }
    
  • src/index.ts में ListToolsRequestSchema हैंडलर में उपकरण जोड़ें:

    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
          },
        },
      ],
    }));
    
  • src/index.ts में CallToolRequestSchema हैंडलर में उपकरण जोड़ें:

    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}`);
      }
    });
    
  • src/index.ts में अपना नया उपकरण आयात करें:

    import { newTool } from "./tools/new-tool.js";
    

नियोजित भविष्य के उपकरण

निम्नलिखित उपकरण भविष्य के कार्यान्वयन के लिए योजनाबद्ध हैं:

  • create_ad: DealX प्लेटफ़ॉर्म पर एक नया विज्ञापन बनाएँ
  • edit_ad: मौजूदा विज्ञापन संपादित करें
  • delete_ad: विज्ञापन हटाएँ
  • get_threads: किसी विज्ञापन के लिए चर्चा सूत्र प्राप्त करें
  • create_thread: एक नया चर्चा सूत्र बनाएँ

विकास

परियोजना संरचना

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 स्क्रिप्ट

  • npm run build - TypeScript को JavaScript में संकलित करें
  • npm start - संकलित JavaScript का उपयोग करके सर्वर प्रारंभ करें
  • npm run dev - हॉट रीलोडिंग के साथ विकास मोड में सर्वर प्रारंभ करें
  • npm run lint - ESLint का उपयोग करके कोड लिंट करें
  • npm run format - Prettier का उपयोग करके कोड फ़ॉर्मेट करें
  • npm test - परीक्षण चलाएँ

समस्या निवारण

सामान्य समस्याएँ

सर्वर प्रारंभ नहीं हो रहा

यदि सर्वर प्रारंभ होने में विफल रहता है, तो निम्नलिखित की जाँच करें:

  • सुनिश्चित करें कि आपके पास सही Node.js संस्करण स्थापित है
  • जाँचें कि सभी निर्भरताएँ स्थापित हैं
  • सत्यापित करें कि .env फ़ाइल मौजूद है और उसके सही मान हैं
  • त्रुटि संदेशों के लिए कंसोल आउटपुट की जाँच करें

कनेक्शन समस्याएँ

यदि LLM सर्वर से कनेक्ट नहीं हो पा रहा है:

  • सुनिश्चित करें कि सर्वर चल रहा है
  • जाँचें कि LLM की सेटिंग्स में MCP कॉन्फ़िगरेशन सही है
  • सत्यापित करें कि सर्वर निष्पादन योग्य का पथ सही है
  • जाँचें कि पर्यावरण चर सही ढंग से सेट हैं

API कनेक्शन समस्याएँ

यदि सर्वर DealX API से कनेक्ट नहीं हो पा रहा है:

  • सुनिश्चित करें कि DealX API चल रहा है
  • जाँचें कि DEALX_API_URL पर्यावरण चर सही ढंग से सेट है
  • सत्यापित करें कि API समापन बिंदु सर्वर से सुलभ है

सहायता प्राप्त करना

यदि आपको ऐसी समस्याएँ आती हैं जो यहाँ शामिल नहीं हैं, तो कृपया इस GitHub रिपॉजिटरी के विरुद्ध एक मुद्दा खोलें।