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
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
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-qualityA Model Context Protocol server that provides file system operations, analysis, and manipulation capabilities through a standardized tool interface.Last updated 7 months ago4TypeScriptMIT License
- AsecurityAlicenseAqualityA Model Context Protocol server that enables enhanced file system operations including reading, writing, copying, moving files with streaming capabilities, directory management, file watching, and change tracking.Last updated 15 days ago1215TypeScriptMIT 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 4 months ago149JavaScriptMIT License
- AsecurityAlicenseAqualityA Model Context Protocol server that provides secure and intelligent interaction with files and filesystems, offering smart context management and token-efficient operations for working with large files and complex directory structures.Last updated 5 months ago2142PythonMIT License