mcp_chat

iAbdelRahim/mcp_chat

3.2

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

This project is a Python application that uses the FastMCP library to create an MCP server and interacts with the OpenAI API.

Tools
15
Resources
0
Prompts
0

try_fastmcp

This project is a Python application that uses the FastMCP library to create an MCP server. It also uses the openai library to interact with the OpenAI API.

Prerequisites

  • Python 3.6 or higher
  • An OpenAI API key

Installation

  1. Clone the repository:

    git clone <repository_url>
    cd try_fastmcp
    
  2. Create a virtual environment:

    python -m venv env
    
  3. Activate the virtual environment:

    env\Scripts\activate
    
  4. Install the dependencies:

    pip install -r requirements.txt
    
  5. Set the OpenAI API key:

    rename .env.example file to .env and fill your OPENAI_API_KEY

Usage

To run the MCP server, execute the following command:

python server.py

To run the MCP client, execute the following command:

streamlit run client.py

Description

This MCP server provides the following tools:

  • get_all_datasets: Retrieves all public datasets from the data.gouv.ci catalog.
  • websearch_newssearch: Fetches news articles based on a user's query.
  • add: Adds two numbers.
  • subtract: Subtracts two numbers.
  • multiply: Multiplies two numbers.
  • divide: Divides two numbers.
  • power: Calculates the power of two numbers.
  • sqrt: Calculates the square root of a number.
  • cbrt: Calculates the cube root of a number.
  • factorial: Calculates the factorial of a number.
  • log: Calculates the logarithm of a number.
  • remainder: Calculates the remainder of two numbers division.
  • sin: Calculates the sine of a number.
  • cos: Calculates the cosine of a number.
  • tan: Calculates the tangent of a number.

It also provides the following resource:

  • greeting://{name}: Get a personalized greeting.

Contributors

  • Deepseek

TODOs

  • Add a "memory trimming" mechanism to limit the history length
  • Implement conversation summarization for long exchanges
  • Add an option to reset the conversation
  • Save history in persistent storage (database, file)
  • Format responses in Markdown