Search / com.e2llm/element-to-llm
E2LLM
R2· OAuth, onceE2LLM gives your AI eyes and hands in a real browser: structured perception (SiFR) plus action.
v1.5.78 · active · repository · website · descriptor JSON · versions
Search / com.e2llm/element-to-llm
R2· OAuth, onceE2LLM gives your AI eyes and hands in a real browser: structured perception (SiFR) plus action.
v1.5.78 · active · repository · website · descriptor JSON · versions
{
"mcpServers": {
"element-to-llm": {
"type": "http",
"url": "https://mcp.e2llm.com/mcp"
}
}
}claude mcp add --transport http element-to-llm https://mcp.e2llm.com/mcp[mcp_servers.element-to-llm]
url = "https://mcp.e2llm.com/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"element-to-llm": {
"type": "remote",
"url": "https://mcp.e2llm.com/mcp",
"enabled": true
}
}
}{
"mcpServers": {
"element-to-llm": {
"type": "http",
"url": "https://mcp.e2llm.com/mcp"
}
},
"deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=element-to-llm&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vbWNwLmUybGxtLmNvbS9tY3AifQ%3D%3D"
}{
"servers": {
"element-to-llm": {
"type": "http",
"url": "https://mcp.e2llm.com/mcp"
}
}
}{
"mcpServers": {
"element-to-llm": {
"httpUrl": "https://mcp.e2llm.com/mcp"
}
}
}extensions:
"element-to-llm":
enabled: true
name: "element-to-llm"
type: streamable_http
uri: "https://mcp.e2llm.com/mcp"
timeout: 300
protocol.modernnewest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28protocol.statelessonly applies to 2026-07-28 serversprotocol.transportstreamable HTTPprotocol.list_ttlonly applies to 2026-07-28 serversauth.prmProtected Resource Metadata (RFC 9728) publishedauth.as_metadataauthorization server metadata reachableauth.cimdonly Dynamic Client Registration, deprecated in 2026-07-28 in favour of CIMDauth.secret_in_urlno templated URLtools.descriptions, tools.description_length, tools.schemas, tools.annotations, tools.directory_hints, tools.token_cost, tools.api_dumptool list unknown (behind auth, not probed, or empty)stability.changes, stability.rug_pulltool list unknowndeps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI packageNo tool definition changes recorded. A server's first observation is its baseline; later probes record what changes.
Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.
+repository +namespace-matches-repo +dns-namespace +website +reachable +uptime-100% ~updated-87d-ago
Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.
| remote | auth | reachable | uptime 30d | p50 | protocol | last ok |
|---|---|---|---|---|---|---|
https://mcp.e2llm.com/mcp streamable-http | oauth2 AS: https://mcp.e2llm.com | yes | 100% | 1268 ms | – | 2026-10-19 |
https://api.e2llm.com/mcp streamable-http | api_key ${ELEMENT_TO_LLM_TOKEN} | no (1 failures) | 29% | 1003 ms | 2025-11-25 | 2026-10-19 |
No tools observed. Tools appear once a credential-free probe can list them.
Schemas: list_tools.
{
"name": "com.e2llm/element-to-llm",
"_meta": {
"io.modelcontextprotocol.registry/publisher-provided": {
"auth": "Two connection modes on the same server: OAuth (interactive browser login) at mcp.e2llm.com/mcp, and static Bearer mk_ API keys at api.e2llm.com/mcp.",
"skill": "Working-discipline skill for models driving these tools: skills/sifr/SKILL.md (https://github.com/e2llm/e2llm-sifr/blob/main/skills/sifr/SKILL.md) — verify-don't-guess, stale-ID re-verification, cursor draining, untrusted page content. Claude Code: copy into ~/.claude/skills/; other clients: include in agent instructions.",
"tools": [
{
"name": "sifr_capture",
"title": "Capture Page",
"annotations": {
"readOnlyHint": true,
"openWorldHint": true,
"destructiveHint": false
},
"description": "Capture a browser page as structured SIFR data — front-loaded summary plus high-salience nodes."
},
{
"name": "query",
"title": "Query Session",
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"destructiveHint": false
},
"description": "Filter the current session without re-capturing — by tag, salience, text, selector, or section."
},
{
"name": "read_page",
"title": "Read Page Text",
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"destructiveHint": false
},
"description": "Read a captured page as markdown text in reading order, wrapped in untrusted-content tags."
},
{
"name": "inspect",
"title": "Inspect Element",
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"destructiveHint": false
},
"description": "Full details for one element: real CSS selector, text, attributes, styles, layout, relations."
},
{
"name": "list_tabs",
"title": "List Tabs",
"annotations": {
"readOnlyHint": true,
"openWorldHint": false,
"destructiveHint": false
},
"description": "List open browser tabs with their IDs, URLs, and titles."
},
{
"name": "close_tab",
"title": "Close Tab",
"annotations": {
"readOnlyHint": false,
"openWorldHint": false,
"destructiveHint": true
},
"description": "Close a browser tab by ID. Irreversible; may require approval per session posture."
},
{
"name": "explore",
"title": "Explore",
"annotations": {
"readOnlyHint": true,
"openWorldHint": true,
"destructiveHint": false
},
"description": "Non-state-changing: scroll, hover, or recapture a subtree — returns only the diff."
},
{
"name": "act",
"title": "Act",
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"destructiveHint": true
},
"description": "One state-changing action on the live page: click, type, select, navigate, or drag. May require approval."
},
{
"name": "batch_act",
"title": "Batch Act",
"annotations": {
"readOnlyHint": false,
"openWorldHint": true,
"destructiveHint": true
},
"description": "Execute multiple actions in sequence, then observe mutations once. May require approval."
}
],
"format": "SiFR — Salience-Indexed, Flat Relations (see SIFR.md)"
}
},
"title": "E2LLM",
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
"remotes": [
{
"url": "https://mcp.e2llm.com/mcp",
"type": "streamable-http"
},
{
"url": "https://api.e2llm.com/mcp",
"type": "streamable-http",
"headers": [
{
"name": "Authorization",
"isSecret": true,
"isRequired": true,
"description": "Bearer mk_… static API key from your e2llm.com dashboard. Use this api. endpoint for programmatic / CI clients; use the mcp. endpoint above for interactive browser OAuth login (no header required)."
}
]
}
],
"version": "1.5.78",
"repository": {
"url": "https://github.com/e2llm/e2llm-sifr",
"source": "github"
},
"websiteUrl": "https://e2llm.com",
"description": "E2LLM gives your AI eyes and hands in a real browser: structured perception (SiFR) plus action."
}