channex-mcp
Allows managing Airbnb listings, pricing, and availability through the Channex API, including creating channel connections for Airbnb and updating Airbnb-specific listings.
Click on "Install 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., "@channex-mcplist my properties"
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.
Channex MCP
A self-improving Model Context Protocol (MCP) server for interacting with the Channex.io API.
โ ๏ธ Important Disclaimer
This is NOT an official Channex.io project. This is an independent, open-source implementation of an MCP server that interfaces with the Channex.io API. It is not affiliated with, endorsed by, or supported by Channex.io. Use at your own risk.
๐ Quick Start with Claude Code
See CLAUDE_CODE_SETUP.md for detailed instructions on adding this MCP to Claude Code.
๐ง MCP Configuration
For Cursor/Claude Desktop
Add the following to your ~/.cursor/mcp.json or Claude Desktop configuration:
{
"mcpServers": {
"channex": {
"command": "npx",
"args": ["--prefix", "/path/to/channex-mcp", "channex-mcp"],
"env": {
"MCP_MODE": "mcp",
"CHANNEX_API_KEY": "your-api-key-here",
"CHANNEX_BASE_URL": "https://app.channex.io/api/v1/"
}
}
}
}Important: Replace /path/to/channex-mcp with the absolute path to your channex-mcp directory and add your actual Channex API key.
Common Issues
ES Module errors: The project uses ES modules. The configuration above uses
npxto handle module loading correctly.Server not starting: Ensure you've run
npm installandnpm run buildin the channex-mcp directory first.
Features
โจ Complete CRUD operations for Properties, Room Types, Rate Plans
๐ ARI (Availability, Rates, Inventory) management
๐ Self-improving architecture with recursive commands
๐งช Built-in testing framework
๐ Auto-generated documentation
๐ Secure API key management
Installation
npm installConfiguration
Copy
.env.exampleto.envAdd your Channex API key
cp .env.example .envUsage
Running the MCP Server
npm run devSelf-Improvement Commands
Generate new endpoints:
npm run command generate-endpoint -- bookings list,get,createRun tests:
npm run command test-allUpdate documentation:
npm run command update-docsImprove types from API responses:
npm run command improve-types -- properties samples/properties.jsonAvailable Tools
The MCP server exposes the following tools:
Properties
channex_list_properties- List all propertieschannex_get_property- Get property by IDchannex_create_property- Create new propertychannex_update_property- Update propertychannex_delete_property- Delete property
Room Types
channex_list_room_types- List room typeschannex_get_room_type- Get room type by IDchannex_create_room_type- Create room type
Rate Plans
channex_list_rate_plans- List rate planschannex_get_rate_plan- Get rate plan by IDchannex_create_rate_plan- Create rate plan
ARI (Availability, Rates, Inventory)
channex_get_availability- Get availability per room typechannex_get_restrictions- Get restrictions per rate planchannex_update_ari- Update availability, rates, and restrictions
Channels (OTA Connections)
channex_test_channel_api- Test channel API accesschannex_check_existing_connection- Check for existing channel connectionschannex_list_channels- List all channel connections (supports field filtering)channex_get_channel_by_code- Get channels by code (optimized for specific channels)channex_get_channel- Get channel detailschannex_create_channel- Create new channel (e.g., Airbnb)channex_update_channel- Update channel settings (now supports property_ids)channex_delete_channel- Delete channel connectionchannex_get_channel_mappings- Get listing-to-rate-plan mappingschannex_update_channel_mapping- Map channel listings to rate planschannex_get_airbnb_listings- Get Airbnb-specific listingschannex_update_airbnb_listing- Update Airbnb pricing/availability
Development
Project Structure
channex-mcp/
โโโ src/
โ โโโ index.ts # MCP server entry point
โ โโโ api/
โ โ โโโ client.ts # Channex API client
โ โโโ resources/ # Resource handlers
โ โ โโโ properties.ts
โ โ โโโ room-types.ts
โ โ โโโ rate-plans.ts
โ โ โโโ ari.ts
โ โ โโโ channels.ts
โ โโโ types/ # TypeScript definitions
โโโ .claude/
โ โโโ commands/ # Self-improvement scripts
โโโ CLAUDE.MD # Claude Code documentationAdding New Features
Use the
generate-endpointcommand to scaffold new resourcesAdd TypeScript types in
src/types/index.tsImplement handlers in the MCP server
Update documentation using
update-docs
Recent Updates (Jan 2025)
Response Size Optimization
Added field filtering support to reduce response sizes
Implemented response truncation for large objects
Created optimized
channex_get_channel_by_codeendpointFixed pagination parameter formatting
Channel Management Enhancement
Added
property_idssupport tochannex_update_channelEnables adding/removing properties from existing channels
Essential for managing multi-property OTA connections
Contributing
We welcome contributions! Please see our Contributing Guidelines for details.
Important: This is an unofficial project. Contributors must:
Test against real Channex APIs (no mocks)
Respect Channex.io's Terms of Service
Never commit API keys or credentials
License
This project is licensed under the MIT License - see the LICENSE file for details.
Disclaimer
This project is not affiliated with Channex.io. The Channex name and API are property of their respective owners. This is an independent project that provides an MCP interface to interact with the public Channex API.
Support
For issues and questions, please open a GitHub issue.
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/webrenew/channex-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server