品牌MCP服务器(Python)
这提供了一个MCP服务器,用于使用Python访问品牌Postgres数据库。
安装说明(本地)
- 创建虚拟环境并安装依赖项:
python -m venv .venv
# Windows
.venv\Scripts\activate
pip install -r requirements.txt- 配置环境:
复制 .env.example 到 .env 并填写您的数据库凭据:
cp .env.example .env- Claude桌面配置:
在Windows上,打开位于此处的Claude配置文件: %APPDATA%\Claude\claude_desktop_config.json
添加以下配置以在本地运行服务器:
{
"mcpServers": {
"brand-db": {
"command": "C:\\Users\\Mike\\Desktop\\Chumbak MCP\\brand-mcp-server\\.venv\\Scripts\\python.exe",
"args": ["-m", "src.server"],
"env": {
"DB_HOST": "localhost",
"DB_PORT": "5432",
"DB_NAME": "brand_db",
"DB_USER": "postgres",
"DB_PASS": "password",
"PYTHONPATH": "C:\\Users\\Mike\\Desktop\\Chumbak MCP\\brand-mcp-server"
}
}
}
}EC2部署(Ubuntu)
如果要将此MCP服务器部署到Ubuntu EC2实例(例如Ubuntu 22.04或24.04),请按照以下步骤使用FastAPI实现安全配置服务器(src/server2.py).
1.更新和安装依赖项
SSH连接到EC2实例,并运行以下命令安装Python 3和Git:
sudo apt update && sudo apt upgrade -y
sudo apt install git python3 python3-pip python3-venv -y2.克隆存储库
git clone https://github.com/MiKecantdothis/MCPforGBL.git
cd MCPforGBL3.设置虚拟环境并安装软件包
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt4.创建环境变量
既然你的秘密是安全的 .gitignored,您必须创建 .env 在EC2实例上手动创建文件:
nano .env*(将您的数据库凭据粘贴到里面,用保存 Ctrl+O, Enter,然后退出 Ctrl+X.)*
5.运行服务器(HTTP/SSE)
要启动FastAPI HTTP服务器并使其在关闭SSH连接后仍在后台运行,请使用 nohup:
nohup python3 -m src.server2 > server.log 2>&1 &注: 您的FastAPI服务器现在可以通过EC2实例的IP端口8000访问。 重要:确保编辑实例的 安全组 在AWS控制台中允许入站TCP流量 端口8000.
6.生成API密钥(用于HTTP/SSE)
为了保护远程HTTP/SSE服务器的安全,它需要有效的API密钥(src/server2.py). 运行auth模块以生成强密钥并将其保存到 api_keys.json:
python3 -m src.auth generate "ClientName"7.将Claude Desktop连接到EC2
如果您通过HTTP/SSE公开暴露了端口8000,请更新 %APPDATA%\Claude\claude_desktop_config.json 在Windows上,将生成的密钥传递到标头中:
{
"mcpServers": {
"brand-db-remote": {
"command": "C:\\Program Files\\nodejs\\npx.cmd",
"args": [
"-y",
"mcp-remote",
"http://YOUR-EC2-PUBLIC-IP:8000/sse",
"--allow-http",
"--header",
"Authorization: Bearer YOUR_GENERATED_KEY"
]
}
}
}如果您不想公开暴露端口8000,并希望Claude Desktop通过SSH安全地与新启动的EC2实例通信,请使用标准 stdio 配置。
打开 %APPDATA%\Claude\claude_desktop_config.json 在Windows计算机上添加:
{
"mcpServers": {
"brand-db-remote": {
"command": "ssh",
"args": [
"-i", "C:/path/to/your/ec2-key.pem",
"ubuntu@YOUR-EC2-PUBLIC-IP",
"cd /home/ubuntu/MCPforGBL && source .venv/bin/activate && python3 -m src.server"
]
}
}
}*(此设置通过SSH无缝安全地将Claude的请求直接隧道到EC2的标准输入/输出服务器!)*
