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.
Надежное серверное приложение, реализующее протокол контекста модели (MCP) для файловых операций, обеспечивающее аутентификацию и модульные REST API для управления файлами, пользователями и сообщениями.
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 -4TypeScriptMIT 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 -1215TypeScriptMIT 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 -69JavaScriptMIT 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 -2145PythonMIT License