Coinbase Bazaar tramite Gateway AgentCore
AgentCore Gateway ti consente di connetterti a server MCP e endpoint API a pagamento. Puoi aggiungere il server MCP Coinbase x402 Bazaar come destinazione in un Gateway per scoprire oltre 10.000 strumenti MCP a pagamento esistenti che supportano le microtransazioni x402.
Aggiungi il server MCP Coinbase x402 Bazaar a un gateway
Esempio
- Console
-
-
Vai alla sezione Target.
-
(Facoltativo) Modifica il nome del Target generato.
-
(Facoltativo) Fornisci una descrizione del Target.
-
Per il tipo di Target, scegli Integrazioni.
-
Seleziona Coinbase x402 Bazaar.
-
Ignora le configurazioni di autenticazione in uscita. «Nessuna autorizzazione» è l'unica opzione supportata ed è selezionata per impostazione predefinita.
- AgentCore CLI
-
agentcore add gateway-target \
--name CoinbaseTarget \
--type mcp-server \
--endpoint https://api.cdp.coinbase.com/platform/v2/x402/discovery/mcp \
--gateway MyGateway
agentcore deploy
- AWS SDK
-
import boto3
agentcore_client = boto3.client('bedrock-agentcore-control')
target = agentcore_client.create_gateway_target(
gatewayIdentifier="your-gateway-id",
name="Coinbasex402BazaarTarget",
description="Coinbase x402 Bazaar MCP server for paid API discovery",
targetConfiguration={
"mcp": {
"mcpServer": {
"endpoint": "https://api.cdp.coinbase.com/platform/v2/x402/discovery/mcp"
}
}
}
)
- Strands SDK
-
Usa Coinbase x402 Bazaar Gateway Target con il tuo agente:
from strands import Agent
from strands.models import BedrockModel
from strands.tools.mcp.mcp_client import MCPClient
from mcp.client.streamable_http import streamablehttp_client
from bedrock_agentcore.payments.integrations.config import AgentCorePaymentsPluginConfig
from bedrock_agentcore.payments.integrations.strands.plugin import AgentCorePaymentsPlugin
GATEWAY_URL = "https://<your-gateway-id>.gateway.bedrock-agentcore.<region>.amazonaws.com/mcp"
ACCESS_TOKEN = "<your-inbound-auth-token>"
mcp_client = MCPClient(
lambda: streamablehttp_client(GATEWAY_URL, headers={"Authorization": f"Bearer {ACCESS_TOKEN}"})
)
# Configure the Payment plugin
config = AgentCorePaymentsPluginConfig(
payment_manager_arn="arn:aws:bedrock-agentcore:us-west-2:123456789012:payment-manager/pm-abc123",
user_id="test-user-123",
payment_instrument_id="payment-instrument-XJU4RSQP9VO0ler",
payment_session_id="payment-session-xuzrnUCd7RT725G",
region="us-west-2",
)
# Create the plugin
plugin = AgentCorePaymentsPlugin(config=config)
with mcp_client:
tools = mcp_client.list_tools_sync()
agent = Agent(
model=BedrockModel(inference_profile_id="us.anthropic.claude-sonnet-4-20250514-v1:0", streaming=True),
tools=tools,
plugins=[plugin], # enables automatic payments
)
response = agent("Search for available x402 paid APIs related to weather data")
print(response)
- LangGraph
-
Usa Coinbase x402 Bazaar Gateway Target con il tuo agente: LangGraph
import asyncio
from langchain.agents import create_agent
from langchain_openai import ChatOpenAI
from langchain_mcp_adapters.client import MultiServerMCPClient
from bedrock_agentcore.payments.integrations.langgraph import (
AgentCorePaymentsConfig,
AgentCorePaymentsMiddleware,
)
GATEWAY_URL = "https://<your-gateway-id>.gateway.bedrock-agentcore.<region>.amazonaws.com/mcp"
ACCESS_TOKEN = "<your-inbound-auth-token>"
async def main():
client = MultiServerMCPClient({
"bazaar": {
"transport": "streamable_http",
"url": GATEWAY_URL,
"headers": {"Authorization": f"Bearer {ACCESS_TOKEN}"},
}
})
mcp_tools = await client.get_tools()
config = AgentCorePaymentsConfig(
payment_manager_arn="arn:aws:bedrock-agentcore:us-west-2:123456789012:payment-manager/pm-abc123",
user_id="test-user-123",
payment_instrument_id="payment-instrument-XJU4RSQP9VO0ler",
region="us-west-2",
auto_session=True,
)
payments = AgentCorePaymentsMiddleware(config)
agent = create_agent(
model=ChatOpenAI(model="gpt-4o-mini"),
tools=mcp_tools,
middleware=[payments],
)
result = await agent.ainvoke(
{"messages": [{"role": "user", "content": "Search for available x402 paid APIs related to weather data"}]}
)
print(result["messages"][-1].content)
asyncio.run(main())
Una volta configurato il target Bazaar, i tuoi agenti possono scoprire e chiamare gli endpoint x402 a pagamento tramite il Gateway. Quando un endpoint restituisce HTTP 402, AgentCore payments gestisce automaticamente il flusso di pagamento se hai configurato un plug-in per i pagamenti (Strands) o un middleware () nel tuo agente. LangGraph Per ulteriori informazioni, consulta Integrazioni di Framework.
Per configurare il Payment Manager e il Connector necessari per l'elaborazione dei pagamenti, consulta Creare un gestore di pagamenti e un connettore.