GoDataFeed MCP by usefulapi

Read feeds and orders; acknowledge orders, record shipments and update status in GoDataFeed.

Should I use this

Quality & Safety

A
Description quality
100%
Schema completeness
91%
Naming quality
76%
Poisoning risk
80%
Permission match
100%
Protocol compliance
100%

Findings (4)

  • HIGHTool description contains system tag or markerin godatafeed_acknowledge_order
  • HIGHTool poisoning patterns detected
  • LOWTool 'godatafeed_get_order_fulfillments' name length outside 3-30 rangein godatafeed_get_order_fulfillments
  • LOWTool 'godatafeed_get_order_fulfillment' name length outside 3-30 rangein godatafeed_get_order_fulfillment

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~2,459Tokens (tool definitions)
~1.6 KBTypical response size
Moderate attention impact (1.92% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "godatafeed": {
      "url": "https://godatafeed.usefulapi.io/mcp"
    }
  }
}

Remote endpoints

https://godatafeed.usefulapi.io/mcpstreamable-http

What it can do

Tool inventory

Tools (11)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢godatafeed_count_feeds

Count the product feeds in the store. Use this first to check the store has feeds. GoDataFeed API: GET /v1/{token}/feeds/count.

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢godatafeed_list_feeds(page, pageSize)

List the product feeds with their names and status, one page at a time. GoDataFeed API: GET /v1/{token}/feeds.

Input Schema

{
  "type": "object",
  "properties": {
    "page": {
      "description": "Page number (default 1).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "pageSize": {
      "description": "Results per page (max 100).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢godatafeed_get_feed(feed_id)

Get one feed by its id (FeedId). GoDataFeed API: GET /v1/{token}/feeds/{feedId}.

Input Schema

{
  "type": "object",
  "properties": {
    "feed_id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200,
      "description": "The feed id (FeedId from godatafeed_list_feeds)."
    }
  },
  "required": [
    "feed_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢godatafeed_count_orders(fromDate, toDate, status)

Count the orders in a purchase date range, optionally by status. GoDataFeed API: GET /v1/{token}/Orders/Count.

Input Schema

{
  "type": "object",
  "properties": {
    "fromDate": {
      "description": "Purchase date range start (ISO-8601 UTC).",
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}(T\\d{2}:\\d{2}(:\\d{2}(\\.\\d{1,9})?)?Z)?$"
    },
    "toDate": {
      "description": "Purchase date range end (ISO-8601 UTC).",
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}(T\\d{2}:\\d{2}(:\\d{2}(\\.\\d{1,9})?)?Z)?$"
    },
    "status": {
      "description": "Order status filter, for example New (not yet acknowledged).",
      "type": "string"
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢godatafeed_list_orders(fromDate, toDate, status, page, pageSize, ...)

List orders in a purchase date range, optionally by status, one page at a time. Use status New to find orders not yet acknowledged. GoDataFeed API: GET /v1/{token}/Orders.

Input Schema

{
  "type": "object",
  "properties": {
    "fromDate": {
      "description": "Purchase date range start (ISO-8601 UTC).",
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}(T\\d{2}:\\d{2}(:\\d{2}(\\.\\d{1,9})?)?Z)?$"
    },
    "toDate": {
      "description": "Purchase date range end (ISO-8601 UTC).",
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}(T\\d{2}:\\d{2}(:\\d{2}(\\.\\d{1,9})?)?Z)?$"
    },
    "status": {
      "description": "Order status filter, for example New (not yet acknowledged).",
      "type": "string"
    },
    "page": {
      "description": "Page number (default 1).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "pageSize": {
      "description": "Results per page (max 100).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100
    },
    "fromGDFImportDate": {
      "description": "Import date range start (ISO-8601 UTC).",
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}(T\\d{2}:\\d{2}(:\\d{2}(\\.\\d{1,9})?)?Z)?$"
    },
    "toGDFImportDate": {
      "description": "Import date range end (ISO-8601 UTC).",
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}(T\\d{2}:\\d{2}(:\\d{2}(\\.\\d{1,9})?)?Z)?$"
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢godatafeed_get_order(order_id)

Get one order by its GoDataFeed OrderId (from godatafeed_list_orders), with its items and status. The marketplace order number is not accepted here. GoDataFeed API: GET /v1/{token}/Orders/{orderId}.

Input Schema

{
  "type": "object",
  "properties": {
    "order_id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200,
      "description": "The GoDataFeed OrderId (not the marketplace order number)."
    }
  },
  "required": [
    "order_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢godatafeed_get_order_fulfillments(order_id)

List the fulfillments (shipments) recorded for one order. GoDataFeed API: GET /v1/{token}/Orders/{orderId}/GetFulfillments.

Input Schema

{
  "type": "object",
  "properties": {
    "order_id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200,
      "description": "The GoDataFeed OrderId."
    }
  },
  "required": [
    "order_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢godatafeed_get_order_fulfillment(order_id, fulfillment_id)

Get one fulfillment (shipment) of one order. GoDataFeed API: GET /v1/{token}/Orders/{orderId}/GetFulfillments/{fulfillmentId}.

Input Schema

{
  "type": "object",
  "properties": {
    "order_id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200,
      "description": "The GoDataFeed OrderId."
    },
    "fulfillment_id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200,
      "description": "The fulfillment id (OrderFulfillmentId)."
    }
  },
  "required": [
    "order_id",
    "fulfillment_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴godatafeed_acknowledge_order(order_id, order_destination_order_number)

Acknowledge one order after it is in your own system: sets its status to processing and sends your order number to the marketplace. One order per call. GoDataFeed API: PUT /v1/{token}/Orders/{id}/AcknowledgeOrder.

Input Schema

{
  "type": "object",
  "properties": {
    "order_id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200,
      "description": "The GoDataFeed OrderId (from godatafeed_list_orders)."
    },
    "order_destination_order_number": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100,
      "description": "Your own order number in your system (sent to the marketplace)."
    }
  },
  "required": [
    "order_id",
    "order_destination_order_number"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴godatafeed_update_order_status(order_id, order_status, shipment_tracking_number, date_shipped, destination_shipping_carrier, ...)

Set the destination status of one order, for example Shipped (with tracking) or Canceled. This changes the order at the marketplace. Use the date and time the order was shipped. GoDataFeed API: PUT /v1/{token}/Orders/{orderId}/UpdateStatus.

Input Schema

{
  "type": "object",
  "properties": {
    "order_id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200,
      "description": "The GoDataFeed OrderId."
    },
    "order_status": {
      "type": "string",
      "minLength": 1,
      "maxLength": 50,
      "description": "New destination status, for example Shipped or Canceled."
    },
    "shipment_tracking_number": {
      "description": "Tracking number (for Shipped).",
      "type": "string",
      "maxLength": 100
    },
    "date_shipped": {
      "description": "Date and time the order was shipped (ISO-8601 UTC).",
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}(T\\d{2}:\\d{2}(:\\d{2}(\\.\\d{1,9})?)?Z)?$"
    },
    "destination_shipping_carrier": {
      "description": "Carrier name in your system.",
      "type": "string",
      "maxLength": 100
    },
    "shipping_carrier": {
      "description": "Carrier name at the marketplace.",
      "type": "string",
      "maxLength": 100
    },
    "shipping_method": {
      "description": "Shipping method at the marketplace.",
      "type": "string",
      "maxLength": 100
    },
    "shipping_service_name": {
      "description": "Shipping service name.",
      "type": "string",
      "maxLength": 100
    },
    "shipping_service_value": {
      "description": "Shipping service value.",
      "type": "string",
      "maxLength": 100
    }
  },
  "required": [
    "order_id",
    "order_status"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴godatafeed_insert_fulfillment(order_id, tracking_number, date_shipped, shipping_service_name, shipping_service_value, ...)

Record a shipment (fulfillment) with a tracking number for one order. The fulfillment goes to the marketplace. Add the item SKU to attach it to one line item. GoDataFeed API: POST /v1/{token}/Orders/InsertFulfillment.

Input Schema

{
  "type": "object",
  "properties": {
    "order_id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200,
      "description": "The GoDataFeed OrderId."
    },
    "tracking_number": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100,
      "description": "Tracking number of the shipment."
    },
    "date_shipped": {
      "description": "Date and time the shipment left (ISO-8601 UTC).",
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}(T\\d{2}:\\d{2}(:\\d{2}(\\.\\d{1,9})?)?Z)?$"
    },
    "shipping_service_name": {
      "type": "string",
      "maxLength": 100,
      "description": "Shipping service name, for example UPS Ground."
    },
    "shipping_service_value": {
      "description": "Shipping service value.",
      "type": "string",
      "maxLength": 100
    },
    "order_item_sku": {
      "description": "SKU of one line item (optional).",
      "type": "string",
      "maxLength": 100
    },
    "tracking_url": {
      "description": "Tracking page URL (optional).",
      "type": "string",
      "maxLength": 500
    },
    "source_shipping_carrier": {
      "description": "Carrier name at the marketplace.",
      "type": "string",
      "maxLength": 100
    },
    "source_shipping_method": {
      "description": "Shipping method at the marketplace.",
      "type": "string",
      "maxLength": 100
    },
    "destination_shipping_carrier": {
      "description": "Carrier name in your system.",
      "type": "string",
      "maxLength": 100
    },
    "ship_to_company_name": {
      "description": "Ship-to company name (optional).",
      "type": "string",
      "maxLength": 200
    }
  },
  "required": [
    "order_id",
    "tracking_number",
    "shipping_service_name"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded11 tools