Stop Searching. Start Trusting.

The curated directory of MCP servers, vetted for security, efficiency, and quality.

Tired of the MCP "Marketplace" Chaos?

We built MCPScout.ai to solve the ecosystems biggest pain points.

No Insecure Dumps

We manually analyze every server for basic security flaws.

Easy Setup

Our gotcha notes warn you about complex setups.

Avoid "Token Hogs"

We estimate token costs for cost-effective agents.

Products, Not Demos

We filter out "Hello World" demos.

CATEGORIES:
SORT:

Vetted Servers(9120)

0
0
Medium Cost

Facilitate client-server communication using the Model Context Protocol (MCP) with integrated AI capabilities for querying and managing user data.

Setup Requirements

  • ⚠️Requires a Google Gemini API Key, which may incur costs based on usage.
  • ⚠️Requires Node.js (version >=18) and a TypeScript build environment.
  • ⚠️The client is designed to spawn a *built* version of the server (`build/server.js`), so `npm run server:build` is a prerequisite for the client to function as written.
Verified SafeView Analysis
The server-side code does not contain direct network listeners (like an HTTP server) but communicates via standard I/O when spawned by the client. It uses `process.env.GEMINI_API_KEY` for accessing the Google Gemini API, which is a good practice for API key management. Direct file system writes to `users.json` occur, which in a multi-user or high-concurrency scenario could pose data integrity risks, but for this single-instance demo, it is acceptable. No 'eval' or obvious obfuscation is present. The primary external data exposure is through the Google Gemini API calls, which is an expected part of the AI functionality.
Updated: 2026-01-19GitHub→
0
0
Medium Cost
Sec8

A Model Context Protocol (MCP) server that provides an API for creating, managing, and delivering scheduled weather and air quality reminders, broadcasting them via Server-Sent Events (SSE).

Setup Requirements

  • ⚠️Requires a free/paid OpenWeatherMap API key (`OPENWEATHER_API_KEY`) to fetch weather and air quality data; without it, these features will not work.
  • ⚠️Data persistence relies on a local `reminders.json` file in the `data` directory, meaning reminders will be lost if the server is run in an ephemeral environment without persistent storage.
  • ⚠️Requires Node.js (version 12.20.0 or higher, as per node-fetch requirements in lockfile) to be installed.
Verified SafeView Analysis
The server uses `cors({ origin: '*' })` which allows requests from any origin. While convenient for broad API access, it might be a security risk in specific production scenarios where stricter origin control is needed. However, it's generally acceptable for an MCP server designed for agent interaction. The server loads `OPENWEATHER_API_KEY` from environment variables, which is good practice. Crucially, user-provided cron expressions are validated using `cron.validate()` before scheduling, mitigating a potential arbitrary code execution vulnerability. Data is persisted locally to `reminders.json` with JSON serialization, which is safe from injection.
Updated: 2025-11-20GitHub→
0
0
Low Cost
Sec9

A comprehensive template for developing Model Context Protocol (MCP) servers, enabling AI assistants to securely access external data sources and tools through a standardized protocol.

Setup Requirements

  • ⚠️Requires Node.js v18.0.0 or higher and npm v8.0.0 or higher.
  • ⚠️The `AUTH_SECRET` environment variable must be updated from its default for production security.
  • ⚠️Full production deployment with Docker Compose includes Redis and PostgreSQL as external dependencies, requiring their setup.
Verified SafeView Analysis
The project demonstrates strong security practices for a server template, utilizing 'helmet' for security headers, 'cors' for origin control, and 'express-rate-limit' for abuse prevention. Configuration validation with Zod helps prevent misconfigurations. A default 'AUTH_SECRET' is provided, but it's explicitly marked with a warning to 'change-this-secret-in-production', indicating good awareness. No 'eval' or obvious malicious patterns were found.
Updated: 2025-11-24GitHub→
0
0
Low Cost
ahmad5599 icon

mysql-mcp-server

by ahmad5599

Sec3

Enables AI assistants to interact with SQL databases (MySQL, MariaDB, PostgreSQL, SQLite) through natural language queries, integrating with the Model Context Protocol (MCP) and providing a VS Code extension for setup.

Setup Requirements

  • ⚠️Requires Node.js version 20.19.0 or higher.
  • ⚠️An external SQL database (MySQL, PostgreSQL) must be running and accessible, or SQLite for local use (a test.db is bundled).
  • ⚠️Users must provide a correctly formatted database connection string via environment variable or CLI argument.
Review RequiredView Analysis
The `query` tool, intended for AI-driven SQL SELECT statements, directly executes the user-provided query string via `knex().raw()` without proper parameterization for values within the query. This makes the server vulnerable to SQL injection attacks, contradicting the 'Prepared statements' security claim in the documentation. While `read-only` mode is a good default, it does not prevent malicious read operations through injection. Other operations like `insert` and `describeTable` use parameterized queries or identifier sanitization correctly.
Updated: 2025-11-23GitHub→
0
0
Medium Cost

This server provides a Model Context Protocol (MCP) interface to query a PostgreSQL database containing aligner activity data, primarily for AI agents.

Setup Requirements

  • ⚠️Requires a PostgreSQL database instance.
  • ⚠️The import scripts (`import_csv_to_postgres.py`, `import_csv_optimized.py`) have a hardcoded CSV file path that needs to be manually modified or provided.
  • ⚠️Setup and import scripts contain hardcoded Railway PostgreSQL credentials, which should be removed or made configurable for production use.
Review RequiredView Analysis
CRITICAL SQL INJECTION VULNERABILITY: The `query_sql` tool directly executes SQL SELECT queries provided by the agent. Although it restricts queries to start with 'SELECT' or 'WITH', it does not use parameterized queries. This leaves it vulnerable to SQL injection if an agent (or a malicious user prompting the agent) provides specially crafted input (e.g., `SELECT * FROM activities WHERE patient_id = 123 OR 1=1;`), allowing unauthorized data access or manipulation. CRITICAL HARDCODED CREDENTIALS: Several auxiliary scripts (`import_csv_to_postgres.py`, `import_csv_optimized.py`, `create_schema.py`, `setup_railway.sh`) within the repository contain hardcoded PostgreSQL credentials (password `UqtALrZoRLKifgxpMKUhVcfBYGOIdRDK`). While the main server uses environment variables, these scripts pose a significant security risk by exposing sensitive database access information.
Updated: 2025-12-06GitHub→
0
0
Medium Cost
sandraschi icon

home-assistant-mcp

by sandraschi

Sec9

Provides AI-powered natural language control for Home Assistant smart home systems via the Model Context Protocol, enabling AI assistants to orchestrate complex home automations.

Setup Requirements

  • ⚠️Requires a running Home Assistant instance for full functionality.
  • ⚠️Requires a Home Assistant Long-Lived Access Token, which must be generated by the user and provided via configuration or environment variables.
  • ⚠️Requires Python 3.10 or higher for the server to run.
Verified SafeView Analysis
The server's design emphasizes local-only operation and uses Pydantic's SecretStr for handling the Home Assistant access token, preventing hardcoded secrets and promoting secure handling. It relies on the user to provide a long-lived access token for Home Assistant API communication, which is standard for integrations. No 'eval' or obvious malicious patterns were found in the provided source code. The main security consideration is the security of the provided Home Assistant token and the underlying Home Assistant instance itself.
Updated: 2026-01-16GitHub→
0
0
Medium Cost
shadcnspace icon

shadcnspace-mcp

by shadcnspace

Sec8

This MCP server enables AI agents to interact with Shadcn Space's UI block registry for listing, searching, and installing components to build web interfaces.

Setup Requirements

  • ⚠️Requires Node.js runtime (version 18 or higher).
  • ⚠️Requires internet access to fetch UI block data from tailwind-admin.com.
Verified SafeView Analysis
The server utilizes Zod for input validation, mitigating common injection risks. Network requests are made to a hardcoded external domain (tailwind-admin.com), reducing the risk of arbitrary SSRF. The `getBlockInstall` tool, while its description in the README implies returning implementation details, actually outputs an `npx` installation command, not executing arbitrary code itself. The only potential minor concern is how component names (user-provided) are directly used in URL paths for fetching details (e.g., `https://tailwind-admin.com/r/${name}.json`). While Zod ensures it's a string, if `name` could contain malicious path traversal characters that bypass external LLM sanitization and are not blocked by the `fetch` implementation, it could lead to unexpected resource access on the `tailwind-admin.com` domain. However, this is a low risk given typical component naming conventions.
Updated: 2026-01-19GitHub→
0
0
Low Cost
Sec9

Provides semantic search capabilities from Claude Desktop by acting as a Model Context Protocol (MCP) bridge to a Cloudflare Workers backend with Vectorize.

Setup Requirements

  • ⚠️Requires Node.js 18+ to be installed locally.
  • ⚠️Requires Claude Desktop to be installed and manually configured with the server's absolute path to `dist/index.js`.
  • ⚠️An external `vectorize-mcp-worker` (Cloudflare Worker) must be deployed and accessible via the configured `WORKER_URL`.
  • ⚠️The Vectorize index on the backend Worker needs to be populated with data for semantic search to return results.
Verified SafeView Analysis
The server primarily acts as a local proxy, forwarding requests to a remote Cloudflare Worker. It does not handle sensitive user data directly beyond search queries. Input 'topK' is sanitized with Math.min, limiting potential abuse. No 'eval' or direct arbitrary code execution vectors are apparent in the provided source. The 'WORKER_URL' is hardcoded but is a backend endpoint, not a secret, and is explicitly stated in the README to be user-configurable by editing the source file.
Updated: 2025-12-05GitHub→
0
0
Low Cost

Integrate Morocco tourism data with AI assistants like Claude Desktop via the Model Context Protocol (MCP).

Setup Requirements

  • ⚠️Requires Cloudflare account and Wrangler CLI for deployment and local development
  • ⚠️Requires Node.js 18+ to run
  • ⚠️Firebase credentials and other database configurations are required for full data functionality, as indicated in the contributing and deployment guides, though not actively used in the provided main server logic.
Verified SafeView Analysis
The current `tools/call` implementation is a placeholder, returning static text, which significantly reduces immediate security risks related to data access or injection. Future integration with `firebase-admin` (as indicated in `package.json` and `CONTRIBUTING.md`) and external data sources will require careful implementation of input validation, authentication, and authorization to prevent data exposure or injection vulnerabilities. CORS `Access-Control-Allow-Origin: *` is broadly configured, which is common for public AI integration servers, but the deployment guide demonstrates how to restrict it to specific domains in production. No hardcoded secrets are present in the provided `src/index.ts` file; sensitive data is expected to be managed via environment variables or Cloudflare Workers secrets.
Updated: 2025-12-11GitHub→
0
0
Medium Cost

DoffinMCP

by reidar80

Sec8

An MCP server for searching Norway's official public procurement database (Doffin) for RFP publications and related documents.

Setup Requirements

  • ⚠️Requires a Doffin API Key, which must be obtained through an external registration process on the Doffin API Management Portal.
  • ⚠️Node.js 18 or higher is required.
Verified SafeView Analysis
The server makes external API calls to Doffin and allows downloading of documents, which could potentially contain malicious content if the source itself were compromised (though Doffin is an official government database). The 'download_all_documents' tool, especially when 'includeContent' is true, could lead to very large data transfers and token consumption. The project relies on npm packages, carrying the inherent risks of third-party dependencies.
Updated: 2025-11-17GitHub→
0
0
Medium Cost
rakgogia icon

mcp-server

by rakgogia

Sec7

Integrates an MCP server with Google Gemini for AI-powered chat, allowing the AI to execute predefined tools and access resources.

Setup Requirements

  • ⚠️Requires `google-generativeai`, `mcp`, and `fastmcp` Python packages to be installed.
  • ⚠️Requires a Google Gemini API Key, which must be provided via the `GEMINI_API_KEY` environment variable (e.g., in a `.env` file).
  • ⚠️Requires internet access to communicate with the Google Gemini API.
Verified SafeView Analysis
The system grants Google Gemini the ability to call server-side tools based on user input, which presents a potential risk if powerful or poorly secured tools were added to the MCP server. For instance, if a tool allowed arbitrary file system access or network requests, a malicious prompt could exploit it. However, the current tools (`calculate_bmi`, `get_support_email`) are benign and do not pose direct security threats. The `GEMINI_API_KEY` is correctly loaded from environment variables.
Updated: 2026-01-19GitHub→
0
0
High Cost
silicon-works icon

mcp-tools

by silicon-works

Sec7

Provides a collection of MCP servers wrapping various cybersecurity tools for automated penetration testing, vulnerability scanning, and exploitation tasks.

Setup Requirements

  • ⚠️Requires various underlying command-line tools (e.g., nmap, ffuf, hydra, gcc) to be installed in the environment (typically managed by a Docker image).
  • ⚠️The OWASP ZAP daemon must be running and accessible for the `zap` server to function.
  • ⚠️Relies on standard wordlist paths (e.g., /usr/share/wordlists), which may need to be mounted or present in the container image.
Verified SafeView Analysis
The server includes multiple tools designed for offensive security actions (e.g., exploit execution, payload generation, brute-forcing, scanning). While internal operations generally use argument lists for subprocess calls to mitigate shell injection within the server itself, the core functionality involves executing arbitrary user-provided code, commands, or crafting malicious inputs against target systems. For example, `exploit-runner` executes user scripts/commands, and `payload` compiles user-provided C code. The `searchsploit.get_exploit` method might allow reading arbitrary files within the container if a malicious `exploit_id` path is provided, though its impact is contained by the Docker environment. Users should understand these inherent risks for offensive security tools.
Updated: 2026-01-19GitHub→
PreviousPage 550 of 760Next