Skip to main content
Glama
shashi29vs

CX TimeFilter MCP Server

by shashi29vs

CX TimeFilter MCP Server

A Model Context Protocol (MCP) server providing time filter tools for CX Dashboard. This server exposes time filtering functionality that can be used by any MCP-compatible client, including Langflow.

๐ŸŽฏ Features

  • Set Predefined Time Periods: Last Month, Last 7 days, This Quarter, etc.

  • Set Custom Date Ranges: Specify exact start and end dates

  • List Available Periods: Get all supported time periods

  • HTTP-based MCP Protocol: Easy integration with any MCP client

  • Optional Authentication: API key protection

  • Comprehensive Validation: Input validation and error handling

Related MCP server: Utility MCP Server

๐Ÿš€ Quick Start

1. Installation

# Clone or create the project directory
mkdir cx-timefilter-mcp-server
cd cx-timefilter-mcp-server

# Install dependencies
npm install

2. Configuration

# Copy environment template
cp env.example .env

# Edit .env file
PORT=3000
NODE_ENV=development
MCP_API_KEY=your-secret-api-key-here
ALLOWED_ORIGINS=http://localhost:3001,https://your-langflow-instance.com

3. Run the Server

# Development mode
npm run dev

# Production mode
npm start

# Run tests
npm test

4. Verify Installation

# Health check
curl http://localhost:3000/health

# List available tools
curl http://localhost:3000/mcp/tools

# Test a tool (with API key if configured)
curl -X POST http://localhost:3000/mcp/tools/call \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer your-api-key" \
  -d '{
    "name": "set_time_period",
    "arguments": {
      "timePeriodName": "Last Month",
      "tabName": "Overview"
    }
  }'

๐Ÿ› ๏ธ Available Tools

1. set_time_period

Set a predefined time period for dashboard tabs.

Parameters:

  • timePeriodName (string): Exact name of the time period

  • tabName (string): Dashboard tab name

Example:

{
  "name": "set_time_period",
  "arguments": {
    "timePeriodName": "Last Month",
    "tabName": "Overview"
  }
}

2. set_custom_date_range

Set a custom date range with specific start and end dates.

Parameters:

  • startDate (string): Start date in YYYY-MM-DD format

  • endDate (string): End date in YYYY-MM-DD format

  • tabName (string): Dashboard tab name

Example:

{
  "name": "set_custom_date_range",
  "arguments": {
    "startDate": "2024-01-01",
    "endDate": "2024-01-31",
    "tabName": "Comparison"
  }
}

3. list_time_periods

List all available predefined time periods.

Parameters: None

Example:

{
  "name": "list_time_periods",
  "arguments": {}
}

๐Ÿ”— API Endpoints

Endpoint

Method

Description

/health

GET

Health check

/mcp/info

GET

MCP protocol information

/mcp/tools

GET

List available tools

/mcp/tools/call

POST

Execute a tool

/mcp

POST

Full MCP protocol endpoint

๐Ÿ” Authentication

The server supports optional API key authentication:

  1. Set API Key: Add MCP_API_KEY=your-secret-key to .env

  2. Include in Requests: Add Authorization: Bearer your-secret-key header

  3. Alternative Formats: ApiKey your-secret-key or Key your-secret-key

๐ŸŒ Langflow Integration

Step 1: Add MCP Tools Component

  1. Open your Langflow project

  2. Add an "MCP Tools" component

  3. Configure the connection

Step 2: Configure Connection

{
  "serverName": "CX TimeFilter Server",
  "connectionMode": "HTTP",
  "serverUrl": "http://localhost:3000",
  "apiKey": "your-api-key",
  "endpoints": {
    "tools": "/mcp/tools",
    "call": "/mcp/tools/call"
  }
}

Step 3: Use Tools in Flows

The tools will appear in Langflow and can be used in your AI workflows.

๐Ÿ“ฆ Deployment

# Install Railway CLI
npm install -g @railway/cli

# Login and deploy
railway login
railway init
railway up

Render

  1. Connect your GitHub repository

  2. Set environment variables

  3. Deploy automatically

Docker

FROM node:18-alpine
WORKDIR /app
COPY package*.json ./
RUN npm install
COPY . .
EXPOSE 3000
CMD ["npm", "start"]

๐Ÿงช Testing

# Run built-in tests
npm test

# Manual testing with curl
curl -X POST http://localhost:3000/mcp/tools/call \
  -H "Content-Type: application/json" \
  -d '{
    "name": "list_time_periods",
    "arguments": {}
  }'

๐Ÿ“Š Supported Time Periods

Calendar Periods:

  • All Time, Today, Yesterday

  • This Week, Last Week

  • This Month, Last Month

  • This Quarter, Last Quarter

  • This Year, Last Year

Rolling Periods:

  • Last 24 hours, Last 7 days, Last 14 days

  • Last 30 days, Last 90 days, Last 180 days

  • Last 12 Months

Custom Periods:

  • Any date range in YYYY-MM-DD format

๐Ÿ”ง Development

Project Structure

cx-timefilter-mcp-server/
โ”œโ”€โ”€ src/
โ”‚   โ”œโ”€โ”€ server.js              # Main server
โ”‚   โ”œโ”€โ”€ tools/
โ”‚   โ”‚   โ””โ”€โ”€ timefilter.js      # Time filter tools
โ”‚   โ”œโ”€โ”€ utils/
โ”‚   โ”‚   โ””โ”€โ”€ mcp-protocol.js    # MCP utilities
โ”‚   โ”œโ”€โ”€ middleware/
โ”‚   โ”‚   โ””โ”€โ”€ auth.js            # Authentication
โ”‚   โ””โ”€โ”€ test.js                # Test suite
โ”œโ”€โ”€ package.json
โ”œโ”€โ”€ .env
โ””โ”€โ”€ README.md

Adding New Tools

  1. Create tool definition in src/tools/

  2. Add validation schema

  3. Implement execute function

  4. Export in tools array

  5. Update README

๐Ÿ› Troubleshooting

Common Issues:

  1. Port already in use: Change PORT in .env

  2. CORS errors: Update ALLOWED_ORIGINS in .env

  3. Auth failures: Check MCP_API_KEY configuration

  4. Tool not found: Verify tool name matches exactly

Debug Mode:

NODE_ENV=development npm start

๐Ÿ“„ License

MIT License - see LICENSE file for details.

๐Ÿค Contributing

  1. Fork the repository

  2. Create a feature branch

  3. Make your changes

  4. Add tests

  5. Submit a pull request


Ready to integrate with Langflow and start filtering time periods via MCP! ๐ŸŽ‰

F
license - not found
Not graded
quality - not tested
D
maintenance

Maintenance

โ€“Maintainers
โ€“Response time
โ€“Release cycle
โ€“Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    The Time MCP Server is a Model Context Protocol (MCP) server that provides AI assistants and other MCP clients with standardized tools to perform time and date-related operations. This server acts as a bridge between AI tools and a robust time-handling back
    122
    26
    MIT
  • F
    license
    A
    quality
    D
    maintenance
    A general-purpose MCP server providing time-related utilities such as fetching current time, Unix timestamps, and formatting services. It supports both local stdio and remote SSE communication modes for versatile AI client integration.
    3
  • A
    license
    Not graded
    quality
    D
    maintenance
    Lightweight MCP server providing system time tools (current time, date, datetime, time components, unix timestamp) for LLM applications.
    1
    MIT

View all related MCP servers

Related MCP Connectors

  • MCP server for secureFlows: token-free URL builders and integration-linting tools for AI agents.

  • MCP server exposing the Backtest360 engine API as tools for AI agents.

  • Self-hosted MCP gateway: turn any API, database or MCP server into AI connectors โ€” no code.

View all MCP Connectors

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/shashi29vs/MCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server