Token导航 LogoToken导航TokenDH.com
Pihole MCP Server logo
搜索检索stdio官方级别未说明来源级核验

Pihole MCP Server

MCP Server

一个基于FastAPI和RAG系统的RESTful API服务,旨在通过自然语言处理能力增强Pi-hole设备的管理体验。

工具数

0

提示词数

0

GitHub Stars

0

资源数

0
自然语言处理PythonAPI集成

安装说明

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

作者 / 组织

NickJLange

提供方

NickJLange

最后核验

2026/5/17 20:35

运行时

Python

快速接入

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

命令预览

python -m venv venv

详细介绍

PiHole MCP服务器

亲爱的上帝,为什么?

我们正在建设这个项目,以提高Pi孔设备的管理经验。我们相信,自然语言处理功能可以让用户更容易地与他们的Pi hole设备进行交互。我们还在构建这个项目,以了解更多关于FastAPI和检索增强生成(RAG)系统的信息。

MCP服务器概述

MCP服务器 设计用于使用FastAPI构建的RESTful API与Pi-hole设备交互,允许通过retrieval-AugedGeneration(RAG)系统对Pi-hole统计信息进行基于查询的管理和检索。该服务旨在通过自然语言处理功能增强Pi孔管理体验。

安装

  1. 克隆存储库:
   git clone [your repository URL]
   cd mcp_server
  1. 设置虚拟环境:
   python -m venv venv
   source venv/bin/activate  # On Windows, use `venv\Scripts\activate`
  1. 安装依赖关系:
   pip install -r requirements.txt
  1. 配置:

- 复制 config.toml.exampleconfig.toml. - 根据Pi-hole设置、API密钥和Milvus数据库连接详细信息调整设置。 - 对于像API密钥这样的秘密,请使用 .env 文件:

运行服务器

uvicorn main:app --host 0.0.0.0 --port 8000

API使用

  • 查询终结点: 使用POST请求 /query 标题包括 X-API-Key示例:
  POST /query HTTP/1.1
  Host: yourserver.com
  X-API-Key: your_api_key_here
  Content-Type: application/json

  {
    "query": "Block internet for 10 minutes."
  }
  • 功能标志: 检查 config.toml 用于控制可用功能的功能标志设置。

文档

  • 请参阅API文档,网址为 /docs 当服务器运行以获取详细的端点使用情况时。

______________________________________________________________________

面向开发人员的README

我们将使用LLM扫描API端点并自动生成代码。然后,我们将应用来自最后一个已知工作版本的补丁,并解决中断问题。

我们将把之前LLM生成的代码保存在一个单独的分支中以供参考,以确保基准测试是正确的。

开发指南

  • 结构:该项目使用FastAPI,并通过以下方式管理依赖关系 pyproject.tomlrequirements.txt.
  • 日志记录:日志配置存储在 logging_config.py。确保日志清晰,不包含敏感信息。
  • 测试:使用 pytest 用于编写和运行测试。鼓励对Milvus和Pi hole等外部服务进行模仿。

代码贡献

  1. 分叉存储库:
   git clone [your fork]
  1. 设置和开发:

- 按照上面的安装指南设置您的开发环境。 - 承诺前: - 运行测试:

       pytest

- 确保代码样式带有过梁(flake8, mypy, black, isort).

  1. 提交拉取请求:

- 将更改推送到fork,然后对main分支打开pull请求。

错误处理

  • 为常见错误自定义和实现异常处理程序,如 PiholeConnectionErrorRagIntentNotFoundError.

文档

  • 更新 README.md 功能或依赖关系的变化。
  • 保持 todo.md 与您的开发任务保持同步。

______________________________________________________________________

使用LLM和补丁构建策略

概述:

  • 我们使用LLM(语言模型)来生成初始代码库或为新功能或错误修复提供解决方案,然后通过手动代码审查和补丁应用程序进行改进。

流程:

  1. 在containers目录中启动pihole
  1. cd prompts/; ./run_plan.sh
  1. 启动新分支以比较gameplan.md的材质差异
  1. 使用gameplan.md为aider.md生成单独的提示
  1. 使用aider根据gameplan.md为特定功能或问题生成代码
  1. 处理生成的代码与以前的llm版本之间的差异
  1. 应用“工作”中的补丁来清理混乱
  1. $$$利润
  1. 集成测试:

- 通过运行完整的集成测试,确保新代码按预期工作。

  1. 文件更新:

- 记录新功能、修复或更改,更新用户和开发人员文档。

政策说明:

  • 未经人工审查,切勿直接提交LLM生成的代码。
  • 维护生成的代码源日志,以实现可追溯性。
  • 在审查和修补LLM生成的代码时,优先考虑安全性和效率。

目录标签

目录标签

自然语言处理PythonAPI集成Pi-hole管理本地部署RESTfulAPIFastAPIRAG系统

接入字段

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

stdio

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

api-key

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

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

0

权限和风险

stdioapi-key部署方式未说明

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

安装前确认

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

来源信息

继续浏览同类 MCP