EffectConnect MCP by usefulapi
Read channels, product selections, products, orders and processes in EffectConnect.
¿Debería usar esto?
Calidad y seguridad
Hallazgos (4)
- LOWen effectconnect_list_product_selections
- LOWen effectconnect_get_product_selection
- LOWen effectconnect_list_product_selection_products
- LOWen effectconnect_get_process_report
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.
Instalar
Instalación con un clic
Agrega esto a tu archivo `claude_desktop_config.json`:
{
"mcpServers": {
"effectconnect": {
"url": "https://effectconnect.usefulapi.io/mcp"
}
}
}Puntos de conexión remotos
https://effectconnect.usefulapi.io/mcpstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (14)
🟢effectconnect_list_channels
List the channels (marketplaces and webshops) linked to the EffectConnect API key. Use the channel identifier in other tools. Needs scope channels:read. GET /v3/channels.
Esquema de entrada
{
"type": "object",
"properties": {},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢effectconnect_get_channel(identifier)
Get one channel by its identifier. Needs scope channels:read. GET /v3/channel/{identifier}.
Esquema de entrada
{
"type": "object",
"properties": {
"identifier": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "The channel identifier, from effectconnect_list_channels."
}
},
"required": [
"identifier"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢effectconnect_list_product_selections(page_token)
List the product selections (named groups of products that a channel can sell) with pagination. Needs scope productSelections:read. GET /v3/product-selections.
Esquema de entrada
{
"type": "object",
"properties": {
"page_token": {
"description": "nextPageToken from the previous reply. Omit for the first page.",
"type": "string",
"minLength": 1,
"maxLength": 2048
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢effectconnect_get_product_selection(identifier)
Get one product selection by its numeric identifier. Needs scope productSelections:read. GET /v3/product-selection/{identifier}.
Esquema de entrada
{
"type": "object",
"properties": {
"identifier": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "The product selection identifier."
}
},
"required": [
"identifier"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢effectconnect_list_product_selection_products(identifier, page_token)
List the products in one product selection, with pagination. Needs scope productSelections:read. GET /v3/product-selection/{identifier}/products.
Esquema de entrada
{
"type": "object",
"properties": {
"identifier": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "The product selection identifier."
},
"page_token": {
"description": "nextPageToken from the previous reply. Omit for the first page.",
"type": "string",
"minLength": 1,
"maxLength": 2048
}
},
"required": [
"identifier"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢effectconnect_list_products(retrieve_attributes, included_attributes, languages, page_token)
List all products of the API key, page by page. Pass the nextPageToken from a reply to get the next page. Needs scope products:read. GET /v3/products.
Esquema de entrada
{
"type": "object",
"properties": {
"retrieve_attributes": {
"description": "Include the product attributes (default false).",
"type": "boolean"
},
"included_attributes": {
"description": "Only these attribute codes, for example [\"color\", \"size\"]. Use with retrieve_attributes.",
"maxItems": 100,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 100
}
},
"languages": {
"description": "Only these language codes, for example [\"en\", \"nl\"]. Omit for all languages.",
"maxItems": 50,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 10
}
},
"page_token": {
"description": "nextPageToken from the previous reply. Omit for the first page.",
"type": "string",
"minLength": 1,
"maxLength": 2048
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢effectconnect_search_products(product_selections, product_parent_api_identifiers, product_identifiers, retrieve_attributes, included_attributes, ...)
Find products by product selection, by parent API identifier, or by product identifiers (API identifier, SKU, EAN or external identifier). Needs scope products:read. POST /v3/products/search.
Esquema de entrada
{
"type": "object",
"properties": {
"product_selections": {
"description": "Only products in these product selections.",
"maxItems": 100,
"type": "array",
"items": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
}
},
"product_parent_api_identifiers": {
"description": "Only products under these parent API identifiers.",
"maxItems": 100,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 255
}
},
"product_identifiers": {
"description": "Only these products, each with its identifier type and value.",
"maxItems": 100,
"type": "array",
"items": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"PRODUCT_API_IDENTIFIER",
"SKU",
"EAN",
"EXTERNAL_IDENTIFIER"
]
},
"identifier": {
"type": "string",
"minLength": 1,
"maxLength": 255
}
},
"required": [
"type",
"identifier"
]
}
},
"retrieve_attributes": {
"description": "Include the product attributes (default false).",
"type": "boolean"
},
"included_attributes": {
"description": "Only these attribute codes, for example [\"color\", \"size\"]. Use with retrieve_attributes.",
"maxItems": 100,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 100
}
},
"languages": {
"description": "Only these language codes, for example [\"en\", \"nl\"]. Omit for all languages.",
"maxItems": 50,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 10
}
},
"page_token": {
"description": "nextPageToken from the previous reply. Omit for the first page.",
"type": "string",
"minLength": 1,
"maxLength": 2048
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢effectconnect_get_product(identifier_type, identifier, retrieve_attributes, included_attributes, languages)
Get one product by an identifier of the given type (API identifier, SKU, EAN or external identifier). Needs scope products:read. GET /v3/product/{identifierType}/{identifier}.
Esquema de entrada
{
"type": "object",
"properties": {
"identifier_type": {
"type": "string",
"enum": [
"PRODUCT_API_IDENTIFIER",
"SKU",
"EAN",
"EXTERNAL_IDENTIFIER"
]
},
"identifier": {
"type": "string",
"minLength": 1,
"maxLength": 255,
"description": "The product identifier value."
},
"retrieve_attributes": {
"description": "Include the product attributes (default false).",
"type": "boolean"
},
"included_attributes": {
"description": "Only these attribute codes, for example [\"color\", \"size\"]. Use with retrieve_attributes.",
"maxItems": 100,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 100
}
},
"languages": {
"description": "Only these language codes, for example [\"en\", \"nl\"]. Omit for all languages.",
"maxItems": 50,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 10
}
}
},
"required": [
"identifier_type",
"identifier"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢effectconnect_search_orders(ordered_at_after, ordered_at_before, updated_at_after, order_statuses, order_tags, ...)
Find orders by order date, last update, status, tag or channel. Leave the filters empty to list all orders page by page. Needs scope orders:read. POST /v3/orders/search.
Esquema de entrada
{
"type": "object",
"properties": {
"ordered_at_after": {
"description": "Only orders placed after this date-time.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}(:\\d{2}(\\.\\d{1,7})?)?(Z|[+-]\\d{2}:\\d{2})$"
},
"ordered_at_before": {
"description": "Only orders placed before this date-time.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}(:\\d{2}(\\.\\d{1,7})?)?(Z|[+-]\\d{2}:\\d{2})$"
},
"updated_at_after": {
"description": "Only orders updated after this date-time.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}(:\\d{2}(\\.\\d{1,7})?)?(Z|[+-]\\d{2}:\\d{2})$"
},
"order_statuses": {
"description": "Only orders with one of these statuses.",
"maxItems": 4,
"type": "array",
"items": {
"type": "string",
"enum": [
"PAID",
"PARTIALLY_SHIPPED",
"SHIPPED",
"CANCELLED"
]
}
},
"order_tags": {
"description": "Only orders with one of these tags.",
"maxItems": 20,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 100
}
},
"exclude_order_tags": {
"description": "Leave out orders with one of these tags.",
"maxItems": 20,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 100
}
},
"channel_ids": {
"description": "Only orders from these channel identifiers.",
"maxItems": 100,
"type": "array",
"items": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
}
},
"sort_field": {
"description": "The date to sort by.",
"type": "string",
"enum": [
"orderedAt",
"createdAt",
"updatedAt"
]
},
"sort_direction": {
"type": "string",
"enum": [
"ASCENDING",
"DESCENDING"
]
},
"currency": {
"type": "string",
"minLength": 3,
"maxLength": 3,
"pattern": "^[A-Z]{3}$",
"description": "ISO 4217 currency code, for example EUR."
},
"page_token": {
"description": "nextPageToken from the previous reply. Omit for the first page.",
"type": "string",
"minLength": 1,
"maxLength": 2048
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢effectconnect_read_orders(identifiers, sort_field, sort_direction, currency)
Get up to 100 orders by their identifiers (EffectConnect ID or number, channel identifier or number, connection identifier or number, or invoice). Needs scope orders:read. POST /v3/orders/read.
Esquema de entrada
{
"type": "object",
"properties": {
"identifiers": {
"minItems": 1,
"maxItems": 100,
"type": "array",
"items": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"EFFECTCONNECT_ID",
"EFFECTCONNECT_NUMBER",
"CHANNEL_IDENTIFIER",
"CHANNEL_NUMBER",
"CONNECTION_IDENTIFIER",
"CONNECTION_NUMBER",
"CONNECTION_INVOICE"
]
},
"value": {
"type": "string",
"minLength": 1,
"maxLength": 64
},
"channel_identifier": {
"description": "The channel the order belongs to, if the identifier is not unique.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
}
},
"required": [
"type",
"value"
]
}
},
"sort_field": {
"type": "string",
"enum": [
"orderedAt",
"createdAt",
"updatedAt"
]
},
"sort_direction": {
"type": "string",
"enum": [
"ASCENDING",
"DESCENDING"
]
},
"currency": {
"type": "string",
"minLength": 3,
"maxLength": 3,
"pattern": "^[A-Z]{3}$",
"description": "ISO 4217 currency code, for example EUR."
}
},
"required": [
"identifiers"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢effectconnect_get_order(identifier_type, identifier, channel_identifier, currency)
Get one order by an identifier of the given type. Pass channel_identifier when the identifier is not unique. Needs scope orders:read. GET /v3/order/{identifierType}/{identifier}.
Esquema de entrada
{
"type": "object",
"properties": {
"identifier_type": {
"type": "string",
"enum": [
"EFFECTCONNECT_ID",
"EFFECTCONNECT_NUMBER",
"CHANNEL_IDENTIFIER",
"CHANNEL_NUMBER",
"CONNECTION_IDENTIFIER",
"CONNECTION_NUMBER",
"CONNECTION_INVOICE"
]
},
"identifier": {
"type": "string",
"minLength": 1,
"maxLength": 64
},
"channel_identifier": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "The numeric channel identifier."
},
"currency": {
"type": "string",
"minLength": 3,
"maxLength": 3,
"pattern": "^[A-Z]{3}$",
"description": "ISO 4217 currency code, for example EUR."
}
},
"required": [
"identifier_type",
"identifier"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢effectconnect_list_processes(process_type, status, page_token)
List asynchronous processes (catalog and order reports) and their status. Filter by type or status. Processes are kept for 48 hours. GET /v3/processes.
Esquema de entrada
{
"type": "object",
"properties": {
"process_type": {
"type": "string",
"enum": [
"PRODUCT_PARENT_REPORT",
"PRODUCT_REPORT",
"CATEGORY_REPORT",
"ORDER_REPORT",
"ATTRIBUTE_REPORT",
"ENVIRONMENT_REPORT"
]
},
"status": {
"type": "string",
"enum": [
"QUEUED",
"PROCESSING",
"FINISHED",
"CRITICAL_ERROR"
]
},
"page_token": {
"description": "nextPageToken from the previous reply. Omit for the first page.",
"type": "string",
"minLength": 1,
"maxLength": 2048
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢effectconnect_get_process(identifier)
Get the status of one asynchronous process by its identifier (QUEUED, PROCESSING, FINISHED or CRITICAL_ERROR). Processes are kept for 48 hours. GET /v3/process/{identifier}.
Esquema de entrada
{
"type": "object",
"properties": {
"identifier": {
"type": "string",
"minLength": 1,
"maxLength": 64,
"description": "The process identifier returned by a write or a report request."
}
},
"required": [
"identifier"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢effectconnect_get_process_report(identifier)
Get the report of one finished asynchronous process. A report exists only when the status is FINISHED, and it is removed after 48 hours. GET /v3/process/{identifier}/report.
Esquema de entrada
{
"type": "object",
"properties": {
"identifier": {
"type": "string",
"minLength": 1,
"maxLength": 64
}
},
"required": [
"identifier"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Comunidad
Evidencia