惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Google DeepMind News
Google DeepMind News
WordPress大学
WordPress大学
S
SegmentFault 最新的问题
小众软件
小众软件
爱范儿
爱范儿
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
量子位
博客园_首页
T
Tailwind CSS Blog
The Cloudflare Blog
J
Java Code Geeks
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
U
Unit 42
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
人人都是产品经理
人人都是产品经理
N
Netflix TechBlog - Medium
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
腾讯CDC
P
Proofpoint News Feed
aimingoo的专栏
aimingoo的专栏
Recent Announcements
Recent Announcements
T
The Blog of Author Tim Ferriss
D
Docker
Microsoft Azure Blog
Microsoft Azure Blog

二丫讲梵

学习周刊-总第258期-2026年第15周 学习周刊-总第257期-2026年第14周 学习周刊-总第256期-2026年第13周 学习周刊-总第255期-2026年第12周 学习周刊-总第254期-2026年第11周 学习周刊-总第253期-2026年第10周 临时插播一条羊毛,免费领取450元大模型API代金券 学习周刊-总第252期-2026年第09周 学习周刊-总第251期-2026年第08周 学习周刊-总第250期-2026年第07周 学习周刊-总第249期-2026年第06周 诚邀评论,聊聊你所知欲知的我 学习周刊-总第248期-2026年第05周 我的QQ动态之2015年 我的QQ动态之2014年 我的QQ动态之2013年 我的QQ动态之2012年 我的QQ动态-2010-2011年 我的QQ动态-创栏小叙 学习周刊-总第247期-2026年第04周 Nexus社区版权益阉割--一文告诉你有哪些版本可以选择 学习周刊-总第246期-2026年第03周 学习周刊-总第245期-2026年第02周 学习周刊-总第244期-2026年第01周 学习周刊-总第243期-2025年第52周 学习周刊-总第242期-2025年第51周 开源项目ZenOps:带你领略禅意运维 学习周刊-总第241期-2025年第50周 用京东金融,享负债人生 学习周刊-总第240期-2025年第49周
认识神级MCP工具系列--用anyquery和数据库交互
二丫讲梵 · 2025-08-25 · via 二丫讲梵

# 附言前置

写完如下内容之后,我心里盘算着测试一下 MySQL 的交互能力,结果发现这个工具和 MySQL 的交互并不是很理想,至少我个人测试一个简单的查询都要花将近两分钟的时间(详见 60 (opens new window)),因此这并不是一个很适合全场景的数据库交互 mcp 工具(虽然 sqlite 交互上没有问题),请读者注意。

后续我还会探索其他更为合适数据库交互场景的 mcp 工具。文章已经写了,并且花费了我不少时间,虽然工具不算特别完美,但实践过程和思路,也还算有一些了解和学习的价值。

# 前言

我对 MCP 的了解很浅,这个系列也只是个人基于日常一些开发场景中的探索,如有错漏,还望见谅。

MCP 的概念我就不在过多赘述,相信点进此文的你,应该早已有所耳闻,其中概念虽算不上复杂,但是单独看一些架构图或者概念,也并不容易理解它存在的意义是什么,莫不如直接基于场景,利用工具,来了解 MCP 的概念。

# 介绍

背景:我们在与大模型对话或者通过 Claude Code 编程的时候,有一个特别明显的感受是,直接把数据给到模型,和让模型依靠经验猜数据而进行的编码,两者差异巨大,模型拿到的数据越具体,进行的编码就越准确。于是,如何解决让模型方便地拿到数据就成了开发过程中重要的一个环节。

今天要介绍的工具,就是为了解决这个场景应运而生的,官网的介绍,号称可以通过 SQL 的语法查询一切,除了支持 MySQL,Sqlite,PG,ClickHouse 等数据库之外,还支持 GitHub,Notion 等各种三方数据,同时还支持基于插件扩展的任何三方数据源。

一些信息:

单听介绍,不可谓不强大,但是官方文档写的比较难读,今天我来通过一些实际例子来带你感受一下这个工具的魅力。

# 安装

anyquery 基于 go 语言编写,因此安装从来不会是困难的事情,并且官方提供了各个平台轻松安装的方案,实在不想用,也可以在 release (opens new window) 页面下载二进制运行。

这里简单介绍几种常见的安装场景。

# Mac

# APT

echo "deb [trusted=yes] https://apt.julienc.me/ /" | sudo tee /etc/apt/sources.list.d/anyquery.list
sudo apt update
sudo apt install anyquery

1
2
3

# YUM/DNF

echo "[anyquery]
name=Anyquery
baseurl=https://yum.julienc.me/
enabled=1
gpgcheck=0" | sudo tee /etc/yum.repos.d/anyquery.repo
sudo dnf install anyquery

1
2
3
4
5
6

# 使用

# 作为一个查询工具

首先,你可以把 anyquery 理解成一个全能的数据库查询客户端。

接下来仅针对 sqlite 做一下演示,它的功能强项不在这里,因此仅作为一个简单介绍。

比如我有项目基于 sqlite 做存储,文件地址是:/Users/eryajf/code/cnb/xirang/data/xirang.db

# 作为一个 MCP 工具

这里才是这个工具的重头戏,可以作为 MCP 工具,让你在与大模型交互的时候,轻松操作你的数据。

如果要交互的数据库是 sqlite,则可通过如下命令启动 mcp server:

anyquery mcp --database /Users/eryajf/code/cnb/xirang/data/xirang.db --stdio

1

通过如下配置,可以将如上数据库启动为 mcp server 监听:

我这里用 Cherry Studio 来举例,打开 MCP,选择添加服务,上图重要的几个配置项均已标号,其中 3 号和 4 号的配置内容,则是 anyquery 提供的 mcp 能力。

我这里用 gemini 来进行对话演示。

比如可以问有哪些表,模型回答如下:

需要注意:在对话之前,需要在底下工具栏中 MCP 处选上刚刚添加的 mcp 服务。然后直接对话,这个时候模型会自动通过调用 mcp 工具,来查询数据。

接下来再看一个查询具体数据的例子,也是可以直接查询出对应数据的。

我们看到上图中,赵六的邮箱是 zhaoliu@eryajf.net,接下来让模型改一下这条数据试试:

改完之后,我们还是通过模型对话来查一下这条数据:

可以看到,赵六的邮箱已经更改成功了,可见,借助 anyquery 这个工具,我们就可以通过自然语言来对数据库进行增删改查,这个时候你可能会问权限怎么控制,这的确是个好问题,但不在此文讨论范围。

上边是基于 Cherry Studio 做的测试,接下来再来通过 Claude Code 做一下测试,同时也是一个实践,你可以把这个经验,集成到你的项目开发当中。

cc 支持通过命令来配置 mcp,可通过如下命令添加:

claude mcp add xirang-db anyquery --  mcp --database /Users/eryajf/code/cnb/xirang/data/xirang.db --stdio

1

具体详细文档,可见 cc 的官方文档:通过 MCP 将 Claude Code 连接到工具 (opens new window)

有的人可能习惯通过配置文件来管理 cc 的 mcp 配置,你也可以把如下配置添加上去:

"mcpServers": {
	"xirang-db": {
	  "type": "stdio",
	  "command": "anyquery",
	  "args": [
		"mcp",
		"--database",
		"/Users/eryajf/code/cnb/xirang/data/xirang.db",
		"--stdio"
	  ],
	  "env": {}
	}
  }

1
2
3
4
5
6
7
8
9
10
11
12
13

然后启动 claude code cli,启动后键入 /mcp 可以查看到刚刚添加的 mcp:

然后来做一些交互看看:

照例,再来测一下修改数据的场景:

最后,我通过工具查看一下赵六这条数据,可以看到已经被成功修改了:

# 最后

今天,通过两个实际应用案例,真切感受并体会了拥有 MCP 之后的大模型就是插上翅膀的猛虎这句话,包括之前只听到说一句话就让手机点了咖啡这个事儿,但真正背后如何实现的,并不太了解。

但通过这个例子,我感受到了 MCP 的魅力,同时也感受到,AI 编码借助于 MCP,一定会更加高效,并且精准。