Back to Home
VeriTeknik icon

pluggedin-app

Verified Safe

by VeriTeknik

Overview

A testing environment for MCP (Model Context Protocol) servers, enabling interaction via a chat interface powered by Large Language Models (LLMs) and LangChain ReAct framework.

Installation

Run Command
docker-compose -f docker-compose.production.yml up -d

Environment Variables

  • DATABASE_URL
  • NEXTAUTH_SECRET
  • NEXTAUTH_URL
  • NEXT_SERVER_ACTIONS_ENCRYPTION_KEY
  • EMAIL_SERVER_HOST
  • EMAIL_SERVER_PORT
  • EMAIL_SERVER_USER
  • EMAIL_SERVER_PASSWORD
  • EMAIL_FROM
  • ANTHROPIC_API_KEY
  • OPENAI_API_KEY
  • GOOGLE_API_KEY
  • REGISTRY_API_URL
  • GITHUB_CLIENT_ID
  • GITHUB_CLIENT_SECRET
  • PLUGGEDIN_API_KEY
  • REDIS_URL
  • MCP_ISOLATION_TYPE
  • MCP_ISOLATION_FALLBACK
  • MCP_ENABLE_NETWORK_ISOLATION
  • MCP_PACKAGE_STORE_DIR
  • MCP_PNPM_STORE_DIR
  • MCP_UV_CACHE_DIR
  • UPLOADS_DIR
  • RAG_API_URL
  • ENABLE_RAG
  • CRON_SECRET
  • ADMIN_MIGRATION_SECRET

Security Notes

The project demonstrates robust security practices for a complex application that interacts with and executes untrusted external code (MCP servers). Key strengths include: extensive path validation and sanitization (`lib/secure-path-builder.ts`, `lib/path-validation.ts`, `lib/validation-utils.ts`) to prevent path traversal; comprehensive Content Security Policy (CSP) implementation (`lib/csp-nonce.ts`, `middleware.ts`) and HTML sanitization (`lib/sanitization.ts`) to prevent XSS; strict URL validation (`lib/url-validator.ts`, `lib/security/validators.ts`) to mitigate Server-Side Request Forgery (SSRF) and Open Redirect vulnerabilities; strong password management with `bcrypt` (cost factor 14) and brute-force protection (`lib/auth-security.ts`); and secure handling of sensitive credentials via AES-256-GCM encryption with `scrypt` key derivation (`lib/encryption.ts`, `lib/encryption-v2.ts`). Crucially, the application utilizes `firejail` and `bubblewrap` for sandboxing STDIO-based MCP servers on Linux (`lib/mcp/client-wrapper.ts`), isolating processes, network, and filesystem access to prevent malicious server code from affecting the host system. OAuth flows are secured with PKCE, state management, and integrity hashing (`lib/mcp/oauth/*`). Robust rate limiting is applied across API endpoints and server actions. Drizzle ORM provides SQL injection protection. Structured logging and Prometheus metrics are in place for observability of security events. Minor considerations include the reliance on correct host-system setup for `firejail`/`bubblewrap` and the parsing of external JSON (e.g., from LLM outputs, GitHub APIs) within a sandboxed context, though standard JSON parsers are generally robust. Overall, the project shows a high level of security awareness and implementation.

Similar Servers

Stats

Interest Score50
Security Score9
Cost ClassMedium
Avg Tokens1000
Stars84
Forks15
Last Update2025-12-06

Tags

MCPLLMAgentTestingLangChain