A web application for managing MCP servers and generating configuration files.
- Repository management (add, view, delete)
- Automatic extraction of information from README files using GPT
- YAML and JSON configuration generation
- Modern UI with React and Tailwind CSS
- Command-line tools for repository management and config generation
- Vector-based search for repositories
The project is divided into two main parts:
- Backend: FastAPI server for API endpoints
- Frontend: React application with Tailwind CSS
- Python 3.8+
- Node.js 18+
- Git
- OpenAI API key
- Qdrant vector database (for repository storage and search)
- Navigate to the backend directory:
cd backend- Create a virtual environment:
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate- Install dependencies:
pip install -r requirements.txt- Run the FastAPI server:
python run.pyThe API will be available at http://localhost:8020.
- Navigate to the frontend directory:
cd frontend- Install dependencies:
npm install- Start the development server:
npm run devThe web application will be available at http://localhost:5173.
Once the backend is running, you can access the API documentation at:
- Swagger UI: http://localhost:8020/docs
- ReDoc: http://localhost:8020/redoc
The application includes two command-line tools:
This tool allows you to add Git repositories to the database:
python backend/add_server.py https://github.com/username/repo.gitOptional arguments:
--name: Custom name for the repository--description: Custom description for the repository--command: Custom command for running the repository--args: Custom arguments for the command
This tool provides functionality to manage the configuration:
python backend/cli.py generate-yamlAvailable commands:
generate-yaml: Generate a YAML configuration file-o, --output: Specify the output file path-p, --print: Print the YAML to stdout
list: List all repositories in the database
- The OpenAI API key is hardcoded in
backend/app/services/openai_service.py. In a production environment, this should be replaced with an environment variable. - Repository data is stored in Qdrant vector database. Make sure your Qdrant instance is properly configured and backed up regularly.
- Qdrant connection parameters can be configured in the Vector Settings section of the application.
MIT