[!IMPORTANT]
Note importante : Commerce MCP est fourni gratuitement en tant que service d'accès anticipé. Notre accord de niveau de service ne s'applique pas à Commerce MCP, et il est fourni "tel quel".
commercetools MCP Essentials
Ce dépôt contient à la fois un serveur MCP (que vous pouvez intégrer à de nombreux clients MCP) et des éléments essentiels d'agent qui peuvent être utilisés à partir de cadres d'agent.
commercetools Model Context Protocol
Configuration
Pour exécuter le serveur commercetools MCP à l'aide de npx, utilisez la commande suivante :
# Pour configurer tous les outils disponibles npx -y @commercetools/mcp-essentials --tools=all --clientId=CLIENT_ID --clientSecret=CLIENT_SECRET --projectKey=PROJECT_KEY --authUrl=AUTH_URL --apiUrl=API_URL # Pour configurer tous les outils en lecture seule npx -y @commercetools/mcp-essentials --tools=all.read --clientId=CLIENT_ID --clientSecret=CLIENT_SECRET --projectKey=PROJECT_KEY --authUrl=AUTH_URL --apiUrl=API_URL
# Pour configurer des outils spécifiques npx -y @commercetools/mcp-essentials --tools=products.read,products.create --clientId=CLIENT_ID --clientSecret=CLIENT_SECRET --projectKey=PROJECT_KEY --authUrl=AUTH_URL --apiUrl=API_URL
Assurez-vous de remplacer CLIENT_ID
, CLIENT_SECRET
, PROJECT_KEY
, AUTH_URL
, et API_URL
par vos valeurs réelles. Si vous utilisez le paramètre customerId, remplacez CUSTOMER_ID
par l'identifiant réel du client. Vous pouvez également définir la clé API_KEY dans vos variables d'environnement.
Utilisation avec Claude Desktop
Ajoutez ce qui suit à votre fichier claude_desktop_config.json
. Voir ici pour plus de détails.
{ "mcpServers" : { "commercetools" : { "command" : "npx", "args" : ["-y", "@commercetools/mcp-essentials@latest", "--tools=all", "--clientId=CLIENT_ID", "--clientSecret=CLIENT_SECRET", "--authUrl=AUTH_URL", "--projectKey=PROJECT_KEY", "--apiUrl=API_URL" ] } } }
Autre solution : Pour n'utiliser que les outils en lecture seule, remplacez "--tools=all"
par "--tools=all.read"
Outils disponibles
Options d'outils spéciales
Outil | Description de l'outil |
---|---|
tous | Activer tous les outils disponibles (opérations de lecture, de création et de mise à jour) |
tous.lire | Active tous les outils en lecture seule (sécurité pour l'accès en lecture seule) |
Outils individuels
Pour obtenir des informations sur le développement du serveur MCP, consultez ce README.
MCP Essentials
La bibliothèque commercetools MCP Essentials permet aux frameworks d'agents populaires, notamment LangChain, Vercel's AI SDK et Model Context Protocol (MCP), de s'intégrer aux API par le biais d'appels de fonctions. La bibliothèque n'est pas exhaustive de l'ensemble de l'API commercetools. Elle inclut la prise en charge de TypeScript et est construite directement sur le SDK [Node][node-sdk].
Vous trouverez ci-dessous des instructions de base, mais vous pouvez vous référer au package TypeScript pour plus d'informations.
TypeScript
Installation de TypeScript
Vous n'avez pas besoin de ce code source à moins que vous ne souhaitiez modifier le package. Si vous souhaitez simplement utiliser le paquetage, exécutez :
npm install @commercetools/agent-essentials
Exigences
- Node 18+
Utilisation
La bibliothèque doit être configurée avec les informations d'identification du client API de votre projet commercetools qui est disponible dans votre Merchant center.Important: Assurez-vous que les informations d'identification du client API ont les portées nécessaires alignées avec les actions que vous configurez dans l'agent essentials. Par exemple, si vous configurez products : { read : true }
, votre client API doit avoir la portée view_products
. En outre, la configuration
vous permet de spécifier les types d'actions qui peuvent être effectuées à l'aide des éléments essentiels de l'agent.
import { CommercetoolsAgentEssentials } from "@commercetools/agent-essentials/langchain" ; const commercetoolsAgentEssentials = new CommercetoolsAgentEssentials({ clientId : process.env.CLIENT_ID !,
clientSecret : process.env.CLIENT_SECRET !, projectKey : process.env.PROJECT_KEY !, authUrl : process.env.AUTH_URL !, apiUrl : process.env.API_URL !, configuration : { actions : { products : { read : true, create : true, update : true, }, project : { read : true, }, }, }, })
Outils
Les éléments essentiels de l'agent fonctionnent avec LangChain et le SDK AI de Vercel et peuvent être transmis sous la forme d'une liste d'outils. Par exemple :
import { AgentExecutor, createStructuredChatAgent } from "langchain/agents" ; const tools = commercetoolsAgentEssentials.getTools() ; const agent = await createStructuredChatAgent({ llm, tools, prompt, }) ; const agentExecutor = new AgentExecutor({ agent, tools, })
Protocole de contexte de modèle
Le programme commercetools MCP Essentials permet également de configurer votre propre serveur MCP. En voici un exemple :
import { CommercetoolsAgentEssentials } from "@commercetools/agent-essentials/modelcontextprotocol" ; import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js" ; const server = new CommercetoolsAgentEssentials({ clientId : process.env.CLIENT_ID !
clientSecret : process.env.CLIENT_SECRET !, projectKey : process.env.PROJECT_KEY !, authUrl : process.env.AUTH_URL !, apiUrl : process.env.API_URL !, configuration : { actions : { products : { read : true, }, cart : { read : true, create : true, update : true, }, }, }) ; async function main() { const transport = new StdioServerTransport() ; await server.connect(transport) ; console.error("My custom commercetools MCP Server running on stdio") ; } main().catch((error) => { console.error("Fatal error in main() :", error) ; process.exit(1) ; })
getTools()
Renvoie l'ensemble des outils disponibles qui peuvent être utilisés avec LangChain, AI SDK ou d'autres frameworks d'agents :
const tools = commercetoolsAgentEssentials.getTools()