Model-Context-Protocol

Vijayk-213/Model-Context-Protocol

3.2

If you are the rightful owner of Model-Context-Protocol 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 implements an MCP Server for file system interaction via HTTP requests, supporting file operations and integration with Google Gemini API.

๐Ÿš€ MCP File System API

๐Ÿ“Œ Overview

This project implements an MCP (Model Context Protocol) Server that allows interaction with a file system via HTTP requests. It supports file creation, reading, copying, moving, and deletion using FastAPI. Additionally, it integrates with Google Gemini API to process and summarize file contents.


๐Ÿ“‚ Features

โœ… Read various file formats (.txt, .csv, .json, .xml, .docx)
โœ… Stream large files efficiently
โœ… Integrate with Google Gemini API for text summarization
โœ… Cloud Run deployment support


๐Ÿ› ๏ธ Tech Stack

  • Python 3.9+
  • FastAPI
  • MCP (Model Context Protocol)
  • Google Gemini API
  • Uvicorn (ASGI Server)
  • httpx (Async HTTP requests)
  • aiofiles (Async File Handling)
  • Docker & Cloud Run

๐Ÿš€ Getting Started

1๏ธโƒฃ Clone the Repository

$ git clone https://github.com/Vijayk-213/Model-Context-Protocol.git
$ cd Model-Context-Protocol

2๏ธโƒฃ Set Up a Virtual Environment

$ python3 -m venv venv
$ source venv/bin/activate  # On Windows use `venv\Scripts\activate`

3๏ธโƒฃ Install Dependencies

$ pip install -r requirements.txt

4๏ธโƒฃ Set Environment Variables

Create a .env file and add your Google Gemini API Key:

MCP_SERVER_URL=http://127.0.0.1:8000
GEMINI_API_KEY=your_gemini_api_key

๐Ÿ”„ Running the Application

Start the MCP Server

$ uvicorn mcp_server:app --host 127.0.0.1 --port 8000 --reload

Run the Main Application

$ python main.py

๐Ÿ“Œ API Endpoints

MethodEndpointDescription
GET/read-text-from-file?file_path=path.txtRead file contents
POST/invokeCall MCP function

๐Ÿ› ๏ธ Future Enhancements

โœ… Implement WebSockets for real-time file updates
โœ… Add support for cloud storage (Google Cloud Storage, AWS S3)
โœ… Improve error handling & logging


๐Ÿ“Œ Contributing

Feel free to open issues or pull requests to improve the project!


๐Ÿš€ Happy Coding! ๐ŸŽฏ