N
n8n Store
Workflow Market
[eBay] Recommendation API MCP Server

[eBay] Recommendation API MCP Server

by cfomodz0 views

描述

分类

🔧 Engineering🤖 AI & Machine Learning

使用的节点

n8n-nodes-base.stickyNoten8n-nodes-base.stickyNoten8n-nodes-base.stickyNoten8n-nodes-base.httpRequestTool@n8n/n8n-nodes-langchain.mcpTrigger
价格免费
浏览量0
最后更新11/28/2025
workflow.json
{
  "id": "ObiLzJ771LLGnRjV",
  "meta": null,
  "name": "[eBay] Recommendation API MCP Server",
  "tags": [],
  "nodes": [
    {
      "id": "d51b6a7d-2e23-4bf5-9dd1-632e82b3914c",
      "name": "Setup Instructions",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1380,
        -240
      ],
      "parameters": {
        "color": 4,
        "height": 1020,
        "content": "### ⚙️ Setup Instructions\n\n1. **Import Workflow**: \nLoad this workflow into your n8n instance\n\n2. **Configure Authentication**: \nSet up oauth2 credentials\n\n3. **Activate Workflow**:\nEnable the workflow to start the MCP server\n\n4. **Get MCP URL**: \nCopy the webhook URL from the MCP trigger\n\n5. **Connect AI Agent**:\nUse the MCP URL in your AI agent configuration\n\n\n### 💡 Usage Notes\n• Parameters are auto-populated by AI using $fromAI() expressions\n• With 1 API endpoints available as tools\n• Responses maintain original API structure\n\n\n### 🛠️ Customization\n• Add data transformation nodes if needed\n• Implement custom error handling\n• Add logging or monitoring nodes\n\n• Modify parameter defaults in any HTTP request node as needed\n\n### 💬 Need Help?\nPing me on [discord](https://discord.me/cfomodz) for integration guidance and custom automations. Check the [n8n documentation](https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.toolmcp/) for more information."
      },
      "typeVersion": 1
    },
    {
      "id": "cf2b726c-b68c-406c-ad37-2cef2807af82",
      "name": "Workflow Overview",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1120,
        -240
      ],
      "parameters": {
        "width": 420,
        "height": 920,
        "content": "## 🛠️ Recommendation MCP Server ✅ 1 operations\n\n### About\nThe Recommendation API returns information that sellers can use to optimize the configuration of their listings on eBay. Currently, the API contains a single method, findListingRecommendations. This method provides information that sellers can use to configure Promoted Listings ad campaigns to maximize the visibility of their items in the eBay marketplace.\n\n### 🔧 How it Works\n\nThis workflow converts the Recommendation API into an MCP-compatible interface for AI agents.\n\n• **MCP Trigger**: Serves as your server endpoint for AI agent requests\n• **HTTP Request Nodes**: Handle API calls to https://api.ebay.com{basePath}\n• **AI Expressions**: Automatically populate parameters via `$fromAI()` placeholders\n• **Native Integration**: Returns responses directly to the AI agent\n\n\n### 📋 Available Operations (1 endpoints)\n\n**Listing Recommendation (1 operations)**\nGet Promoted Listings Recommendations\n\n"
      },
      "typeVersion": 1
    },
    {
      "id": "93bbcd35-dc1d-477f-9211-eea2e8d17350",
      "name": "Recommendation MCP Server",
      "type": "@n8n/n8n-nodes-langchain.mcpTrigger",
      "position": [
        -620,
        -240
      ],
      "webhookId": "317971d6-ac6e-4443-b833-d6a3075a7acf",
      "parameters": {
        "path": "recommendation-mcp"
      },
      "typeVersion": 1
    },
    {
      "id": "88bcaf55-49e9-4e24-ad56-6c7a0f836283",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -660,
        -100
      ],
      "parameters": {
        "color": 2,
        "width": 300,
        "height": 240,
        "content": "## Listing Recommendation"
      },
      "typeVersion": 1
    },
    {
      "id": "b7eec5b8-765d-4b5a-b116-81c4c2213801",
      "name": "Get Promoted Listings Recommendations",
      "type": "n8n-nodes-base.httpRequestTool",
      "position": [
        -520,
        -20
      ],
      "parameters": {
        "url": "=https://api.ebay.com{basePath}/find",
        "method": "POST",
        "options": {},
        "sendQuery": true,
        "sendHeaders": true,
        "authentication": "genericCredentialType",
        "genericAuthType": "httpHeaderAuth",
        "queryParameters": {
          "parameters": [
            {
              "name": "filter",
              "value": "={{ $fromAI('filter', 'Provide a list of key-value pairs to specify the criteria you want to use to filter the response. In the list, separate each filter key from its associated value with a colon (":"). Currently, the only supported filter value is recommendationTypes and it supports only the ("AD") type. Follow the recommendationTypes specifier with the filter type(s) enclosed in curly braces ("{ }"), and separate multiple types with commas. Example: filter=recommendationTypes:{AD} Default: recommendationTypes:{AD}', 'string') }}"
            },
            {
              "name": "limit",
              "value": "={{ $fromAI('limit', 'Use this query parameter to set the maximum number of ads to return on a page from the paginated response. Default: 10 Maximum: 500', 'string') }}"
            },
            {
              "name": "offset",
              "value": "={{ $fromAI('offset', 'Specifies the number of ads to skip in the result set before returning the first ad in the paginated response. Combine offset with the limit query parameter to control the items returned in the response. For example, if you supply an offset of 0 and a limit of 10, the first page of the response contains the first 10 items from the complete list of items retrieved by the call. If offset is 10 and limit is 20, the first page of the response contains items 11-30 from the complete result set. Default: 0', 'string') }}"
            }
          ]
        },
        "toolDescription": "Find method currently returns information for a single recommendation type (AD) which contains information that sellers can use to configure Promoted Listings ad campaigns. The response from this method includes an array of the seller's listing IDs, where each element in the array contains recommendations related to the associated listing ID. For details on how to use this method, see Using the Recommendation API to help configure campaigns. The AD recommendation type The AD type contains two sets of information: The promoteWithAd indicator The promoteWithAd response field indicates whether or not eBay recommends you place the associated listing in a Promoted Listings ad campaign. The returned value is set to either RECOMMENDED or UNDETERMINED, where RECOMMENDED identifies the listings that will benefit the most from having them included in an ad campaign. The bid percentage Also known as the "ad rate," the bidPercentage field provides the current trending bid percentage of similarly promoted items in the marketplace. The ad rate is a user-specified value that indicates the level of promotion that eBay applies to the campaign across the marketplace. The value is also used to calculate the Promotion Listings fee, which is assessed to the seller if a Promoted Listings action results in the sale of an item. Configuring the request You can configure a request to review all of a seller's currently active listings, or just a subset of them. All active listings – If you leave the request body empty, the request targets all the items currently listed by the seller. Here, the response is filtered to contain only the items where promoteWithAd equals RECOMMENDED. In this case, eBay recommends that all the returned listings should be included in a Promoted Listings ad campaign. Selected listing IDs – If you populate the request body with a set of listingIds, the response contains data for all the specified listing IDs. In this scenario, the response provides you with information on listings where the promoteWithAd can be either RECOMMENDED or UNDETERMINED. The paginated response Because the response can contain many listing IDs, the findListingRecommendations method paginates the response set. You can control size of the returned pages, as well as an offset that dictates where to start the pagination, using query parameters in the request.\n\nParameters:\n- Query parameters:\n  • filter (optional) - Provide a list of key-value pairs to specify the criteria you want to use to filter the response. In the list, separate each filter key from its associated value with a colon (":"). Currently, the only supported filter value is recommendationTypes and it supports only the ("AD") type. Follow the recommendationTypes specifier with the filter type(s) enclosed in curly braces ("{ }"), and separate multiple types with commas. Example: filter=recommendationTypes:{AD} Default: recommendationTypes:{AD}\n  • limit (optional) - Use this query parameter to set the maximum number of ads to return on a page from the paginated response. Default: 10 Maximum: 500\n  • offset (optional) - Specifies the number of ads to skip in the result set before returning the first ad in the paginated response. Combine offset with the limit query parameter to control the items returned in the response. For example, if you supply an offset of 0 and a limit of 10, the first page of the response contains the first 10 items from the complete list of items retrieved by the call. If offset is 10 and limit is 20, the first page of the response contains items 11-30 from the complete result set. Default: 0\n- Header parameters:\n  • X-EBAY-C-MARKETPLACE-ID (required) - Use this header to specify the eBay marketplace where you list the items for which you want to get recommendations.",
        "headerParameters": {
          "parameters": [
            {
              "name": "X-EBAY-C-MARKETPLACE-ID",
              "value": "={{ $fromAI('X-EBAY-C-MARKETPLACE-ID', 'Use this header to specify the eBay marketplace where you list the items for which you want to get recommendations.', 'string') }}"
            }
          ]
        }
      },
      "typeVersion": 4.2
    }
  ],
  "active": false,
  "shared": [
    {
      "role": "workflow:owner",
      "project": {
        "id": "G5fce9xGuBAsWBXe",
        "icon": null,
        "name": "David Ashby <[email protected]>",
        "type": "personal",
        "createdAt": "2025-06-04T02:55:02.013Z",
        "updatedAt": "2025-06-04T02:56:01.361Z",
        "projectRelations": [
          {
            "role": "project:personalOwner",
            "user": {
              "id": "715c1c00-cb48-4712-9a32-f1f4b6db2b30",
              "role": "global:owner",
              "email": "[email protected]",
              "disabled": false,
              "lastName": "Ashby",
              "settings": {
                "npsSurvey": {
                  "responded": true,
                  "lastShownAt": 1749357655581
                },
                "userActivated": true,
                "userActivatedAt": 1749075994495,
                "easyAIWorkflowOnboarded": true,
                "firstSuccessfulWorkflowId": "3N3vVikZb3MckFYm"
              },
              "createdAt": "2025-06-04T02:55:01.745Z",
              "firstName": "David",
              "isPending": false,
              "updatedAt": "2025-06-08T04:40:58.399Z",
              "mfaEnabled": false,
              "personalizationAnswers": {
                "version": "v4",
                "personalization_survey_n8n_version": "1.95.3",
                "personalization_survey_submitted_at": "2025-06-04T02:56:07.075Z"
              }
            },
            "userId": "715c1c00-cb48-4712-9a32-f1f4b6db2b30",
            "createdAt": "2025-06-04T02:55:02.013Z",
            "projectId": "G5fce9xGuBAsWBXe",
            "updatedAt": "2025-06-04T02:55:02.013Z"
          }
        ]
      },
      "createdAt": "2025-07-02T04:18:18.019Z",
      "projectId": "G5fce9xGuBAsWBXe",
      "updatedAt": "2025-07-02T04:18:18.019Z",
      "workflowId": "ObiLzJ771LLGnRjV"
    }
  ],
  "pinData": {},
  "settings": {
    "timezone": "America/New_York"
  },
  "createdAt": "2025-07-02T04:18:18.016Z",
  "updatedAt": "2025-07-02T04:18:49.000Z",
  "versionId": "48e12937-9d2a-49b8-8732-92176e7185c3",
  "isArchived": false,
  "staticData": null,
  "connections": {
    "Get Promoted Listings Recommendations": {
      "ai_tool": [
        [
          {
            "node": "Recommendation MCP Server",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    }
  },
  "triggerCount": 0
}

相关工作流