close

DEV and MLH,
inside your coding agent

DevRelay is an MCP server and skill pack for your coding agent. Enter hackathons, publish your work, find community wisdom, and claim free sponsor credits without leaving your session.

Installs the gateway, connects the agents it finds, and adds the skills.

Beta · New skills ship often and update automatically.

Works with

Antigravity
Claude Code
OpenAI Codex
Cursor
OpenCode
& more

01What it does

What your agent can do with DevRelay

Ask for it, or let your agent bring it up when it fits the work. It checks with you before it registers, claims, or publishes anything.

How it works

DevRelay is a local MCP server plus a set of skills. The server talks to DEV and MLH for your agent, and the skills tell your agent when to use it. One install sets up every supported agent on your machine, and both keep themselves up to date.

  • Enter hackathons Register for MLH events, submit your project, and enter prize challenges.
  • Use sponsor perks Claim credits and install sponsors' Agent Skills at MLH events you've joined.
  • Publish to DEV Turn what you just shipped into a DEV draft or a DEV Challenge entry.
  • Get real answers Search DEV for posts and postmortems from developers who hit the same problem.
  • Never miss an event Current dates and rules for Hacktoberfest, DEV Challenges, and Global Hack Week.
  • Share the session Save an agent transcript to DEV and embed it in a post.

Submit your hackathon project from your repo

Your agent writes up the project from your code, submits it to your MLH event, and enters it in the prize challenges that fit.

Agent Session • Hackathon Submission
You
We're done. Submit this to Summit Hacks and enter it in any sponsor challenges it fits.
⚑ devrelay.submit_project_to_event({ project_id: "…", event_id: "…" })
⚑ devrelay.enter_challenge({ challenge_id: "…" })
Your agent via DevRelay
Submitted Pantry Pal to Summit Hacks 2026 and entered it in Best Use of MongoDB Atlas and Best Use of Gemini API. Want a DEV post about the build too?
πŸ† MLH submission
Submitted
βœ“ Project written up from the repo Pantry Pal
βœ“ Submitted to event Summit Hacks 2026
βœ“ Best Use of MongoDB Atlas entered
βœ“ Best Use of Gemini API entered
Submitted events.mlh.com/events/summit-hacks-2026
View on MLH ↗

Claim credits for the stack you're about to spin up

Building at an MLH event? When you reach for hosting, a database, or an AI API, your agent checks what the event's sponsors are offering and asks before it claims anything.

Agent Session • New Project Setup
You
Give this study-buddy chatbot memory so it remembers each user between sessions. It's for this weekend's hackathon, so keep it cheap.
⚑ devrelay.list_event_offers({ event_id: "…" })
Your agent via DevRelay
Backboard is offering $50 in API credits at your hackathon, and its assistants keep persistent memory out of the box. Want me to claim it? Then I'll put BACKBOARD_API_KEY in .env and wire up the first assistant.
🎟️ Sponsor offer
Eligible
Backboard AI memory & LLM API
$50 in API credits
Summit Hacks 2026 sponsor • New accounts only
Promo BACKBOARDHACK50 claimed
βœ“ Claimed with your OK 1 per person
βœ“ Redeem at backboard.io/redeem

Publish what you just built

When a feature ships or a tricky bug finally makes sense, your agent offers to write it up as a DEV draft, with code and tags from the diff.

Agent Session • Post Drafting
You
We just moved our caching layer to Redis Streams. Draft a DEV post about it with before/after snippets.
⚑ devrelay.create_article({ title: "Resilient Caching…", published: false })
Your agent via DevRelay
Saved a DEV draft with before/after code, tagged #redis #typescript #performance. It's marked as AI-assisted and stays private until you publish.
✍️ DEV draft
Saved to drafts

Building Resilient Caching with Redis Streams in Node.js

5 min read
async function consumeStream(streamKey: string) {
  // Wait up to 5s for new entries
  const entries = await redis.xread('BLOCK', 5000, 'STREAMS', streamKey, '$');
  return processBatch(entries);
}
Draft #89210 Preview on DEV ↗

Know what's on across MLH and DEV this month

Hacktoberfest, Global Hack Week, DEV Challenges: your agent checks current dates and rules instead of guessing from its training data.

Agent Session • Community Radar
You
Anything going on in the community this month I should be building for?
⚑ devrelay.get_challenges()
⚑ devrelay.get_events()
Your agent via DevRelay
Hacktoberfest starts Oct 1, and this year it's about open-source AI. Weekly DEV challenges and Global Hack Week each earn stickers, and three gets you a real pack. The launch weekend challenge fits this project. Want the rules?
πŸ“‘ Upcoming events
This month
Hacktoberfest 2026 Starts Oct 1
MLH × DEV • Collect 3 stickers, get a real pack
DEV Launch Weekend Challenge New each week
DEV • 1 sticker • Build with open-weight models
Global Hack Week: Hacktoberfest In October
MLH • Online • Livestreams, daily challenges, stickers

Debug with answers from people who hit the same wall

Before it guesses at a fast-moving framework, your agent searches DEV write-ups and postmortems, applies what worked, and cites its sources.

Agent Session • Community Debugging
You
SQLx keeps running out of pool connections under load. Has anyone on DEV solved this?
⚑ devrelay.search_dev_to_semantic({ query: "sqlx pool timeout" })
Your agent via DevRelay
Three DEV postmortems point to the same fix: cap the pool at about twice your core count and set an acquire timeout. Applying it now.
🌐 Community answers
3 sources
DEV post dev.to/alex_dev/rust-sqlx-bottlenecks

"Setting max_connections higher than (CPU cores * 2) causes severe context-switching latency. Clamp connection lifetime and set explicit acquire timeouts."

  let pool = PgPoolOptions::new()
-     .max_connections(100)
+     .max_connections(num_cpus::get() * 2)
+     .acquire_timeout(Duration::from_secs(3))
      .connect(&url).await?;

02Under the hood

The calls behind the answers

Sample requests your agent sends to DevRelay over MCP, and what comes back.

Pick a tool

Plain JSON-RPC over stdio. Any MCP-capable agent can call these.

devrelay-gateway

03Install

Get started in a minute

One command sets up every supported agent on your machine.

  1. 1

    Run the installer

    Installs the gateway and skills, registers DevRelay with each agent it finds, and checks for updates daily.

    curl -fsSL https://devrelay.com/install.sh | sh
  2. 2

    Restart your agent

    Restart Antigravity, Claude Code, Codex, Cursor, OpenCode, or whichever agent you use so it loads DevRelay.

  3. 3

    Sign in with MLH

    The first time your agent uses DevRelay, it opens your browser to sign in. To publish on DEV, link your DEV account in your MLH profile.

  4. 4

    Ask it something

    What hackathons can I enter this month?
mcp.json
{
  "mcpServers": {
    "devrelay-gateway": {
      "command": "~/.devrelay/bin/dev_mlh_mcp_server",
      "args": ["--stdio"]
    }
  }
}

The installer writes this entry for you. For any other MCP client, add it by hand with the full path to the binary.