generic_mcp_server
by buildsomething01
Overview
A generic Model Context Protocol (MCP) server that dynamically discovers and routes tool calls to external services based on metadata stored in Google Cloud Firestore.
Installation
docker run -p 8080:8080 -v /path/to/gcloud/credentials.json:/app/credentials.json -e GOOGLE_APPLICATION_CREDENTIALS=/app/credentials.json mcp-serverEnvironment Variables
- GOOGLE_APPLICATION_CREDENTIALS
Security Notes
The server dynamically routes client-provided arguments to external `run_url`s defined in Firestore. This poses a significant Server-Side Request Forgery (SSRF) risk if untrusted parties can modify the Firestore tool registry or if `run_url`s are not strictly whitelisted and validated internally by the server. Without robust input validation and whitelisting of `run_url`s, this architecture could allow an attacker to probe internal networks or exfiltrate data by registering malicious tool endpoints. Session management is in-memory, leading to non-persistent sessions and potential integrity issues on server restarts. No explicit authentication/authorization for the MCP endpoint itself is provided, making it an open gateway to registered tools.
Similar Servers
tmcp
Build Model Context Protocol (MCP) servers for AI agents, providing schema-agnostic tools, resources, and prompts, with optional OAuth 2.1 authentication and distributed session management.
template-mcp-server
Provides a CLI tool and template to quickly get started building a Model Context Protocol (MCP) server using FastMCP, supporting both stdio and HTTP transports.
mcp-typescript-template
This server acts as a template for building remote Model Context Protocol (MCP) servers using TypeScript, handling MCP tool registration and session management over HTTP.
fastify-mcp-server
Provides a Fastify plugin to act as a Model Context Protocol (MCP) server, enabling AI assistants and clients to interact with services via streamable HTTP transport.