Token导航 LogoToken导航TokenDH.com
MCP Powertools logo
数据服务stdio官方级别未说明来源级核验

MCP Powertools

MCP Server

一组模型上下文协议(MCP)服务器,使大型语言模型能够与数据库、文件系统和系统服务交互。

工具数

0

提示词数

0

GitHub Stars

0

资源数

0
数据分析Python系统管理模型集成

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

Zodijackyl98

提供方

Zodijackyl98

最后核验

2026/5/17 20:20

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

pip install mcp psycopg2-binary

详细介绍

MCP 动力工具

一组模型上下文协议(MCP)服务器,使大型语言模型能够与数据库、文件系统和系统服务进行交互。

概述

MCP工具包提供了可直接投入生产的MCP服务器,使大型语言模型(LLMs)能够执行包括数据库管理、文件操作和系统管理在内的实际操作。每台服务器的设计都充分考虑了安全性、安全性和易用性。

特点/功能

  • 多数据库支持同时连接到多个 PostgreSQL 实例(针对 Windows 机器的脚本将很快添加)
  • 综合数据库操作轻松进行复杂查询
  • 文件系统管理在路径限制下完成文件操作
  • Bash 脚本自动化创建并执行 bash 脚本
  • Django Web 框架操作进行数据库迁移、收集静态文件、启动/停止服务器、更新配置文件、列出应用程序等。
  • 将你的图片编码为WebP格式如果你同时使用Django网络框架,这将特别有用。轻松地将你的jpg、png、tiff、bmp、ppm、pgm、pnm图片转换为Webp格式。
  • 安全特性对于破坏性操作的确认提示
  • 工具前缀化独特的工具名称可避免在不同机器上运行的多个 PostgreSQL 服务器之间产生混淆。pi_ 对于树莓派(Raspberry Pi), desktop_ 适用于Windows桌面安装

可用服务器

我主要致力于设计低级MCP(Minecraft协议)服务器,这些服务器在格式上更贴近软件实际看到的内容,但未来你也可能会通过FastMCP看到一些高级MCP服务器。

PostgreSQL 服务器

功能全面的PostgreSQL数据库管理,支持:

  • 支持多台服务器,一台用于Linux系统(已在树莓派上测试),另一台用于您的桌面系统(已在Windows上测试)。无论您如何指示您的模型

不同的机器上有各自的PostgreSQL服务器,但它一直为错误的服务器使用错误的工具。这就是为什么您有两台MCP服务器分别对应您(的两个需求/系统)的原因 对于所需的服务器,我为一个设置了前缀“pi\_”,为另一个设置了前缀“desktop\_”。你可以根据你的.env文件,按任意方式设置这两个服务器。

  • 数据库创建/删除
  • 创建包含列、约束和外键的表
  • 列管理(添加/删除列)
  • 索引创建与管理
  • 查询执行与优化
  • 统计与分析
  • 多数据库连接

文件系统服务器

完成针对树莓派或Linux系统的完整文件系统操作:

  • 读取、写入、追加和删除文件
  • 目录操作(创建、列出、删除)
  • 按模式搜索文件
  • 复制和移动操作
  • Bash脚本的创建与执行
  • 系统信息监控
  • 网络信息
  • 能够在系统上查看、追踪和终止程序

Docker 服务器

容器和镜像管理功能:

  • 容器生命周期管理
  • 图像操作
  • 卷和网络管理
  • 集装箱日志和统计数据
  • 文件操作组合(或“编写文件操作代码”)

Django 服务器

为您的网站使用的主要Django网络框架命令。

  • 启动/停止 Django 开发服务器(分离模式,运行在后台)
  • 收集所有静态文件(选项:清理旧文件和跳过提示)
  • 阅读并修改您设置中的任何配置。
  • 创建、应用并查看您的迁移状态。
  • 创建管理员用户,显示已安装的应用程序,清除Django缓存等。

Cwebp 服务器

将各种图像格式转换为Webp格式。

  • 在您的.env文件中指定图像输入和输出目录后,cwebp服务器会将您的图像转换为webp格式。
  • 默认情况下,它会使用'find'函数在给定目录中搜索jpg和png格式的图片,并将每张图片分别转换为webp格式,同时保留它们的原始名称。

安装

先决条件

  • Python 3.8 或更高版本(已在 3.12.11 上测试)
  • PostgreSQL(用于数据库服务器)
  • Docker(用于Docker服务器)
  • SSH访问(用于远程服务器)
  • Django 包(用于 Django 服务器)
  • cwebp 应用程序(用于 cwebp 服务器)

安装依赖项

pip install mcp psycopg2-binary

服务器设置

  1. 克隆仓库:
git clone https://github.com/Zodijackyl98/mcp-toolkit.git
cd mcp-toolkit
  1. 通过在相同文件夹中创建 .env 文件并相应更新它,或者编辑每个服务器文件中的连接参数来配置您的服务器:

.env 示例

# PostgreSQL Pi Configuration
POSTGRES_HOST=localhost
POSTGRES_PORT=5432
POSTGRES_USER=user
POSTGRES_PASSWORD=user_password
POSTGRES_DEFAULT_DB=default_database_name

# PosgreSQL Desktop Configuration
POSTGRES_D_HOST=localhost
POSTGRES_D_PORT=5432
POSTGRES_D_USER=user
POSTGRES_D_PASSWORD=user_password
POSTGRES_D_DEFAULT_DB=default_database_name

# Django
DJANGO_MAIN=/home/user/path/to/your/Django_project_folder
DJANGO_PYTHON=/home/user/miniforge3/envs/your_django_environment/bin/python3

#CWEBP
DEFAULT_IMG_DIR=/home/user/Pictures/inputs/
DEFAULT_OUTPUT_DIR=/home/user/Pictures/outputs/

对于 PostgreSQL 服务器(不使用 .env 文件):

BASE_CONFIG = {
    "host": "localhost",
    "port": 5432,
    "user": "your_username",
    "password": "your_password"
}

对于文件系统服务器,别忘了将your_usarname替换为你的实际用户名:

HOME_DIR = Path("/home/your_username")
  1. 测试服务器:
python servers/postgresql/postgres_server.py

配置

远程服务器的SSH设置

对于如LM Studio等应用所需的远程服务器访问,请在您本地运行模型的机器上设置SSH密钥认证:

# Generate SSH key
ssh-keygen -t ed25519

# Copy to remote server
ssh-copy-id -p PORT user@host

# Test connection
ssh -p PORT user@host

MCP客户端配置

LM Studio 或类似 MCP 客户端的示例配置,我使用的是 miniforge 环境,请将您的 Python 可执行文件路径替换为自己的路径。:

{
  "mcpServers": {
    "postgresql-pi": {
      "command": "ssh",
      "args": [
        "-p", "1234",
        "user@raspberrpi_ip",
        "/home/user/miniforge3/envs/your_mcp_environment/python3",
        "/path/to/postgres_server.py"
      ]
    },
    "filesystem": {
      "command": "ssh",
      "args": [
        "-p", "1234",
        "user@raspberrpi_ip",
        "/home/user/miniforge3/envs/your_mcp_environment/python3",
        "/path/to/pi_server.py"
      ]
    },
    "Local Server": {
      "type": "stdio",
      "command": "/home/user/miniforge3/envs/your_mcp_environment/bin/python3",
      "args": ["/path/to/your/server/mcp_server.py"]    
  }
}

使用示例

创建一个数据库

Create a new database called 'myapp' on the Raspberry Pi PostgreSQL server

大型语言模型(LLM)将使用 pi_create_database 带有适当参数的工具。

创建一个包含外键的表

Create a table called 'orders' with columns:
- id (serial primary key)
- user_id (integer, foreign key to users.id)
- total (decimal)
- created_at (timestamp, default now)

大型语言模型(LLM)将使用 pi_create_table 带有列定义和外键约束的工具。

文件操作

Create a Python script at /home/user/scripts/backup.py that backs up 
the database to /home/user/backups/

大型语言模型(LLM)将使用文件创建和Bash脚本工具来完成这一任务。

安全考量

数据库服务器

  • 只读模式设置 READ_ONLY = True 防止写入操作
  • 允许的架构(或模式)限制可访问的架构 ALLOWED_SCHEMAS
  • 行限制默认情况下,每个查询的最大行数设置为1000
  • 需要确认破坏性操作需要明确确认

文件系统服务器

  • 路径限制所有操作均限制在指定的基础目录内进行
  • 安全指令只有被列入白名单的命令才能执行
  • 无Root访问权限服务器应以有限用户权限运行

通用的;一般的

  • SSH密钥认证使用SSH密钥而非密码
  • 网络隔离在可能的情况下,在隔离网络上运行服务器
  • 审计日志记录监控服务器日志中的可疑活动
  • 定期更新保持依赖项更新

工具命名规范

为避免在运行多个数据库服务器时产生混淆,每个服务器都使用唯一的工具前缀:

  • 树莓派 PostgreSQL: pi_ 前缀(例如。, pi_list_databases
  • 桌面版 PostgreSQL: desktop_ 前缀(例如。, desktop_list_databases
  • 文件系统:标准名称(例如。, read_filewrite_file

这确保了大型语言模型(LLM)在每次操作时都使用正确的服务器。

建筑学

服务器通信

MCP服务器通过标准输入/输出(stdio)进行通信,这使得它们易于与任何兼容MCP的客户端集成。对于远程服务器,SSH提供传输层支持。

[LLM Client]  [MCP Client]  [SSH]  [MCP Server]  [Database/System]

工具执行流程

  1. 大型语言模型(LLM)根据用户请求和用户需要提供的上下文来决定使用哪个工具
  2. MCP客户端发送带有参数的工具调用
  3. 服务器验证参数并检查权限
  4. 服务器在目标系统上执行操作
  5. 服务器返回格式化后的结果
  6. 大型语言模型向用户展示结果

发展

添加新工具

在服务器上添加一个新工具:

  1. 在(此处)定义工具 list_tools():
Tool(
    name="server_prefix_tool_name",
    description="Clear description of what the tool does",
    inputSchema={
        "type": "object",
        "properties": {
            "param_name": {
                "type": "string",
                "description": "Parameter description"
            }
        },
        "required": ["param_name"]
    }
)
  1. 在(某个环境/系统中)实施该工具 call_tool()
elif tool_name == "tool_name":
    # Implementation
    result = perform_operation(arguments)
    return [TextContent(type="text", text=result)]

故障排除

连接问题

问题服务器无响应

  • 检查服务器进程是否正在运行
  • 验证SSH连接: ssh -p PORT user@host
  • 检查防火墙规则

问题认证失败

  • 验证SSH密钥是否已正确安装
  • 检查远程服务器上的用户权限
  • 确认配置中的连接参数

数据库问题

问题权限被拒绝

  • 验证数据库用户是否具有必要的权限
  • 检查 ALLOWED_SCHEMAS 配置
  • 确认数据库存在且可访问

问题查询超时

  • 使用 LIMIT 减少结果集大小
  • 利用索引优化查询
  • 检查 MAX_ROWS 设定;环境

工具问题

问题大型语言模型(LLM)使用了错误的服务器

  • 验证工具前缀是否唯一
  • 检查MCP客户端配置
  • 重启LLM客户端以重新加载工具

致谢

  • 基于Anthropic的模型上下文协议构建
  • 受安全、实用的大语言模型(LLM)系统集成需求的启发
  • 我极力推荐使用 渗透人工智能(或“渗透式AI”,具体翻译取决于上下文和应用场景) 这是一款针对MCPs(可能是指某种特定任务或领域,如“机器学习任务”或“特定应用场景”,但具体含义需根据上下文确定)优化的、非常轻量但功能强大的LLM(大型语言模型)。我也试用了IBM的新模型 IBM/Granite-4-H-Tiny它不是一个具备推理能力的模型,但如果你的指令非常直接明确,它就能迅速完成任务。我不建议你使用IBM的模型来查询SQL数据库,你需要非常具体地说明,否则它根本无法理解。

支持

对于问题、疑问或建议:

  • 请通过联系表单(https://solartrace.site)与我联系。在主题栏中填写“mcp-powertools”。
  • 在GitHub上提交一个问题(或:创建一个GitHub问题)
  • 检查现有文档

目录标签

目录标签

数据分析Python系统管理模型集成数据库管理本地部署文件系统操作LLM集成自动化工具

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP