引言
近期开源大模型中,阿里发布的 Qwen3 系列凭借优异性能、混合推理模式及强大的 MCP 能力,成为 AI Agent 开发的主流基座。针对如何利用 Qwen3 快速开发 MCP 应用的问题,本文介绍使用 Qwen 官方推荐的开发工具 Qwen-Agent,学习如何接入 MCP 服务端并开发 AI Agent 应用。
一、注册 Qwen3 API-Key
本次分享通过阿里云百炼大模型服务平台 API Key 请求方式调用 Qwen3 大模型。获取 API Key 的步骤如下:
- 登录阿里云百炼大模型服务平台,如果页面顶部显示需要开通百炼的模型服务,点击立即开通即可。
- 前往我的 API-KEY 页面,单击创建我的 API-KEY。
- 在已创建的 API Key 操作列,单击查看,获取 API KEY。该 API KEY 是请求 Qwen3 大模型的重要凭证。
二、Qwen-Agent 快速入门
2.1 Qwen-Agent 简介
Qwen-Agent 是阿里通义团队推出的开源智能体(Agent)开发框架,基于 Qwen 大语言模型(LLM)构建,旨在帮助开发者快速构建具备指令遵循、工具调用、规划与记忆等能力的 AI 应用。它提供了从底层原子组件到高级智能体抽象的完整开发工具链。
Qwen-Agent 具备如下核心特性:
- 更强的工具调用(Function Calling)能力:框架支持智能体自动调用外部工具或函数,包括内置的代码解释器、浏览器助手等,也支持开发者自定义工具。
- 便捷的 MCP 工具接入流程:最新版的 Qwen-Agent 已经集成了 MCP 工具接入流程,仅需写入 MCP 配置,即可在 Qwen-Agent 中调用 MCP 工具。
- 规划与记忆能力:智能体具备任务规划能力,能够根据用户需求自动制定执行步骤。同时具备上下文记忆功能,能在对话中保持状态。
- 长文本处理与 RAG:Qwen-Agent 集成了检索增强生成(RAG)机制,支持处理长文档,通过文档分块和相关性检索提升上下文理解。
2.2 Qwen-Agent 构建多轮对话机器人
Qwen-Agent 具备快速接入 Qwen 系列模型能力,通过 Assistant 组件,可以实现工具调用、Agent 编排和 MCP 接入等功能。
- 安装相关软件,这里使用 anaconda 创建虚拟环境并安装相关库。
conda create -n qwen_agent python=3.12 pip install -U "qwen-agent[rag,code_interpreter,gui,mcp]" pip install uv
- 导入需要的类和函数,
Assistant是用来创建智能体对象的类,typewriter_print用于格式化和打印消息。
from qwen_agent.agents import Assistant
from qwen_agent.utils.output_beautify import typewriter_print
- 配置所使用的模型服务,注意
api_key填入你在百炼平台注册的 api_key。
llm_cfg = {
'model': 'qwen3-235b-a22b',
'model_server': 'dashscope',
'api_key': '你注册的 api-key',
'generate_cfg': {'top_p': 0.8}
}
- 创建一个智能体对象。
bot = Assistant(llm=llm_cfg, system_message='你是一位乐于助人的小助理', name='智能助理')
- 构建多轮对话聊天。
messages = []
while True:
query = input('\n用户请求:输入 quit 终止对话')
if query == 'quit':
break
else:
messages.append({'role': 'user', 'content': query})
response = []
response_plain_text = ''
print('AI 回复:')
for response in bot.run(messages=messages):
response_plain_text = typewriter_print(response, response_plain_text)
messages.extend(response)
三、Qwen-Agent 接入 MCP 工具
3.1 项目简介
熟悉 Qwen-Agent 的基本操作后,下一步开始学习 Qwen-Agent 接入 MCP 工具。Qwen-Agent 接入 MCP 的原理采用 stdio 开发模式,将 mcp 服务作为 Qwen-Agent 应用的子进程,Qwen-Agent 作为客户端与子进程服务通信。
本次分享采用 Qwen-Agent+Qwen3 开发一个 sqlite 数据库小助手,Qwen-Agent 接入 mcp-server-sqlite MCP 服务器,能够理解自然语言并依据语言内容调用 mcp-server-sqlite 服务端的功能函数完成对 sqlite 数据库的相关操作。
3.2 Qwen-Agent 接入 mcp-server-sqlite
- 导入相关包并初始化
Assistant类,同时接入mcp-server-sqliteMCP 服务端。接入 mcp 的流程需要先定义一个 tools 数组存放 json schema 格式的 mcp 服务器配置。
from qwen_agent.agents import Assistant
from qwen_agent.utils.output_beautify import typewriter_print
def init_agent_service():
llm_cfg = {
'model': 'qwen3-235b-a22b',
'model_server': 'dashscope',
'api_key': '你的 api_key',
'generate_cfg': {'top_p': 0.8}
}
# 定义 MCP 服务配置,类似 Function Calling 调用的 JSON Schema 格式
tools = [{"mcpServers": {"sqlite": {"command": "uvx", "args": ["mcp-server-sqlite", "--db-path", "test.db"]}}}]
bot = Assistant(
llm=llm_cfg,
name='数据库管理员',
description='你是一位数据库管理员,具有对本地数据库的增删改查能力',
system_message='你扮演一个数据库助手,你具有查询数据库的能力',
function_list=tools,
)
return bot
- 定义数据库助手,并构造提示词让 Qwen-Agent 帮助我们创建一个学生表并添加一些数据。
def run_query(query=None):
bot = init_agent_service()
messages = []
messages.append({'role': 'user', 'content': [{'text': query}]})
previous_text = ""
print('数据库管理员:', end='', flush=True)
for response in bot.run(messages):
previous_text = typewriter_print(response, previous_text)
if __name__ == '__main__':
query = '帮我创建一个学生表,表名是 students,包含 id, name, age, gender, score 字段,然后插入一条数据,id 为 1,name 为张三,age 为 20,gender 为男,score 为 95'
run_query(query)
执行代码得到结果,uvx 检测到有些依赖库没有安装,会自动安装所需依赖。完成相关依赖安装后 Qwen-Agent 检测到用户请求中要创建学生表并插入数据,Qwen3 模型对 mcp-server-sqlite 服务端的函数理解生成思考过程,利用 sqlite-create_table 创建表,并使用 sqlite-write_query 插入数据。
执行完程序发现本地目录下多了名为 test.db 的数据库文件。为进一步验证工具调用的正确性,可使用 sqlite3 数据库工具查看数据库中的数据。
import sqlite3
conn = sqlite3.connect('test.db')
cursor = conn.cursor()
cursor.execute("SELECT name FROM sqlite_master WHERE type='table';")
tables = cursor.fetchall()
print("数据库中的表:", tables)
if tables:
table_name = tables[0][0]
cursor.execute(f"SELECT * FROM {table_name}")
print(f"{table_name} 表中的数据:", cursor.fetchall())
else:
print("数据库中没有表,需要先创建表并插入数据")
conn.close()
可以看到 Qwen-Agent 成功创建了数据表并插入了数据。
四、总结
本篇分享介绍了如何利用阿里发布的 Qwen3 系列大模型和 Qwen-Agent 工具快速接入 MCP 服务端并开发 AI Agent 智能体。主要内容包括:
- 注册 Qwen3 API-Key:通过阿里云百炼平台获取 API 密钥。
- Qwen-Agent 入门:介绍了 Qwen-Agent 核心功能(工具调用、MCP 接入、规划与记忆等),并演示了如何构建多轮对话机器人。
- 接入 MCP 工具:以 SQLite 数据库助手为例,展示了如何配置 MCP 服务端,实现自然语言操作数据库的功能。


