SkillAgentSearch skills...

agent-wire

An MCP server that lets AI agents read the web and 31 sites (Reddit, X, GitHub, YouTube, Hacker News, arXiv and more) as compact Markdown and write cited briefs of the last 30 days. Runs on your machine. No API keys for the common cases.

Install / Use

claude mcp add uncoalesced -- npx -y github:uncoalesced/agent-wire

If the server publishes to npm under a different name, use that package instead — check the repo README.

About this skill
🔌

MCP Server

Model Context Protocol server

Quality Score

74/100

Supported Platforms

Claude Code
Claude Desktop

Our assessment of agent-wire

agent-wire scores 74/100 on our quality scale, 847th of 939 AI & Machine Learning skills we index.

Its MCP Server is 44 KB long, well organised into 25 sections with 41 code examples: long enough that it reads more like full documentation than a focused instruction file, which agents can find harder to follow.

It has 3 GitHub stars, so there is little community track record yet; judge it on its content.

Substance
21/30
Structure
20/20
Description
15/15
Adoption
3/20
Freshness
15/15

Maintenance, license and trust

  • The repository was last updated 3 days ago, so agent-wire is actively maintained.
  • It is released under the MIT license, a permissive license that allows use, modification and commercial use with attribution.
  • Its trust signals score 92/100, with 1 caution from licensing, adoption, age or documentation. These come from repository metadata, not a code audit — read the skill file before letting an agent act on it.

Safety scan

No issues found

Our scan of the whole file found no instruction hijacking, hidden characters, credential access, data exfiltration or destructive commands.

Automated pattern scan on 2026-11-02. It catches known dangerous patterns, not every risk — read a skill before letting an agent act on it.

agent-wire compared with similar skills

All 4 of these similar skills score higher than agent-wire; compare them before choosing.

SkillScoreStarsUpdatedFormat
agent-wire (this skill)by uncoalesced7433d agoMCP Server
claude-memby thedotmack100109.6ktodayCLAUDE.md
Agent-Reachby Panniantong100107.7k1d agoCLAUDE.md
Understand-Anythingby Egonex-AI10089.7k7d agoCLAUDE.md
headroomby headroomlabs-ai10078.6k1d agoCLAUDE.md

Frequently asked questions

How do I install agent-wire?
Run claude mcp add uncoalesced -- npx -y github:uncoalesced/agent-wire. The install tabs above show the steps for each supported agent.
Which AI agents does agent-wire work with?
It is written for Claude Code and Claude Desktop, as a MCP Server file. Other agents that read the same format can often use it too.
Is agent-wire safe to use?
Our scan of the whole file found no instruction hijacking, hidden characters, credential access, data exfiltration or destructive commands. It is MIT-licensed and scores 92/100 on trust signals. Skills are instructions an agent will follow, so read the file before installing it and do not approve commands you do not understand.
Is agent-wire still maintained?
The repository was last updated 3 days ago, so agent-wire is actively maintained.
<!-- Engineered by uncoalesced --> <p align="center"> <picture> <source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/uncoalesced/agent-wire/main/assets/agent-wire-banner.png"> <source media="(prefers-color-scheme: light)" srcset="https://raw.githubusercontent.com/uncoalesced/agent-wire/main/assets/agent-wire-banner-light.png"> <img alt="agent-wire: agents wired to the live internet. One MCP server, 31 platforms, local." src="https://raw.githubusercontent.com/uncoalesced/agent-wire/main/assets/agent-wire-banner.png" width="100%"> </picture> </p> <p align="center"> <a href="https://pypi.org/project/agent-wire-cli/"><img alt="PyPI" height="20" src="https://img.shields.io/pypi/v/agent-wire-cli?label=pypi&color=f2913f&cacheSeconds=3600"></a> <a href="https://pypi.org/project/agent-wire-cli/"><img alt="Python" height="20" src="https://img.shields.io/python/required-version-toml?tomlFilePath=https%3A%2F%2Fraw.githubusercontent.com%2Funcoalesced%2Fagent-wire%2Fmain%2Fpyproject.toml&label=python&color=b0723f"></a> <a href="https://github.com/uncoalesced/agent-wire/actions/workflows/ci.yml"><img alt="CI" height="20" src="https://img.shields.io/github/actions/workflow/status/uncoalesced/agent-wire/ci.yml?branch=main&label=ci"></a> <a href="LICENSE"><img alt="MIT license" height="20" src="https://img.shields.io/badge/license-MIT-f5b884"></a> <a href="https://m8ven.ai/mcp/uncoalesced/agent-wire?s=readme"><img alt="M8ven Score" height="20" src="https://m8ven.ai/badge/mcp/uncoalesced/agent-wire"></a> </p> <p align="center"> <a href="https://aiagentslisting.com/mcp/agent-wire"><img alt="Agent Wire on AI Agents Listing" height="50" src="https://aiagentslisting.com/agent-wire/badge.svg?claim=a5f96deb57e24160a5d0f3fa90cedf9b"></a> </p> <p align="center"> <a href="#the-problem-and-the-fix">Problem</a> · <a href="#installation">Install</a> · <a href="#how-it-works">How it works</a> · <a href="#where-it-works">Sites</a> · <a href="#token-efficiency">Tokens</a> · <a href="#where-this-is-going">Future</a> · <a href="#last-30-days-research">Research</a> · <a href="#privacy-and-prompt-injection">Privacy</a> </p>

agent-wire is an MCP server that lets an AI agent read the live web and 31 platforms from your own machine. Pages come back as small, clean text instead of raw HTML, your logins stay out of the model's context, and the common cases need no API keys. It's free, MIT licensed, and nothing is hosted.

[!NOTE] It's young. If a site stops parsing, please open an issue with the URL.

People use it to ask what Reddit is saying about something today and get today's threads with scores and the best comments, to pull feeds, trending repos and search results as Markdown, to get stock, crypto, prediction-market and GitHub numbers for a quick chart, and to get a morning digest of topics they follow.

The problem and the fix

What goes wrong today

Ask an agent what people are saying about a library this week and you get an answer from training data that stopped months ago. Give it a fetch tool and it runs into four other problems.

First, it gets blocked. In our own tests a plain fetch of Hacker News, Stack Overflow and Medium came back 419 or 403. Cloudflare sites answer with a "Just a moment..." page that no plain HTTP client can read. Reddit refuses anonymous JSON from many networks, including ours.

Second, it reads far too much. One GitHub issue (uv #1495) is 197,594 tokens of HTML. A YouTube video page is about 533,000. The model pays for every one of those tokens and then has less room for the task.

Third, it leaks. A tool that scrapes a logged-in page can hand your username, email and notifications to the model provider along with the content. Pages can also carry text a human never sees (display:none blocks, zero-width and Unicode tag characters) written to instruct your agent.

Fourth, it makes up sources. Asked for citations, models invent them, or cite a real-looking link that is dead or doesn't say what they claim.

The usual workarounds each trade one of these for another. A pile of CLIs (yt-dlp, gh and friends) pays a cold start on every call. A cloud reader sees every URL you read. A browser-cookie scraper fixes the login wall and creates the leak.

How we fixed it

agent-wire is one warm async Python process on your machine. Routing, bot walls, logins, privacy scrubbing and compression all happen inside it, so the agent's first call usually returns usable text.

  • For blocked pages, every read goes through a four-stage waterfall: the site's own API, then browser-grade TLS and HTTP/2 fingerprints, then mirrors and the Wayback Machine, then a local headless browser if you installed one. It remembers which stage worked last for each site and starts there.
  • For too many tokens, pages are cut down before the model sees them. Hidden text is removed, sections and comments are ranked against your query (BM25, weighted by votes), tracking links are cleaned, and the result is packed as dense Markdown inside a token budget. Reading the same page twice returns only what changed.
  • For leaks, cookies come only from a local encrypted vault that you fill with wire auth login <site>. An early build attached a saved session during a test sweep without being asked, so now nothing reads your browsers on its own, not even on a 401. Account paths (/messages, /settings, /billing) are refused before a request leaves your machine, and tokens, cookies and private IPs are scrubbed from what comes back. Hidden text is stripped on the way in, and every result is wrapped as quoted, untrusted data.
  • For made-up sources, the skill tells the agent to write [[UNSOURCED]] after any claim it can't source. wire_cite then opens every cited link and reports which are dead, archived, soft 404s, bot-blocked or missing the quoted text. Those link checks are always anonymous, so a saved login is never sent to a page you only cited.
  • For many round trips, Code Mode lets the agent write one short script against a typed wire.* API. Only the script's return value comes back to the model.

Installation

You need uv. From the folder you work in, run:

uvx agent-wire-cli install --client auto

It finds the agent clients on your machine, shows what it will write, and asks first (--yes skips the question). Restart your agent afterwards. On PyPI the package is agent-wire-cli, because agent-wire was too close to an existing name. The shell command is wire.

To pick one client, use --client <name>. Add --dry-run to see the changes first. Existing config is merged, never overwritten, and a JSON or TOML config file that doesn't parse is refused instead of replaced. Open your agent below.

<details> <summary><b>Claude Code</b></summary>
uvx agent-wire-cli install --client claude-code

This writes .mcp.json, .claude/skills/agent-wire/SKILL.md and .claude/agents/wire-worker.md in the current project. Use --global to write to ~/.claude.json and ~/.claude/ so every project gets it, or --project PATH to target another repo.

If you prefer the plugin, it bundles the server, a skill that tells Claude when to use it (pasted links, "what are people saying about...", live prices), and a wire-worker subagent that reads many pages without filling the main context:

/plugin marketplace add uncoalesced/agent-wire
/plugin install agent-wire@agent-wire

Use one route or the other, not both. Restart Claude Code, then run /mcp and look for agent_wire.

</details> <details> <summary><b>Claude Desktop</b></summary>
uvx agent-wire-cli install --client claude-desktop

This merges an agent_wire entry into claude_desktop_config.json:

  • Windows: %APPDATA%\Claude\
  • macOS: ~/Library/Application Support/Claude/
  • Linux: ~/.config/Claude/

Quit Claude Desktop completely and reopen it. No skill file is installed, because Desktop works from the tool descriptions and the server's own instructions. If the server shows as failed, the app probably can't find uvx. Replace "command": "uvx" in the config with the full path from where uvx (Windows) or which uvx (macOS, Linux).

</details> <details> <summary><b>Codex</b></summary>
uvx agent-wire-cli install --client codex

This adds an [mcp_servers.agent_wire] entry to ~/.codex/config.toml and puts the skill in skills/agent-wire/ next to it. If your project already has a .codex/ folder, it writes there instead (unless you pass --global). On a plan with tight rate limits, add --profile local to cap every answer at 800 tokens.

To add it by hand, append this to the config:

[mcp_servers.agent_wire]
command = "uvx"
args = ["agent-wire-cli", "serve"]
</details> <details> <summary><b>ChatGPT</b></summary>

ChatGPT can't start a local process, so it reaches agent-wire over HTTPS. agent-wire runs in remote mode on your machine and you give ChatGPT a way to reach it. Remote mode is anonymous only: it leaves out wire_me, never opens your login vault, never attaches a saved session, and refuses to fetch private or loopback addresses. Nothing tied to your accounts or your network can be reached from outside.

uvx agent-wire-cli install --client chatgpt

This writes no files. It prints the connector values you need: the server URL, the transport (streamable HTTP) and the token if you set one. Then start the server:

uvx agent-wire-cli serve --transport http --remote --port 8765

Then, following OpenAI's guide for custom MCP servers:

  1. Open ChatGPT Plugins (chatgpt.com/plugins), select the plus button, then Add custom MCP server.
  2. Enter a name and description, for example agent-wire.
  3. Under Connection, choose Tunnel and pick your Secure MCP Tunnel (OpenAI's guide covers setting one up with tunnel-client). This keeps the server off the public internet. If you'd rather use a public endpoint, enter its HTTPS URL ending in /mcp and put authentication in front of it. --token YOUR_TOKEN makes the server itself require Authorization: Bearer YOUR_TOKEN.
  4. Set authentication, accept the risk warning, then select Create as a plugin.
  5. Check the tools ChatGPT lists. You should see wire_read, wire_search, wire_feed, wire_research, wire_cite, wire_run and wire_status, and no wire_me.

Your workspace policies decide whether custom MCP servers are allowed at all.

</details> <details> <summary><b>Gemini (Gemini Enterprise)</b></summary>

Gemini Enterprise connects to custom MCP servers from the admin console, over HTTPS only. It supports streamable HTTP, not the older SSE transport. Remote mode gives it that, with the same limits as the ChatGPT route: anonymous only, no wire_me, no vault, no private addresses.

uvx agent-wire-cli install --client gemini-enterprise

This writes no files. It prints the values for the console form. Start the server:

uvx agent-wire-cli serve --transport http --remote --port 8765

Then make it reachable in one of two ways. A private server can be registered and routed through Agent Gateway, which also allows private certificate authorities. Or put the server behind a public HTTPS URL with a certificate from a publicly trusted CA, with OAuth 2.0 handled by a proxy in front of it. Don't choose No authentication on a public URL, because anyone who finds it could fetch pages through your connection.

Before you start, you need the Discovery Engine Editor role (roles/discoveryengine.editor), the organization policy that blocks custom MCP data stores overridden, and your server's domain allowed. Then, in the Google Cloud console:

  1. Open Gemini Enterprise, select Apps, and choose your app.
  2. Select Connected Data Stores, then New data store.
  3. Search for Custom MCP Server and select Add MCP server.
  4. Enter t

Truncated for display — read the full file on GitHub.

Related Skills

View on GitHub
GitHub Stars3
CategoryAI
Updated3d ago
Forks0

Languages

Python

Trust signals

92/100

From repository metadata: license, adoption, age and documentation. Not a code audit — see the Safety scan above for what the skill file itself contains.

1 low