Venn Your Universal MCP Server
Overview
You are the architectural bridge between the user and their enterprise SaaS stack. You operate via the Venn MCP gateway to coordinate tasks across Atlassian, Google Workspace, Notion, Box, and other enterprise software tools.
⚡️ Quick Start Prompts
Copy and paste these to get started:
- * First Time Setup: INLINECODE0
- Reauthenticate: INLINECODE1
- Discovery: INLINECODE2
Core Activation Loop
When
@venn is mentioned, or the user asks for data from a Venn-connected SaaS service (Gmail, Jira, Notion, etc.):
- 1. Verify Environment: Check if
VENN_UNIVERSAL_URL is set. If not, follow the Setup Flow. - The Discovery Loop: Since Venn is a "Server of Servers," you must discover tools dynamically:
-
Search: Use
~/.local/bin/vennporter call venn.search_tools --args '{"query":"..."}' for every new request.
-
Describe: Use
~/.local/bin/vennporter call venn.describe_tools to validate JSON schemas before execution.
-
Governance: Check for
write_operation: "audit". If present, you MUST pause for user confirmation.
Setup Request with Venn Universal URL & Bootstrap
If the user provides a URL in response to a setup request:
- 1. Save & Sync: Confirm you have saved the URL as an environment variable INLINECODE8
- Register: Immediately run
~/.local/bin/vennporter config add venn --url <URL> --auth oauth --deviceCodeGrant. - Authenticate: Follow Venn Authentication.
- Verify Health: Run
~/.local/bin/vennporter list and confirm the venn status is "ok" before proceeding.
Setup Request with Missing Venn Universal URL
If
VENN_UNIVERSAL_URL is missing or the connection is broken:
- 1. Request URL: Prompt the user for their Venn Universal URL from Venn.ai.
- Register Server: Once provided, run:
~/.local/bin/vennporter config add venn --url "$VENN_UNIVERSAL_URL" --auth oauth --deviceCodeGrant
- 3. Initiate OAuth: Check browser availability (see above).
-
Browser available: Run
~/.local/bin/vennporter auth venn to launch the browser authorization.
-
No browser: Follow
Headless Authentication below.
- 4. Verify Health: Run
~/.local/bin/vennporter list and confirm the venn status is "ok" before proceeding.
Venn Authentication
Step 1 — Build vennporter (once)
Check if the build already exists. If
~/.local/share/vennporter/dist/cli.js is missing, run:
CODEBLOCK0
Step 2 — Authenticate
In a sub-process, run the following command:
CODEBLOCK1
Polling sub-process for outcome (timeout is 3 minutes)
- 1. Every 5 seconds, poll sub-process for output.
- If
Authorization complete for 'venn' is received, then the sub-process is complete. - If
To authorize, visit [[auth_url]] is received, inform user to visit auth_url to authenticate Venn. - If
Failed to authorize 'venn' is received DO NOT automatically retry authenticating. Inform user it did not complete. - Go back to step 1 until success or timeout.
Execution Protocols
1. High-Efficiency Workflows
Always prefer
execute_workflow for multi-step tasks to reduce latency.
- - Context Guardrail: Extract only necessary keys (e.g.,
id, subject, summary). Do not return full raw API payloads to the user. - Timeout Management: Enterprise SaaS calls can be slow. If using a
run tool, set a 30s timeout for Venn workflows.
2. Single Tool Calls via venn.execute_tool
For individual operations, use this syntax:
CODEBLOCK2
3. Discover which services are connected to Venn via venn.help tool
To list all services that user has connected to their Venn account, use this syntax:
CODEBLOCK3
Venn 您的通用 MCP 服务器
概述
您是用户与其企业 SaaS 堆栈之间的架构桥梁。您通过 Venn MCP 网关进行操作,协调 Atlassian、Google Workspace、Notion、Box 以及其他企业软件工具之间的任务。
⚡️ 快速入门提示
复制并粘贴以下内容即可开始:
- * 首次设置: @venn setup. Here is my URL: [粘贴您的通用URL]
- 重新认证: @venn auth
- 发现: @venn 显示我所有已连接的服务
核心激活循环
当提及 @venn,或用户请求来自 Venn 连接的 SaaS 服务(Gmail、Jira、Notion 等)的数据时:
- 1. 验证环境: 检查是否设置了 VENNUNIVERSALURL。如果没有,请按照设置流程操作。
- 发现循环: 由于 Venn 是一个服务器的服务器,您必须动态发现工具:
-
搜索: 对于每个新请求,使用 ~/.local/bin/vennporter call venn.search_tools --args {query:...}
-
描述: 在执行前使用 ~/.local/bin/vennporter call venn.describe_tools 验证 JSON 模式。
-
治理: 检查是否存在 write_operation: audit。如果存在,您必须暂停等待用户确认。
使用 Venn 通用 URL 和引导程序进行设置
如果用户响应设置请求时提供了 URL:
- 1. 保存并同步: 确认您已将 URL 保存为环境变量 VENNUNIVERSALURL
- 注册: 立即运行 ~/.local/bin/vennporter config add venn --url --auth oauth --deviceCodeGrant。
- 认证: 按照 Venn 认证流程操作。
- 验证健康状态: 运行 ~/.local/bin/vennporter list 并确认 venn 状态为ok后再继续。
缺少 Venn 通用 URL 的设置请求
如果缺少 VENN
UNIVERSALURL 或连接中断:
- 1. 请求 URL: 提示用户从 Venn.ai 提供他们的 Venn 通用 URL。
- 注册服务器: 提供后,运行:
~/.local/bin/vennporter config add venn --url $VENN
UNIVERSALURL --auth oauth --deviceCodeGrant
- 3. 启动 OAuth: 检查浏览器可用性(见上文)。
-
浏览器可用: 运行 ~/.local/bin/vennporter auth venn 启动浏览器授权。
-
无浏览器: 按照下面的
无头认证流程操作。
- 4. 验证健康状态: 运行 ~/.local/bin/vennporter list 并确认 venn 状态为ok后再继续。
Venn 认证
步骤 1 — 构建 vennporter(仅一次)
检查构建是否已存在。如果缺少 ~/.local/share/vennporter/dist/cli.js,运行:
bash ~/.openclaw/workspace/skills/venn/scripts/install-vennporter.sh
步骤 2 — 认证
在子进程中,运行以下命令:
bash
~/.local/bin/vennporter auth venn
轮询子进程以获取结果(超时时间为 3 分钟)
- 1. 每 5 秒轮询子进程的输出。
- 如果收到 Authorization complete for venn,则子进程完成。
- 如果收到 To authorize, visit [[authurl]],通知用户访问 authurl 以认证 Venn。
- 如果收到 Failed to authorize venn,不要自动重试认证。通知用户认证未完成。
- 返回步骤 1,直到成功或超时。
执行协议
1. 高效工作流
对于多步骤任务,
始终优先使用 execute_workflow 以减少延迟。
- - 上下文护栏: 仅提取必要的键(例如 id、subject、summary)。不要向用户返回完整的原始 API 负载。
- 超时管理: 企业 SaaS 调用可能较慢。如果使用 run 工具,为 Venn 工作流设置 30 秒超时。
2. 通过 venn.execute_tool 进行单工具调用
对于单个操作,使用以下语法:
bash
~/.local/bin/vennporter call venn.execute
tool --args {serverid:atlassian,tool
name:atlassianuser
info,toolargs:{}}
3. 通过 venn.help 工具发现连接到 Venn 的服务
要列出用户已连接到其 Venn 账户的所有服务,使用以下语法:
bash
~/.local/bin/vennporter call venn.help --args {action:LIST_SERVERS}