用于 ADK 的 Pinecone MCP 工具¶
Supported in ADKPythonTypeScript
Pinecone MCP 服务器 将你的 ADK 智能体连接到 Pinecone(一种用于 AI 应用程序的向量数据库)。此集成使你的智能体能够管理索引,利用元数据过滤进行语义搜索来存储和搜索数据,以及通过重排序跨多个索引进行搜索。
使用场景¶
-
语义搜索和检索:使用自然语言查询搜索存储的数据,并支持元数据过滤和重排序。
-
知识库管理:存储和管理数据,以构建和维护检索增强生成 (RAG) 系统。
-
跨索引搜索:同时搜索多个 Pinecone 索引,并自动对结果进行去重和重排序。
先决条件¶
- 一个 Pinecone 帐号
- 在 Pinecone 控制台 中生成的 API 密钥
在智能体中使用¶
from google.adk.agents import Agent
from google.adk.tools.mcp_tool import McpToolset
from google.adk.tools.mcp_tool.mcp_session_manager import StdioConnectionParams
from mcp import StdioServerParameters
PINECONE_API_KEY = "YOUR_PINECONE_API_KEY"
root_agent = Agent(
model="gemini-2.5-pro",
name="pinecone_agent",
instruction="帮助用户管理和搜索其 Pinecone 向量索引",
tools=[
McpToolset(
connection_params=StdioConnectionParams(
server_params=StdioServerParameters(
command="npx",
args=[
"-y",
"@pinecone-database/mcp",
],
env={
"PINECONE_API_KEY": PINECONE_API_KEY,
}
),
timeout=30,
),
)
],
)
import { LlmAgent, MCPToolset } from "@google/adk";
const PINECONE_API_KEY = "YOUR_PINECONE_API_KEY";
const rootAgent = new LlmAgent({
model: "gemini-2.5-pro",
name: "pinecone_agent",
instruction: "帮助用户管理和搜索其 Pinecone 向量索引",
tools: [
new MCPToolset({
type: "StdioConnectionParams",
serverParams: {
command: "npx",
args: ["-y", "@pinecone-database/mcp"],
env: {
PINECONE_API_KEY: PINECONE_API_KEY,
},
},
}),
],
});
export { rootAgent };
备注
仅支持集成推理的索引。此 MCP 服务器不支持没有集成嵌入模型的索引。
可用工具¶
文档¶
| 工具 | 描述 |
|---|---|
search-docs |
搜索 Pinecone 官方文档 |
索引管理¶
| 工具 | 描述 |
|---|---|
list-indexes |
列出所有 Pinecone 索引 |
describe-index |
描述索引的配置 |
describe-index-stats |
获取有关索引的统计信息,包括记录数和可用命名空间 |
create-index-for-model |
创建一个带有用于嵌入的集成推理模型的新索引 |
数据操作¶
| 工具 | 描述 |
|---|---|
upsert-records |
在具有集成推理的索引中插入或更新记录 |
search-records |
使用文本查询搜索记录,并支持元数据过滤和重排序选项 |
cascading-search |
跨多个索引进行搜索,并对结果进行去重和重排序 |
rerank-documents |
使用专门的重排序模型对记录集或文本文件进行重排序 |