Connect an Agent
Point any MCP-capable AI agent framework at the Edison Watch gateway - one URL, no header wiring. The canonical connection guide behind every framework quickstart.
If you're building your own agent - rather than connecting a packaged app like Claude or ChatGPT - you connect it to Edison the same way you'd connect to any remote MCP server: point your framework's MCP client at your Edison gateway URL. Every tool from every server you've enabled shows up as a normal MCP tool, and every call your agent makes is monitored and policy-enforced in real time.
This page is the canonical connection guide. Each framework quickstart in this section is a thin wrapper around what's here - read this once, then jump to your framework.
The one thing to understand: your credential lives in the URL
Edison does not use an Authorization header for the MCP connection. Your API key is a segment of the connection URL itself:
https://mcp.edison.watch/mcp/<your-api-key>/?client=<label>
└──────────┬───────────┘└─┬─┘└─────┬──────┘└┬┘└──────┬──────┘
gateway host fixed your API key │ optional session
(per-org, see below) prefix (edison_...) │ label for the
trailing slash dashboard
(required)Anything that can open a streamable-HTTP MCP connection to a URL can connect to Edison - no custom headers, no OAuth client, no token exchange. That makes Edison compatible with essentially every agent framework, including the many that don't (yet) let you set request headers.
Treat your connection URL like a password. Anyone who has it can call MCP tools as you, subject to your Access Control Levels and policy rules. Don't commit it to source control - load it from an environment variable.
Don't add an Authorization: Bearer header to your MCP client - Edison reads the key only from the URL path, so a bearer header does nothing here. (Edison does use Authorization: Bearer for its management REST API at /api/v1/..., but that's a separate surface from the MCP connection.)
1. Get your connection URL
Your personal URL embeds your API key (format: edison_ followed by ~40 characters). Get it from the Edison Watch dashboard: open Settings, find the Api key / MCP URL section, and click Get MCP URL. You can also copy the base URL from the Edison Watch desktop app's Copy MCP URL menu.
The gateway host differs per environment - release is mcp.edison.watch, while demo and self-hosted deployments use their own host. Always copy the URL from your dashboard or desktop app rather than hardcoding mcp.edison.watch.
Store it as an environment variable so your code never contains the key literally:
export EDISON_MCP_URL="https://mcp.edison.watch/mcp/edison_your_key_here/?client=my-agent"The optional ?client=<label> suffix tags the session in the Edison dashboard so you can tell this agent's traffic apart from your other connectors. Use any short label you like (my-agent, langgraph-prod, etc.).
2. Point your framework at it
Every framework in this section boils down to the same move: hand EDISON_MCP_URL to that framework's streamable-HTTP MCP client and let it discover the tools. Here's the shape in raw Python, using the official MCP SDK - every higher-level framework wraps exactly this:
import os
from mcp import ClientSession
from mcp.client.streamable_http import streamablehttp_client
async def main():
url = os.environ["EDISON_MCP_URL"]
async with streamablehttp_client(url) as (read, write, _):
async with ClientSession(read, write) as session:
await session.initialize()
tools = await session.list_tools()
print([t.name for t in tools.tools]) # tools from every enabled serverNote there is no headers= argument - the credential is already in url. Pick your framework below for the idiomatic version.
Edison's gateway speaks streamable-HTTP only. If a framework asks you to choose a transport, choose streamable-HTTP (sometimes written http or streamable_http) - not SSE, which is deprecated in the MCP spec and not served by the gateway.
Choose your framework
OpenAI Agents SDK
Python & TypeScript. OpenAI's official multi-agent SDK.
Claude Agent SDK
Python & TypeScript. Anthropic's agent SDK behind Claude Code.
LangChain / LangGraph
Python & JS. The largest agent ecosystem.
Pydantic AI
Python. Type-safe, Pydantic-native agents.
LlamaIndex
Python & TS. Data- and retrieval-centric agents.
Google ADK
Python. Google's Agent Development Kit for Gemini.
Microsoft Agent Framework
Python & .NET. The successor to Semantic Kernel + AutoGen.
Vercel AI SDK
TypeScript. The dominant SDK for AI app developers.
Mastra
TypeScript. Batteries-included TS agent framework.
Cloudflare Agents SDK
TypeScript. Stateful agents on Workers + Durable Objects.
DSPy
Python. Programming - not prompting - language models.
Encrypted secrets
Some enabled servers use zero-knowledge-encrypted secrets. To let the gateway decrypt those, a client may send an optional x-edison-secret-key header - separate from your API key, and only usable by frameworks that allow custom request headers. Edison still connects without it; only servers that need an encrypted secret fail to decrypt. Each framework page below shows exactly where to set it.
Devin
Add Edison Watch to Devin as a custom remote MCP server, in the cloud MCP Marketplace or the Devin CLI.
OpenAI Agents SDK
Connect an OpenAI Agents SDK agent (Python or TypeScript) to Edison Watch as a streamable-HTTP MCP server, and keep a stable session per conversation so data-leak protection holds across every turn.

