Token导航 LogoToken导航TokenDH.com
query blogger MCP server logo
AI代理stdio官方级别未说明来源级核验

query blogger MCP server

MCP Server

一个用于查询指定白名单博客内容的服务器,支持通过API或本地运行方式集成到LLM系统中。

工具数

2

提示词数

0

GitHub Stars

0

资源数

0
安全访问PythonClaude知识管理Claude DesktopClaude

安装说明

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

作者 / 组织

karthiks

提供方

karthiks

最后核验

2026/5/17 20:22

运行时

Python

快速接入

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

命令预览

python -m venv .venv

详细介绍

查询Blogger MCP服务器

MCP服务器

  • 仅查询 (不修改),
  • 仅限您的白名单博客 (没有其他)托管在Blogger上\](https://www.blogger.com/)平台。

为什么查询Blogger MCP服务器来阅读Blogger平台上的公共博客文章?

  • 配置简单,您就可以开始了。
  • 此服务器设计为安全、高效且易于与LLM一起使用。

______________________________________________________________________

1.如何使用这个图书馆?

1.1.获取Blogger API密钥

  • 首选 谷歌云控制台.
  • 创建一个新项目(或选择一个现有项目)。
  • 引导到 APIs & Services > Library.

- 搜索“Blogger API”并启用它。

  • 首选 APIs & Services > Credentials.

- 单击“创建凭据”并选择“API密钥”。

  • 复制生成的API密钥。
  • 至关重要的是, 限制您的API密钥! 编辑API密钥:

- 在...之下 API restrictions,选择 Restric key 并选择 Blogger API 从下拉列表中。这确保了这个密钥只能调用Blogger API。 - 在...之下 Application restrictions,您可以选择添加 HTTP referrers 如果您的核心代理始终从特定域调用,或者如果您的MCP服务器始终在特定IP上运行,则为“IP地址”。 - 对于大多数企业内部使用,API限制可能就足够了,但引用者或IP限制会增加另一层。

1.2.设置 Query Blogger MCP Server

1.2.1克隆存储库

git clone https://github.com/karthiks/query_blogger_mcp_server

1.2.2 无容器方法: 安装了Python的主机

  • 设置环境:

> 先决条件:pyenv已安装,用于安装python 3.10.16版本。

  cd query_blogger_mcp_server

  python -m venv .venv
  pyenv versions
  pyenv local 3.10.16
  pyenv version # python --version
  python -m venv .venv
  source .venv/bin/activate

  pip install .
  # pip install query_blogger_mcp_server
  • 配置此MCP服务器
  #Copy .env.example to .env:
  cp .env.example .env

  # Edit the .env file and fill in BLOGGER_API_KEY, ALLOWED_DOMAINS, and optionally adjust MCP_SERVER_NAME, MCP_SERVER_VERSION, UVICORN_HOST, UVICORN_PORT.

  # On Windows (in cmd or PowerShell before starting server.py)
  #$env:BLOGGER_API_KEY="YOUR_ACTUAL_BLOGGER_API_KEY"
  # On Linux/macOS
  #export BLOGGER_API_KEY="YOUR_ACTUAL_BLOGGER_API_KEY"

最终用户只需修改 .env 文件(或直接在部署管道中设置环境变量)来配置MCP服务器,提供更流畅、更安全的体验。

  • 运行此MCP服务器
  # Run MCP Server in STDIO mode
  python -m query_blogger_mcp_server.server --stdio

  # Run MCP Server in HTTP mode
  python -m query_blogger_mcp_server.server

  # Or, the production-ready way if you have `query_blogger_mcp_server` installed:
  # uvicorn query_blogger_mcp_server.server:mcp.app --host 0.0.0.0 --port 8000 --workers 1 # Add workers for production

这将启动您的MCP服务器,通常在http://0.0.0.0:8000.

1.2.2 容器化方法: 安装了Docker的主机

  • 设置环境:
  cd query_blogger_mcp_server

  # Build Docker Image: This command reads your Dockerfile and creates a Docker image for your application. Wait for the build process to complete. You should see output indicating each step of the Dockerfile being executed.
  docker build -t query-blogger-mcp-server .
  • 运行Docker容器以启动MCP服务器
  docker run -d \
  --name blogger_mcp_instance \
  -p 8000:8000 \
  -e BLOGGER_API_KEY="your_actual_google_blogger_api_key_here" \
  -e ALLOWED_DOMAINS="kartzontech.blogspot.com,blog.codonomics.com" \
  query-blogger-mcp-server

- docker run:创建和运行容器的命令。 - -d:以“分离”模式(在后台)运行容器,因此您的终端保持空闲。 - --name blogger_mcp_instance:分配一个唯一的名称 blogger_mcp_instance 到你的跑步容器。这使得以后更容易参考(例如,用于停止或查看日志)。 - -p 8000:8000:这是端口映射。它将主机(计算机)上的端口8000映射到Docker容器内的端口8000。 - -e BLOGGER_API_KEY="...":这将在容器中设置一个名为BLOGGER_API_KEY的环境变量。 - query-blogger-mcp-server:这是您在上一步中构建的Docker镜像的名称。

> 您的MCP服务器现在应该在Docker容器中运行,可以通过以下方式访问http://localhost:8000从您的主机!

  • 验证Docker容器是否已启动并正在运行
  docker ps
  # You should see a list of running containers, and blogger_mcp_instance should be among them, with 0.0.0.0:8000->8000/tcp in the PORTS column.
  • 查看容器日志(用于调试/监控)
  docker logs blogger_mcp_instance
  • 停止并移除容器(完成后)
  docker stop blogger_mcp_instance
  docker rm blogger_mcp_instance

> 完成后,最好停止并删除容器以释放资源。

1.3.配置核心代理(LLM系统)

然后,您的核心代理(例如Ollama部署的Qwen2.5应用程序)将被配置为:

  • 指向您的MCP服务器的URL(http://your-mcp-server-ip:8000).
  • 提供以下工具定义 FastMCP 自动生成 get_blog_info_by_urlget_latest_posts_by_blog_url.

当用户询问博客内容时,LLM将学习调用这些工具。

1.3.1将本地托管的Query Blogger MCP服务器集成到Claude桌面

Claude Desktop似乎还不支持与MCP服务器的HTTP传输集成,因此我向以STDIO模式运行的本地MCP服务器展示了集成配置

您的claude桌面配置文件 claude_desktop_config.json 将有以下代码段

{
  "mcpServers": {
    "query_blogger": {
      "command": "wsl",
      "args": [
        "bash", "-c",
        "cd /absolute/path/to/your/query_blogger_mcp_server/in/wsl && source .venv/bin/activate && python -m query_blogger_mcp_server.server --stdio"
      ]
    }
  }
}

更改此配置文件后,重新启动claude桌面以检查 query_blogger 工具已成功集成,如下图所示:

tool integration check 1

tool integration check 2

如果启用了此工具,您可以检查正在运行的工具,如下图所示:

Demo of Query Blogger Tool In Action

下面是利用Query Blogger MCP的对话截图中的链接:

______________________________________________________________________

2.使用法学硕士进行测试:

当您向连接到此MCP服务器的LLM发送提示时:

  • 允许的域: “你能告诉我关于博客的事吗 https://blog.codonomics.com?"

- 预期: LLM电话 get_blog_info_by_url 到您的MCP服务器。MCP服务器调用Blogger API,返回信息。LLM生成摘要。

  • 允许的域名、帖子: “最近有什么帖子 https://blog.codonomics.com?"

- 预期: LLM电话 get_latest_posts_by_blog_url 到您的MCP服务器。MCP服务器调用Blogger API,返回帖子。LLM总结。

  • 不允许的域: “什么新闻 https://disallowed-website.com?"

- 预期: LLM可能还会打电话 get_blog_info_by_url 但是你的MCP服务器 _is_allowed_domain 检查将触发。它将返回一条错误消息: "Access denied: This tool can only query blogs from pre-approved domains"。然后,LLM应将此消息中继给用户。

  • 修改尝试: 如果你不小心暴露了 create_post 工具,并且LLM尝试使用它,Blogger API本身可能会拒绝API密钥(因为它仅用于只读访问),并且MCP服务器将返回错误。但是,通过仅定义只读工具,您可以抢先一步。

______________________________________________________________________

演示客户端LLM代理利用此QueryBloggerMCPServer

# Terminal 1
# First Start MCP Server
cd query_blogger_mcp_server
source .venv/bin/activate
python -m query_blogger_mcp_server.server

# Terminal 2
# Pre-requisite: You have qwenqwen2.5:0.5b model installed via Ollama
ollama run qwen2.5:0.5b

# Terminal 3
# Start LLM Agent that calls the MCP server
python -m query_blogger_mcp_server.server
cd query_blogger_mcp_server/demo/
source .venv/bin/activate
python ollama_mcp_agent.py
# Prompt:
# YOU: Tell me about our blog?
# AI: **Summary:** The provided blog is called **Codonomics** and it was published on April 26, 2010. It's an online platform focused on democratizing knowledge and experience.

______________________________________________________________________

发展与贡献

感谢您对Query Blogger MCP Server开发工作的考虑!

我鼓励社区发布问题并创建拉取请求。

在您开始之前,请查看我们的 贡献指南.

______________________________________________________________________

ToDos

[X] MVP: Allow Single Domain
[X] Allow Multiple Domains
[X] User Oboarding with README.md
[X] User onboarding with demo client llm agent leveraging this mcp server
[X] Dev Onboarding with README-DEV.md
[X] Externalize configurations
[X] Containerize with Docker
[X] Integration with Claude Desktop
[X] Security Fix: Upgrade to Vulnerable free Docker Image version (3.10 images have 2 critical vulnerabilityes) - Python-v3.14??
[ ] Unit Test Cases
[ ] Features
    - [X] Get Blog Information by URL (get_blog_info_by_url)
    - [X] Get Latest Posts by Blog URL (get_latest_posts_by_blog_url)
        - Return response in Markdown format instead of raw HTML.
    - [X] Search posts for query terms

目录标签

目录标签

安全访问PythonClaude知识管理博客查询本地部署API服务内容管理LLM集成

支持客户端

Claude DesktopClaude

接入字段

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

stdio

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

none

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

2

资源数量(resourceCount,资源数)

0

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

0

权限和风险

stdionone部署方式未说明

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

安装前确认

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

来源信息

继续浏览同类 MCP