关于 面试鸭 MCP Server
面试鸭 MCP Server 基于 Spring AI 开发,将面试鸭的题目搜索能力以 MCP 工具形式提供。适合希望在 AI 助手中快速检索企业面试真题的用户,并可接入 Claude、Cursor 等支持 MCP 的客户端。
主要功能
- 01题目搜索工具 questionSearch
- 02基于 MCP Java SDK 开发
- 03输出面试鸭中的题目链接
- 04支持 stdio 方式启动
适用场景
- 01在 AI 助手中检索企业面试真题
- 02在 Java 应用中通过 Spring AI 调用题目搜索工具
MCP 相关
该项目是 MCP 服务,向 MCP 客户端暴露 questionSearch 工具,输入题目关键词,返回面试鸭中的题目链接。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
来自项目 README面试鸭 MCP Server
简介
面试鸭 的题目搜索API现已兼容MCP协议,是国内首家兼容MCP协议的面试刷题网站。关于MCP协议,详见MCP官方文档。
依赖MCP Java SDK开发,任意支持MCP协议的智能体助手(如Claude、Cursor以及千帆AppBuilder等)都可以快速接入。
以下会给更出详细的适配说明。
工具列表
题目搜索 questionSearch
- 将面试题目检索为面试鸭里的题目链接
- 输入:
题目 - 输出:
[题目](链接)
快速开始
使用面试鸭MCP Server主要通过Java SDK 的形式
Java 接入
前提需要Java 17 运行时环境
安装
git clone https://github.com/yuyuanweb/mcp-mianshiya-server
构建
cd mcp-mianshiya-server
mvn clean package
使用
-
打开
Cherry Studio的设置,点击MCP 服务器。
-
点击
编辑 JSON,将以下配置添加到配置文件中。
{
"mcpServers": {
"mianshiyaServer": {
"command": "java",
"args": [
"-Dspring.ai.mcp.server.stdio=true",
"-Dspring.main.web-application-type=none",
"-Dlogging.pattern.console=",
"-jar",
"/yourPath/mcp-server-0.0.1-SNAPSHOT.jar"
],
"env": {}
}
}
}

- 在设置-模型服务里选择一个模型,输入API密钥,选择模型设置,勾选下工具函数调用功能。

- 在输入框下面勾选开启MCP服务。

- 配置完成,然后查询下面试题目

代码调用
- 引入依赖
<dependency>
<groupId>com.alibaba.cloud.ai</groupId>
<artifactId>spring-ai-alibaba-starter</artifactId>
<version>1.0.0-M6.1</version>
</dependency>
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-mcp-client-spring-boot-starter</artifactId>
<version>1.0.0-M6</version>
</dependency>
- 配置MCP服务器 需要在application.yml中配置MCP服务器的一些参数:
spring:
ai:
mcp:
client:
stdio:
# 指定MCP服务器配置文件
servers-configuration: classpath:/mcp-servers-config.json
mandatory-file-encoding: UTF-8
其中mcp-servers-config.json的配置如下:
{
"mcpServers": {
"mianshiyaServer": {
"command": "java",
"args": [
"-Dspring.ai.mcp.server.stdio=true",
"-Dspring.main.web-application-type=none",
"-Dlogging.pattern.console=",
"-jar",
"/Users/gulihua/Documents/mcp-server/target/mcp-server-0.0.1-SNAPSHOT.jar"
],
"env": {}
}
}
}
客户端我们使用阿里巴巴的通义千问模型,所以引入spring-ai-alibaba-starter依赖,如果你使用的是其他的模型,也可以使用对应的依赖项,比如openAI引入spring-ai-openai-spring-boot-starter 这个依赖就行了。
配置大模型的密钥等信息:
spring:
ai:
dashscope:
api-key: ${通义千问的key}
chat:
options:
model: qwen-max
通义千问的key可以直接去官网 去申请,模型我们用的是通义千问-Max。 3) 初始化聊天客户端
@Bean
public ChatClient initChatClient(ChatClient.Builder chatClientBuilder,
ToolCallbackProvider mcpTools) {
return chatClientBuilder
.defaultTools(mcpTools)
.build();
}
- 接口调用
@PostMapping(value = "/ai/answer/sse", produces = MediaType.TEXT_EVENT_STREAM_VALUE)
public Flux<String> generateStreamAsString(@RequestBody AskRequest request) {
Flux<String> content = chatClient.prompt()
.user(request.getContent())
.stream()
.content();
return content
.concatWith(Flux.just("[complete]"));
}
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。