A Model Context Protocol (MCP) server implementation for interacting with Kayzen Analytics API. This package enables AI models to access and analyze Kayzen advertising campaign data through a standardized interface.
- Automated Authentication: Built-in token management with automatic refresh mechanism
- Report Management: Easy access to Kayzen analytics reports
- Error Handling: Comprehensive error handling for API interactions
- TypeScript Support: Full TypeScript implementation with type definitions
- Environment Based Configuration: Simple setup using environment variables
npm install @feedmob-ai/kayzen-mcp
Create a .env
file with your Kayzen credentials:
KAYZEN_USERNAME=your_username
KAYZEN_PASSWORD=your_password
KAYZEN_BASIC_AUTH=your_basic_auth_token
KAYZEN_BASE_URL=https://api.kayzen.io/v1 # Optional, defaults to this value
import { KayzenMCPServer } from '@feedmob-ai/kayzen-mcp';
const server = new KayzenMCPServer();
server.start();
Lists all available reports from Kayzen Analytics.
- Inputs: None
- Returns: Array of report objects containing:
id
: Report identifiername
: Report nametype
: Report type
const reports = await server.tools.list_reports();
Retrieves results for a specific report.
- Inputs:
report_id
(string, required): ID of the report to fetchstart_date
(string, optional): Start date in YYYY-MM-DD formatend_date
(string, optional): End date in YYYY-MM-DD format
- Returns: Report data and metadata
const results = await server.tools.get_report_results({
report_id: 'report_id',
start_date: '2024-01-01', // optional
end_date: '2024-01-31' // optional
});
Analyzes report results and provides insights.
- Inputs:
report_id
(string): ID of the report to analyze
- Analysis includes:
- Performance metrics
- Key trends
- Areas for optimization
- Unusual patterns or anomalies
To use this with Claude Desktop, add the following to your claude_desktop_config.json
:
{
"mcpServers": {
"github": {
"command": "npx",
"args": [
"-y",
"@feedmob-ai/kayzen-mcp"
],
"env": {
"KAYZEN_USERNAME": "username",
"KAYZEN_PASSWORD": "pasword",
"KAYZEN_BASIC_AUTH": "auth token"
}
}
}
}
- Node.js (v16 or higher)
- npm (v7 or higher)
- Kayzen API credentials
# Install dependencies
npm install
# Build the project
npm run build
# Start the server
npm start
# Development mode with hot-reload
npm run dev
kayzen-mcp/
├── src/
│ ├── server.ts # MCP server implementation
│ └── kayzen-client.ts # Kayzen API client
├── dist/ # Compiled JavaScript
└── package.json # Project configuration
Main dependencies:
@modelcontextprotocol/sdk
: ^1.7.0axios
: ^1.8.3dotenv
: ^16.4.7zod
: ^3.24.2
The server handles various error scenarios:
- Authentication failures
- Invalid API requests
- Network issues
- Token expiration and refresh
- Invalid parameters
MIT License
FeedMob