Back to Home
VeriTeknik icon

pluggedin-app

Verified Safe

by VeriTeknik

Overview

A testing environment for MCP (Model Control Protocol) servers, allowing interaction through a chat interface powered by LLMs and an AI agent using the LangChain ReAct framework.

Installation

Run Command
docker run -p 3000:3000 veriteknik/pluggedin:latest

Environment Variables

  • DATABASE_URL
  • REDIS_URL
  • NEXTAUTH_URL
  • NEXTAUTH_SECRET
  • PLUGGEDIN_API_KEY
  • MCP_ISOLATION_TYPE
  • MCP_ISOLATION_FALLBACK
  • MCP_ENABLE_NETWORK_ISOLATION
  • MCP_PACKAGE_STORE_DIR
  • MCP_PNPM_STORE_DIR
  • MCP_UV_CACHE_DIR
  • REGISTRY_API_URL
  • ANTHROPIC_API_KEY
  • OPENAI_API_KEY
  • GOOGLE_API_KEY
  • EMAIL_SERVER_HOST
  • EMAIL_SERVER_PORT
  • EMAIL_SERVER_USER
  • EMAIL_SERVER_PASSWORD
  • EMAIL_FROM
  • EMAIL_FROM_NAME
  • EMAIL_REPLY_TO
  • UPLOADS_DIR
  • NEXT_SERVER_ACTIONS_ENCRYPTION_KEY
  • RAG_API_URL
  • UNSUBSCRIBE_TOKEN_SECRET
  • ADMIN_NOTIFICATION_EMAILS
  • GITHUB_CLIENT_ID
  • GITHUB_CLIENT_SECRET
  • GOOGLE_CLIENT_ID
  • GOOGLE_CLIENT_SECRET
  • TWITTER_CLIENT_ID
  • TWITTER_CLIENT_SECRET
  • GITHUB_TOKEN
  • ALLOWED_REDIRECT_HOSTS
  • METRICS_ALLOWED_IPS
  • CRON_SECRET

Security Notes

The application exhibits a robust security posture, incorporating numerous defense-in-depth measures. Key strengths include: comprehensive input validation and sanitization (URLs, paths, external IDs, HTML content) to prevent XSS, path traversal, and SSRF attacks; strong authentication security with bcrypt (cost factor 14), brute-force protection (account lockout), and detailed audit logging; secure session management with JWTs, periodic revalidation, and session invalidation on password changes; robust data encryption (AES-256-GCM with scrypt and random salts) for sensitive data at rest; global CSRF protection and HTTP security headers (CSP with nonce, X-Frame-Options, X-Content-Type-Options, etc.); and critical sandboxing capabilities for executing external MCP server code via Bubblewrap/Firejail for process, filesystem, and network isolation. While in-memory rate limiting is noted as a 'CRITICAL TODO' for multi-instance deployments in one file, other files show the use of `ioredis` for distributed rate limiting, mitigating this, though fallback to in-memory still presents a risk if Redis fails. `process.setMaxListeners` is used, which is a practical mitigation but could be a resource exhaustion vector if many STDIO servers are connected concurrently without proper scaling.

Similar Servers

Stats

Interest Score50
Security Score9
Cost ClassHigh
Avg Tokens2000
Stars90
Forks16
Last Update2026-01-17

Tags

LLMMCPTestingChatAI AgentLangChainReActDeveloper Tools