Supports .env files for environment variable configuration and secrets management.
Integrates ESLint for code style enforcement and quality control through the lint command.
Includes Git integration for version control with remote repository setup, supporting branch creation, commits, and pull requests.
Provides GitHub repository integration for hosting the server code, with support for pull requests and issue tracking.
Built on the NestJS framework to implement the Model Context Protocol server with modular architecture and REST APIs.
Built for Node.js runtime environment (v18+ recommended) for server-side JavaScript execution.
Uses npm for package management, dependency installation, and script execution.
Incorporates Swagger UI for automatic API documentation, available at the /api endpoint when the server is running.
Implemented with TypeScript for static typing and code organization, with compilation into JavaScript for deployment.
MCP Server (NestJS)
A robust, scalable, and extensible server-side application built with NestJS. This project provides a Model Context Protocol (MCP) server implementation, file management, authentication, and modular REST APIs for posts and users.
Table of Contents
- Features
- Architecture
- Getting Started
- Development
- Testing
- Deployment
- API Reference
- Project Structure
- Contributing
- License
Features
- MCP Server: Implements Model Context Protocol for file operations and more.
- File Management: Upload, download, list, and delete files via REST endpoints.
- Authentication: JWT-based authentication with local strategy.
- User & Post Modules: Modular structure for users and posts with DTOs and entities.
- Swagger Integration: API documentation out-of-the-box.
- Extensible: Easily add new modules and features.
Architecture
- NestJS: Progressive Node.js framework for building efficient, reliable, and scalable server-side applications.
- MCP Integration: Uses a custom FileBrowserMCP for file operations.
- Modular Design: Each feature is encapsulated in its own module.
Getting Started
Prerequisites
Installation
Environment Variables
Create a .env
file in the root directory for any secrets or configuration overrides (optional).
Development
Running the Server
Useful Commands
Testing
Run Unit Tests
Run End-to-End (e2e) Tests
Test Coverage
Deployment
- Build the project:
- Start the server:
- For advanced deployment (Docker, cloud, etc.), see NestJS Deployment Docs.
API Reference
- Swagger UI is available (if enabled) at
/api
when the server is running. - Main endpoints:
POST /auth/login
— Authenticate and receive JWTPOST /files/upload
— Upload a fileGET /files/:id
— Download a fileDELETE /files/:id
— Delete a fileGET /files
— List filesPOST /users
— Create a userPOST /posts
— Create a post
See controller files in src/
for more details.
Project Structure
Contributing
- Fork the repository
- Create your feature branch (
git checkout -b feature/YourFeature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin feature/YourFeature
) - Open a pull request
Coding Standards
- Follow the existing code style (see ESLint config)
- Write unit and e2e tests for new features
- Document your code and update the README as needed
Git Setup
This project uses Git for version control. The remote origin is set to:
License
Nest is MIT licensed.
Resources & Support
For any questions, issues, or feature requests, please open an issue or contact the maintainer.
This server cannot be installed
A robust server-side application that implements Model Context Protocol (MCP) for file operations, providing authentication and modular REST APIs for managing files, users, and posts.
Related MCP Servers
- -securityAlicense-qualityMCP Server simplifies the implementation of the Model Context Protocol by providing a user-friendly API to create custom tools and manage server workflows efficiently.Last updated -43TypeScriptMIT License
- -securityAlicense-qualityMCP Server provides a simpler API to interact with the Model Context Protocol by allowing users to define custom tools and services to streamline workflows and processes.Last updated -132TypeScriptMIT License
- -securityAlicense-qualityA Model Context Protocol (MCP) server that allows AI models to safely access and interact with local file systems, enabling reading file contents, listing directories, and retrieving file metadata.Last updated -471JavaScriptMIT License
- AsecurityFlicenseAqualityA Model Context Protocol (MCP) server that interacts with system APIs, allowing users to check connections, search employees, register breakfast, and update chemical information by shifts.Last updated -2176JavaScript