trip1
Provides an x402-capable wallet MCP (@coinbase/payments-mcp) that can be loaded alongside trip1 to handle fully hands-off agent payments, letting agents pay USDC on Base for hotel bookings without manual intervention.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@trip1book a hotel in Barcelona for 3 nights starting Friday"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
trip1 agent skills and MCP server
A plugin that lets agents book hotels on trip1 through the trip1 MCP server: about 3 million properties in 200+ countries, paid in USDC on Base over x402.
Endpoint:
https://trip1.com/api/mcp(Streamable HTTP)Auth: none, no account, API key or OAuth
Docs: https://trip1.com/agents
MCP Registry:
com.trip1/mcp
Ships one skill, hotel-booking, which activates when the user wants to find, compare, or book a hotel.
What's in the box
.claude-plugin/plugin.json— Claude Code / Claude Desktop plugin manifest.mcp.json— wires the trip1 remote MCP server so the plugin is self-containedplugin.jsonandmcp.json— the same plugin in the Agent Plugins format, for Cursor and other compatible clientsskills/hotel-booking/SKILL.md— the skill that orchestrates the full booking flowserver.json— the official MCP Registry entryllms-install.md— install instructions for agents such as Cline that set servers up themselves
Related MCP server: 1Stay Hotel Booking
Install
Claude Code
/plugin marketplace add trivial-corp/agents
/plugin install trip1@trivial-corp/agentsThe MCP server and the skill come in together. Restart the session so Claude Code picks up the new MCP connection.
Claude Desktop
Two options.
As a local plugin. Download agents.zip from the latest release, then in Claude Desktop go to Customize → Personal plugins → Upload local plugin and drop the zip in.
As a connector. If you only want the MCP server without the skill, add the connector directly:
{
"mcpServers": {
"trip1": {
"type": "http",
"url": "https://trip1.com/api/mcp"
}
}
}Cursor, Windsurf, Cline
Add the server to the client's MCP config (~/.cursor/mcp.json for Cursor; MCP Servers → Configure → Remote Servers in Cline):
{
"mcpServers": {
"trip1": {
"type": "streamable-http",
"url": "https://trip1.com/api/mcp"
}
}
}Cursor also loads this repo as a plugin through plugin.json and mcp.json. Clients that only speak stdio can bridge with npx -y mcp-remote https://trip1.com/api/mcp.
VS Code
code --add-mcp '{"name":"trip1","type":"http","url":"https://trip1.com/api/mcp"}'Codex CLI, Gemini CLI, any SKILL.md-compatible agent
npx skills add trivial-corp/agentsThis installs the skill. Add the MCP server separately via your client's MCP config (same JSON as above).
ChatGPT
Search for trip1 in the ChatGPT apps directory. Or add it as a custom connector in Settings → Connectors → Add, pointing at:
https://trip1.com/api/mcpThe skill doesn't apply here; ChatGPT doesn't load SKILL.md files. The tool descriptions in the MCP server carry enough intent for ChatGPT to drive the flow on its own.
Cowork and other MCP-aware clients
Any client that speaks remote MCP (Streamable HTTP) can add trip1 as a connector. Paste the same mcpServers block above, or the bare URL https://trip1.com/api/mcp if the client accepts URLs directly.
Local development
git clone https://github.com/trivial-corp/agents
cd agents
claude --plugin-dir .What the skill does
The skill is instructions, not code. It tells the agent:
when a hotel-booking intent is present and the skill should activate
which trip1 MCP tools to call, in what order, with which arguments
how to handle the x402 payment handshake and the CoinGate fallback
how to report results and recover from rate drops, payment failures, and polling timeouts
Paying on the agent's behalf
For fully hands-off agent payments, load an x402-capable wallet MCP alongside trip1. The simplest option:
npx @coinbase/payments-mcpPaying from code with the x402 SDK
@x402/fetch refuses any payment above $1 by default, and a hotel booking always costs more, so raise the cap. Pin the recipient too, so the client only ever pays trip1:
import { wrapFetchWithPaymentFromConfig } from "@x402/fetch";
import { ExactEvmScheme } from "@x402/evm";
import { privateKeyToAccount } from "viem/accounts";
const TRIP1_PAY_TO = "0x4eD818663D9040461Ee1f6E8f618Df1770dddDc1"; // see https://trip1.com/.well-known/x402.json
const fetchWithPayment = wrapFetchWithPaymentFromConfig(fetch, {
schemes: [{ network: "eip155:8453", client: new ExactEvmScheme(privateKeyToAccount(process.env.EVM_PRIVATE_KEY)) }],
spendControls: { maxAmountPerPayment: "$2000" },
policies: [(_version, reqs) => reqs.filter((r) => r.payTo.toLowerCase() === TRIP1_PAY_TO.toLowerCase())],
});
const response = await fetchWithPayment(paymentUrl); // payment_url from purchase_hotelThen poll get_order_details until ready is true.
Without a wallet
Call purchase_hotel with payment_service: "coingate". It returns a CoinGate checkout URL that a human finishes in a browser. CoinGate takes 120+ cryptocurrencies, including USDC.
Publishing to the MCP Registry
Bump version in server.json, then run mcp-publisher publish after mcp-publisher login dns --domain trip1.com. The DNS key lives with the trip1 team.
Releasing
Bump version in .claude-plugin/plugin.json and merge to main. The release.yml workflow tags vX.Y.Z, packages agents.zip (full plugin bundle) plus one zip per skill under skills/, and publishes them to a GitHub release.
To cut a release from an existing commit instead, push a tag manually: git tag -a vX.Y.Z -m "..." && git push origin vX.Y.Z. The same workflow handles it.
Links
Landing page: https://trip1.com/agents
Server card: https://trip1.com/.well-known/mcp.json
x402 metadata: https://trip1.com/.well-known/x402.json
MCP Registry entry:
com.trip1/mcpx402 protocol: https://x402.org
Agent Skills spec: https://agentskills.io/specification
License
This server cannot be deployed
Maintenance
Related MCP Connectors
Book real hotel and resort stays from any AI agent: all-in pricing, hosted Stripe checkout, no key.
Pay-per-call tools for autonomous agents, settled in USDC on Base via x402.
Pay-per-call data APIs for AI agents. USDC on Base via x402. 33 tools, no signup.
Market data and web intelligence for AI agents, paid per call in USDC on Base via x402.
Related MCP Servers
- AlicenseAqualityDmaintenanceEnables AI agents to search, browse, and book hotels from a database of 2 million properties worldwide. Provides comprehensive hotel search capabilities with location lookup, filtering by amenities, detailed property information, and integrated booking functionality.613 npm1ISC
- AlicenseAqualityCmaintenanceHotel booking MCP server — the first transaction-complete hotel booking integration for AI agents. Search 300K+ properties in 140+ countries, get live rates and room details, and generate secure checkout URLs. No payment in the AI conversation — guests complete booking at a hosted checkout page and receive a real hotel confirmation number. Set your own booking fee via Stripe Connect.833 npm3-

DIDA Hotel MCPofficial
AlicenseNot gradedqualityBmaintenanceEnables AI agents to search, compare, and book hotels with real-time pricing and availability, supporting multiple location types, star ratings, and price filters.10MIT
Travala Travel MCPofficial
FlicenseNot gradedqualityDmaintenanceTravala Travel MCP is the first end-to-end agentic AI travel protocol. It lets AI/ MCP clients search live hotel inventory on 2.2M+ properties, compare room packages and complete bookings, with payment settled on-chain in USDC on the Base network via x402 protocol. OAuth-secured; booking & cancellation are identity- & OTP-protected. Developers earn rewards on bookings driven through their agents.4-