mirror of
https://github.com/EvolutionAPI/adk-python.git
synced 2025-07-13 15:14:50 -06:00
chore: add agent for testing Notion MCP server
PiperOrigin-RevId: 766325293
This commit is contained in:
parent
94c0aca685
commit
821f751b5a
20
contributing/samples/mcp_stdio_notion_agent/README.md
Normal file
20
contributing/samples/mcp_stdio_notion_agent/README.md
Normal file
@ -0,0 +1,20 @@
|
||||
# Notion MCP Agent
|
||||
|
||||
This is an agent that is using Notion MCP tool to call Notion API. And it demonstrate how to pass in the Notion API key.
|
||||
|
||||
Follow below instruction to use it:
|
||||
|
||||
* Follow the installation instruction in below page to get an API key for Notion API:
|
||||
https://www.npmjs.com/package/@notionhq/notion-mcp-server
|
||||
|
||||
* Set the environment variable `NOTION_API_KEY` to the API key you obtained in the previous step.
|
||||
|
||||
```bash
|
||||
export NOTION_API_KEY=<your_notion_api_key>
|
||||
```
|
||||
|
||||
* Run the agent in ADK Web UI
|
||||
|
||||
* Send below queries:
|
||||
* What can you do for me ?
|
||||
* Seach `XXXX` in my pages.
|
15
contributing/samples/mcp_stdio_notion_agent/__init__.py
Executable file
15
contributing/samples/mcp_stdio_notion_agent/__init__.py
Executable file
@ -0,0 +1,15 @@
|
||||
# Copyright 2025 Google LLC
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
from . import agent
|
48
contributing/samples/mcp_stdio_notion_agent/agent.py
Normal file
48
contributing/samples/mcp_stdio_notion_agent/agent.py
Normal file
@ -0,0 +1,48 @@
|
||||
# Copyright 2025 Google LLC
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
import json
|
||||
import os
|
||||
|
||||
from dotenv import load_dotenv
|
||||
from google.adk.agents.llm_agent import LlmAgent
|
||||
from google.adk.tools.mcp_tool.mcp_toolset import MCPToolset
|
||||
from google.adk.tools.mcp_tool.mcp_toolset import StdioServerParameters
|
||||
|
||||
load_dotenv()
|
||||
|
||||
NOTION_API_KEY = os.getenv("NOTION_API_KEY")
|
||||
NOTION_HEADERS = json.dumps({
|
||||
"Authorization": f"Bearer {NOTION_API_KEY}",
|
||||
"Notion-Version": "2022-06-28",
|
||||
})
|
||||
|
||||
root_agent = LlmAgent(
|
||||
model="gemini-2.0-flash",
|
||||
name="notion_agent",
|
||||
instruction=(
|
||||
"You are my workspace assistant. "
|
||||
"Use the provided tools to read, search, comment on, "
|
||||
"or create Notion pages. Ask clarifying questions when unsure."
|
||||
),
|
||||
tools=[
|
||||
MCPToolset(
|
||||
connection_params=StdioServerParameters(
|
||||
command="npx",
|
||||
args=["-y", "@notionhq/notion-mcp-server"],
|
||||
env={"OPENAPI_MCP_HEADERS": NOTION_HEADERS},
|
||||
)
|
||||
)
|
||||
],
|
||||
)
|
Loading…
Reference in New Issue
Block a user