Back to Home
WilliamPinto-Olmos icon

project-mcp-server

Verified Safe

by WilliamPinto-Olmos

Overview

Provides a Model Context Protocol server to allow LLM agents to explore and interact with a project's APIs (via OpenAPI) and databases (currently MySQL).

Installation

Run Command
npx -y @williamp29/project-mcp-server

Environment Variables

  • PROJECT_MCP_OPENAPI_SPEC
  • PROJECT_MCP_API_BASE_URL
  • PROJECT_MCP_AUTH_TYPE
  • PROJECT_MCP_AUTH_IDENTIFIER
  • PROJECT_MCP_AUTH_HEADER_KEY
  • PROJECT_MCP_API_BEARER_TOKEN
  • PROJECT_MCP_DB_HOST
  • PROJECT_MCP_DB_PORT
  • PROJECT_MCP_DB_USER
  • PROJECT_MCP_DB_PASSWORD
  • PROJECT_MCP_DB_DATABASE
  • PROJECT_MCP_DB_POOL_SIZE
  • PROJECT_MCP_DB_ENABLE_QUERY
  • PROJECT_MCP_DB_ENABLE_UPDATE
  • PROJECT_MCP_DB_ENABLE_DELETE
  • PROJECT_MCP_DB_ENABLE_STATEMENT

Security Notes

The server dynamically generates tools for API and database interaction. For APIs, it uses axios with an authentication context, which is standard. For databases, it employs a `SqlValidator` to restrict query types (e.g., read-only, update-only, delete-only) and block dangerous SQL keywords before execution. This is a good layer of defense. Crucially, the most dangerous database tool, `db_run_statement` (allowing arbitrary SQL), is explicitly disabled by default and requires an opt-in via environment variable or programmatic configuration, with clear warnings. However, relying on keyword blocking for SQL validation, while implemented with care (stripping comments/strings and tokenizing), is not 100% foolproof against highly sophisticated or novel SQL injection techniques by a sufficiently capable or adversarial LLM. Users must be cautious with the `enableRunDeleteStatement` and especially `enableRunStatement` permissions.

Similar Servers

Stats

Interest Score0
Security Score7
Cost ClassMedium
Avg Tokens1500
Stars0
Forks0
Last Update2026-01-19

Tags

MCPLLM AgentsAPIOpenAPIDatabaseNode.jsMySQL