channex-mcp
Enables interaction with the Channex.io API for managing properties, room types, rate plans, availability, rates, inventory, and channel connections through natural language.
README
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 install
Configuration
- Copy
.env.exampleto.env - Add your Channex API key
cp .env.example .env
Usage
Running the MCP Server
npm run dev
Self-Improvement Commands
Generate new endpoints:
npm run command generate-endpoint -- bookings list,get,create
Run tests:
npm run command test-all
Update documentation:
npm run command update-docs
Improve types from API responses:
npm run command improve-types -- properties samples/properties.json
Available 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 documentation
Adding New Features
- Use the
generate-endpointcommand to scaffold new resources - Add TypeScript types in
src/types/index.ts - Implement 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_codeendpoint - Fixed pagination parameter formatting
Channel Management Enhancement
- Added
property_idssupport tochannex_update_channel - Enables 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.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.