MCP ExplorerExplorer

Mcp Crontab Server

@jasona7on 10 months ago
2 MIT
FreeCommunity
AI Systems
A MCP Server exposing tools for fetching entries and viewing logs

Overview

What is Mcp Crontab Server

mcp-crontab-server is a terminal-based UI tool designed for exploring and monitoring crontab entries using the Model Context Protocol (MCP). It provides an intuitive interface for inspecting scheduled tasks, checking their status, and viewing recent logs directly from the terminal.

Use cases

Use cases for mcp-crontab-server include system administrators needing to monitor cron job statuses, developers looking to debug scheduled tasks, and teams wanting to maintain logs of cron job executions for auditing purposes.

How to use

To use mcp-crontab-server, ensure you have Python 3.7+ and the required dependencies installed. Run the server with ‘python mcp_crontab_server.py’ and then start the client using ‘python mcp_crontab_client_http.py’. The client will present a menu for listing crontab entries, viewing recent logs, searching for specific entries, or exiting the application.

Key features

Key features of mcp-crontab-server include a rich terminal UI with beautiful tables and formatted output, the ability to view recent cron job execution logs, and a search functionality to find crontab entries containing specific terms.

Where to use

mcp-crontab-server can be used in various fields such as system administration, DevOps, and any environment where scheduled tasks are managed via crontab. It is particularly useful for monitoring and managing cron jobs in server environments.

Content

MCP Crontab Explorer

A terminal-based UI for exploring and monitoring crontab entries using the Model Context Protocol (MCP). This tool provides an intuitive interface for inspecting scheduled tasks, checking their status, and viewing recent logs without leaving the terminal environment. Built with a client-server architecture, it separates system access from presentation concerns, allowing for clean code organization and maintainable components.

Features

  • Rich Terminal UI: Beautiful tables and formatted output
  • Log Viewing: See recent cron job execution logs
  • Search Functionality: Find crontab entries containing specific terms

Architecture

The MCP Crontab Explorer consists of two main components:

  1. Server (mcp_crontab_server.py): A custom HTTP server that implements the Model Context Protocol. It registers tools using the FastMCP library and exposes them via HTTP endpoints.

  2. Client (mcp_crontab_client_http.py): A rich terminal UI that communicates with the server using HTTP requests and displays the results using the Rich library for formatting.

This architecture demonstrates:

  • Server-side MCP implementation with tool registration
  • HTTP-based communication between components
  • Clean separation of concerns between system access (server) and presentation (client)

Installation

Prerequisites

  • Python 3.7+
  • pip (Python package manager)

Install Dependencies

pip install rich requests fastmcp

python mcp_crontab_server.py

python mcp_crontab_client_http.py

Once the client is running, you’ll see a menu with the following options:

  1. List crontab entries: Shows all cron jobs
  2. Show recent logs: View the most recent cron job execution logs
  3. Search crontab entries: Find entries containing a specific term
  4. Exit: Close the explorer

Example Output

    ╭────────────────────────────────────╮
    │ MCP Crontab Explorer (HTTP Client) │
    ╰────────────────────────────────────╯
    A tool for monitoring crontab entries using the Model Control Protocol (MCP).

    Connecting to MCP server at http://127.0.0.1:8000
    Checking if server is running...
    Socket connection successful
    Trying HTTP request with curl...
    Curl HTTP status: 200
    Server is running!
    Checking if server is running...
    Socket connection successful
    Trying HTTP request with curl...
    Curl HTTP status: 200
    Server is running!
    Requesting tools list...
    Tools response status: 200
    Successfully parsed tools: 3 found
    Connected to server. Found 3 available tools.

                                    Available MCP Tools                                  
    ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
    ┃ Tool Name                   ┃ Description                                           ┃
    ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
    │ show_scheduled_task_summary │ Show most recent related cron log output              │
    │ search_crontab_entries      │ Search for crontab entries containing a specific term │
    │ check_server_status         │ Check the status of the MCP server                    │
    └─────────────────────────────┴───────────────────────────────────────────────────────┘

    Available Commands:
        1. Show recent logs
        2. Search crontab entries
        3. Check server status
        4. Exit
        Enter command number [1/2/3/4] (1): 3
        Checking server status...
        JSON Response:
        {
        "status": "online",
        "server_name": "MCP Crontab Explorer Server",
        "version": "1.0.0",
        "tools_available": 3,
        "pid": 516632,
        "timestamp": "2025-03-24T17:00:04.066705"
        }

        Available Commands:
        1. Show recent logs
        2. Search crontab entries
        3. Check server status
        4. Exit
        Enter command number [1/2/3/4] (1): 4
        Exiting MCP Crontab Explorer. Goodbye!

MCP Conformity

The Crontab Explorer implements the Model Context Protocol in the following ways:

  • Server-Side MCP: Uses the FastMCP library to register tools with the @mcp.tool() decorator
  • Tool Discovery: Implements the /tools endpoint that returns a list of available tools
  • Tool Execution: Supports calling tools via HTTP POST requests to /tools/{tool_name}
  • Standard Response Format: Returns tool results in a consistent JSON format

The client uses standard HTTP requests rather than an MCP-specific client library, making it compatible with any HTTP client while maintaining the core MCP patterns on the server side.

Requirements

  • fastmcp
  • rich
  • requests

Tools

No tools

Comments

Recommend MCP Servers

View All MCP Servers