MCP-Server

thedcfix/MCP-Server

3.2

If you are the rightful owner of MCP-Server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to dayong@mcphub.com.

This is a simple MCP server implementation with a Flask-based web GUI.

Tools
5
Resources
0
Prompts
0

MCP-Server

Simple MCP (Model Context Protocol) server with a Flask-based web GUI

Overview

This is a simple MCP server implementation that exposes various tools through a web-based GUI. The server includes several example tools that demonstrate different functionalities:

  • calculate: Perform basic mathematical operations (add, subtract, multiply, divide)
  • text_analyzer: Analyze text and provide statistics (word count, character count, etc.)
  • timestamp: Get current timestamp in various formats
  • string_transform: Transform strings (uppercase, lowercase, reverse, title case)
  • fibonacci: Generate Fibonacci sequence

Installation

  1. Clone this repository:
git clone https://github.com/thedcfix/MCP-Server.git
cd MCP-Server
  1. Install dependencies:
pip install -r requirements.txt

Usage

  1. Start the Flask server:
python app.py
  1. Open your web browser and navigate to:
http://localhost:5000
  1. The GUI will display:
    • Server information and statistics
    • List of all available tools with their descriptions and parameters
    • A test section where you can execute tools with custom parameters

API Endpoints

The server exposes the following REST API endpoints:

  • GET / - Web GUI interface
  • GET /api/tools - List all available tools
  • GET /api/server-info - Get server information
  • POST /api/execute - Execute a tool with parameters

Example API Usage

# List all tools
curl http://localhost:5000/api/tools

# Execute the calculate tool
curl -X POST http://localhost:5000/api/execute \
  -H "Content-Type: application/json" \
  -d '{"tool_name": "calculate", "parameters": {"operation": "add", "a": 10, "b": 5}}'

# Analyze text
curl -X POST http://localhost:5000/api/execute \
  -H "Content-Type: application/json" \
  -d '{"tool_name": "text_analyzer", "parameters": {"text": "Hello world!"}}'

Project Structure

MCP-Server/
├── app.py              # Flask web application
├── mcp_server.py       # MCP server implementation with tools
├── templates/
│   └── index.html      # Web GUI template
├── requirements.txt    # Python dependencies
└── README.md          # This file

Adding New Tools

To add a new tool to the MCP server:

  1. Open mcp_server.py
  2. Add a new method to handle the tool (e.g., _my_tool)
  3. Register the tool in the _register_tools() method with its metadata
  4. The tool will automatically appear in the web GUI

License

MIT License