deno-mcp-server

emmettirl/deno-mcp-server

3.1

If you are the rightful owner of deno-mcp-server 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.

The Deno MCP Server Monorepo is a comprehensive solution for building secure Model Context Protocol servers using Deno, with seamless integration into VS Code.

Tools
6
Resources
0
Prompts
0

🦕 Deno MCP Server Monorepo

A comprehensive monorepo containing a secure Model Context Protocol (MCP) server built with Deno and a VS Code extension for seamless integration.

Release

📦 Packages

PackageDescriptionVersionTests
Deno MCP Server with 6 toolsDeno🧪 Comprehensive
Private extension with auto-detectionNode🧪 70+ Tests

🚀 Quick Start

For Users

Download Latest Release:

# Get the latest release
curl -s https://api.github.com/repos/emmettirl/deno-mcp-server/releases/latest \
  | grep browser_download_url \
  | cut -d '"' -f 4 \
  | wget -qi -

# Install VS Code extension
code --install-extension deno-mcp-extension.vsix

Using Docker:

docker pull ghcr.io/emmettirl/deno-mcp-server/server:latest
docker run -it ghcr.io/emmettirl/deno-mcp-server/server:latest

For Developers

# Clone and setup
git clone https://github.com/emmettirl/deno-mcp-server.git
cd deno-mcp-server

# Build everything
deno run --allow-all scripts/build.ts all
# OR on Windows:
.\scripts\build.ps1 all

# Run tests
deno run --allow-all scripts/build.ts test

# Start development
cd packages/server && deno run --allow-all cli.ts

🏗️ Build System

Unified PowerShell build script with comprehensive commands:

**Usage:**
```bash
# Cross-platform (recommended)
deno run --allow-all scripts/build.ts <command> [options]

# Windows PowerShell
.\scripts\build.ps1 <command> [options]

Commands: fmt Format code in both packages
lint Run linting on both packages check Type check both packages test Run all tests (70+ tests total) build Build both packages package Package both for distribution all Run fmt, lint, check, test, build, package clean Clean build artifacts

Options: -ServerOnly Only operate on server package -ExtOnly Only operate on extension package
-ShowVerbose Show detailed output

## 🤖 Automated Releases

### Release Triggers

**Automatic (Tag-based):**

```bash
git tag v1.2.3
git push origin v1.2.3
# → Triggers full release pipeline

Manual (GitHub Actions):

  • Go to Actions → 🚀 Release → Run workflow
  • Configure what to release (server, extension, both)
  • Set version and options

Release Artifacts

Each release automatically creates:

  • 🏗️ Cross-platform Binaries

    • Windows: deno-mcp-server-windows-x64.exe
    • Linux: deno-mcp-server-linux-x64
    • macOS: deno-mcp-server-macos-x64
  • 🎯 VS Code Extension

    • deno-mcp-extension.vsix - Installable extension package
  • 🐳 Docker Images

    • ghcr.io/emmettirl/deno-mcp-server/server:latest
    • ghcr.io/emmettirl/deno-mcp-server/server:v1.2.3
  • 📝 Release Notes - Auto-generated with installation instructions

CI/CD Pipeline

graph LR
    A[Push/Tag] --> B[🧪 Test All]
    B --> C[🦕 Build Server]
    B --> D[🎯 Build Extension] 
    B --> E[🐳 Build Docker]
    C --> F[📦 Create Release]
    D --> F
    E --> F
    F --> G[📤 Upload Assets]

🔒 Security Features

  • Multi-layered Security: Permission-based access control
  • Input Validation: Comprehensive sanitization
  • Secure Operations: Safe file and process handling
  • Container Security: Minimal attack surface
  • Automated Scanning: Security checks in CI/CD
  • Signed Releases: Verified build artifacts

🧪 Testing

Comprehensive test coverage across both packages:

  • Server: Deno test suite with security, validation, and integration tests
  • Extension: 70+ VS Code integration tests with mocking
  • E2E: Cross-package integration testing
  • CI: Automated testing on every PR and release
# Run all tests
deno run --allow-all scripts/build.ts test

# Test individual packages  
.\scripts\build.ps1 test -ServerOnly
.\scripts\build.ps1 test -ExtOnly# Coverage reports
cd packages/server && deno test --coverage --allow-all
cd packages/vscode-extension && npm run test:coverage

📊 Development Stats

  • Languages: TypeScript (Deno + Node.js)
  • Test Coverage: 70+ tests across packages
  • Build Time: ~2 minutes for full pipeline
  • Binary Size: ~50MB cross-platform
  • Extension Size: ~1MB packaged

🏆 Features

Server Package

  • 🛠️ 6 MCP Tools: fmt, lint, check, test, run, info
  • 🔒 Secure by Default: Multi-layered permissions
  • 🐳 Docker Ready: Production containers
  • 📦 Cross-platform: Windows, Linux, macOS
  • Fast: Native Deno performance

VS Code Extension

  • 🎯 Auto-detection: Finds packaged servers
  • 📊 Status Integration: Real-time server status
  • 🧪 70+ Tests: Comprehensive coverage
  • 🔌 Private Extension: No marketplace dependency
  • 🚀 Zero Config: Works out of the box

📖 Documentation

Comprehensive documentation is organized in the directory:

📚 For Users

  • - Using MCP tools on entire projects
  • - Code samples and tutorials

🔧 For Developers

  • - Complete API reference
  • - Security implementation details
  • - Development setup and build process
  • - GitHub Copilot remote work setup

🐛 Fixes & Troubleshooting

  • - Resolving workspace root issues
  • - Cross-platform consistency fixes

🔄 Development Workflows

  • - Recent improvements summary
  • - Extension identifier changes

📦 Package-Specific Documentation

  • - MCP server implementation details
  • - Extension development guide

🤝 Contributing

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Make changes and run tests (deno run --allow-all scripts/build.ts test)
  4. Commit changes (git commit -m 'feat: add amazing feature')
  5. Push to branch (git push origin feature/amazing-feature)
  6. Open a Pull Request

📄 License

This project is licensed under the MIT License - see the file for details.


🚀 Built with Deno • 🎯 Integrated with VS Code

⚡ Disclaimer: Vibe-coded with Claude Sonnet 4 and GitHub Copilot Agent✨