<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Baris Sozen</title>
    <description>The latest articles on DEV Community by Baris Sozen (@barissozen).</description>
    <link>https://dev.to/barissozen</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3886649%2F9be9b0dd-c43e-44d1-ac2b-0c90ea682dea.jpeg</url>
      <title>DEV Community: Baris Sozen</title>
      <link>https://dev.to/barissozen</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/barissozen"/>
    <language>en</language>
    <item>
      <title>How We Built Hashlock Markets: Intent-Based Crypto Trading for AI Agents</title>
      <dc:creator>Baris Sozen</dc:creator>
      <pubDate>Sat, 18 Apr 2026 23:01:46 +0000</pubDate>
      <link>https://dev.to/barissozen/how-we-built-hashlock-markets-intent-based-crypto-trading-for-ai-agents-2974</link>
      <guid>https://dev.to/barissozen/how-we-built-hashlock-markets-intent-based-crypto-trading-for-ai-agents-2974</guid>
      <description>&lt;p&gt;&lt;em&gt;Sealed-bid RFQs, HTLC atomic settlement, and a Model Context Protocol server that lets Claude trade for you.&lt;/em&gt;&lt;/p&gt;




&lt;p&gt;Trading crypto OTC has always been a trust problem. You find a counterparty on Telegram, negotiate a price, and hope nobody front-runs or ghosts. Institutions do it over Bloomberg chat. Retail does it on DEXs and eats slippage.&lt;/p&gt;

&lt;p&gt;We built &lt;strong&gt;Hashlock Markets&lt;/strong&gt; to fix both sides — and then we gave AI agents the keys.&lt;/p&gt;

&lt;h2&gt;
  
  
  What is Hashlock Markets?
&lt;/h2&gt;

&lt;p&gt;Hashlock Markets (&lt;a href="https://hashlock.markets" rel="noopener noreferrer"&gt;hashlock.markets&lt;/a&gt;) is an intent-based trading protocol for swapping any asset — crypto, RWAs, and stablecoins — with private sealed bids and verified counterparties.&lt;/p&gt;

&lt;p&gt;Here's how it works:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;You declare an intent&lt;/strong&gt; — "I want to sell 10 ETH for USDC, minimum price $3,200."&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Market makers respond with sealed bids&lt;/strong&gt; — nobody sees anyone else's price.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Best bid wins&lt;/strong&gt; — transparent settlement via Hash Time-Locked Contracts (HTLCs).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Atomic settlement&lt;/strong&gt; — both sides of the trade execute simultaneously, or neither does. No escrow. No trust.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The result: zero slippage, no front-running, and no information leakage before execution.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;A note on the name:&lt;/strong&gt; "Hashlock" refers to our trading platform and brand — Hashlock Markets, built by &lt;a href="https://github.com/Hashlock-Tech" rel="noopener noreferrer"&gt;Hashlock-Tech&lt;/a&gt;. We are &lt;strong&gt;not&lt;/strong&gt; affiliated with Hashlock Pty Ltd (hashlock.com), the Australian smart contract auditing firm. Our protocol &lt;em&gt;uses&lt;/em&gt; the cryptographic hash-lock primitive (as in HTLCs), but "Hashlock" as a product name refers to this trading platform specifically.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Why AI Agents?
&lt;/h2&gt;

&lt;p&gt;Here's the thing about intent-based trading: it's &lt;em&gt;perfectly&lt;/em&gt; suited for AI agents.&lt;/p&gt;

&lt;p&gt;An intent is just structured data — asset pair, amount, direction, constraints. There's no chart to read, no order book to stare at. You express &lt;em&gt;what you want&lt;/em&gt;, and the protocol finds the best execution.&lt;/p&gt;

&lt;p&gt;This is exactly how LLMs think. They're great at understanding natural language ("swap 5 ETH for USDC, best price, settle on Ethereum") and terrible at pixel-level chart analysis. Intent trading plays to their strengths.&lt;/p&gt;

&lt;p&gt;So we built an MCP server.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Hashlock MCP Server
&lt;/h2&gt;

&lt;p&gt;The &lt;a href="https://github.com/Hashlock-Tech/hashlock-mcp-server" rel="noopener noreferrer"&gt;Hashlock MCP server&lt;/a&gt; implements the &lt;a href="https://modelcontextprotocol.io/" rel="noopener noreferrer"&gt;Model Context Protocol&lt;/a&gt; — the open standard that lets AI assistants like Claude, GPT, and others interact with external tools.&lt;/p&gt;

&lt;h3&gt;
  
  
  Five Core Tools
&lt;/h3&gt;

&lt;p&gt;The server exposes five tools that cover the full trading lifecycle:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;code&gt;create_intent&lt;/code&gt;&lt;/strong&gt; — Create a new trading intent with asset pair, amount, direction, and price constraints. Supports ETH, BTC, SUI, USDC, USDT, and any ERC-20.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;code&gt;validate_intent&lt;/code&gt;&lt;/strong&gt; — Check an intent for correctness before submission. Catches issues like insufficient balance, invalid pairs, or malformed parameters.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;code&gt;commit_intent&lt;/code&gt;&lt;/strong&gt; — Lock an intent on-chain, triggering the sealed-bid RFQ process. Market makers see the intent but not each other's bids.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;code&gt;explain_intent&lt;/code&gt;&lt;/strong&gt; — Get a human-readable breakdown of what an intent will do, including estimated fees, settlement chain, and time-lock parameters.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;code&gt;parse_natural_language&lt;/code&gt;&lt;/strong&gt; — Convert plain English into a structured intent. "Sell 2 BTC for USDC on Ethereum, minimum $68k" becomes a valid intent object.&lt;/p&gt;

&lt;h3&gt;
  
  
  Two Ways to Connect
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;stdio (local)&lt;/strong&gt; — Install via npm and run locally:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;npx &lt;span class="nt"&gt;-y&lt;/span&gt; @hashlock-tech/mcp
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Streamable HTTP (remote)&lt;/strong&gt; — Connect directly to our hosted endpoint:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;https://hashlock.markets/mcp
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Both require a SIWE (Sign-In with Ethereum) bearer token for authentication. You sign once with your wallet at &lt;a href="https://hashlock.markets/sign/login" rel="noopener noreferrer"&gt;hashlock.markets/sign/login&lt;/a&gt;, and the token is valid for 30 days.&lt;/p&gt;

&lt;h2&gt;
  
  
  Cross-Chain by Default
&lt;/h2&gt;

&lt;p&gt;Hashlock Markets supports settlement on Ethereum, Bitcoin, and Sui — with more chains coming. The HTLC mechanism is chain-agnostic: as long as both chains support hash verification and time locks, atomic settlement works.&lt;/p&gt;

&lt;p&gt;This means an AI agent can execute a trade like "swap 1 BTC on Bitcoin mainnet for 20 ETH on Ethereum" — and both legs settle atomically. No bridge. No wrapped tokens. No custodian.&lt;/p&gt;

&lt;h2&gt;
  
  
  For Market Makers
&lt;/h2&gt;

&lt;p&gt;If you're running a trading desk or market-making operation, Hashlock Markets gives you:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Sealed bids&lt;/strong&gt; — Your pricing stays private until settlement.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;No adverse selection&lt;/strong&gt; — You see the intent, not a limit order that's already been front-run.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Programmable responses&lt;/strong&gt; — Use the MCP server to build automated RFQ response bots.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Multi-chain settlement&lt;/strong&gt; — Settle on whatever chain has the best liquidity for you.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Getting Started
&lt;/h2&gt;

&lt;h3&gt;
  
  
  As a Trader (via Claude or any MCP client)
&lt;/h3&gt;

&lt;p&gt;Add this to your Claude Desktop config (&lt;code&gt;claude_desktop_config.json&lt;/code&gt;):&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"mcpServers"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"hashlock"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"command"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"npx"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"args"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;"-y"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"@hashlock-tech/mcp"&lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"env"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"HASHLOCK_ACCESS_TOKEN"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"your-siwe-token"&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Then just ask Claude: &lt;em&gt;"Create an intent to sell 5 ETH for USDC at minimum $3,200 per ETH."&lt;/em&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  As a Developer
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;npm &lt;span class="nb"&gt;install&lt;/span&gt; @hashlock-tech/mcp
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The server is MIT-licensed. Fork it, extend it, build your own trading strategies on top.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;npm:&lt;/strong&gt; &lt;a href="https://www.npmjs.com/package/@hashlock-tech/mcp" rel="noopener noreferrer"&gt;@hashlock-tech/mcp&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;GitHub:&lt;/strong&gt; &lt;a href="https://github.com/Hashlock-Tech/hashlock-mcp-server" rel="noopener noreferrer"&gt;Hashlock-Tech/hashlock-mcp-server&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;MCP Registry:&lt;/strong&gt; &lt;a href="https://registry.modelcontextprotocol.io" rel="noopener noreferrer"&gt;io.github.Hashlock-Tech/hashlock&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  What's Next
&lt;/h2&gt;

&lt;p&gt;We're working on:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Multi-leg intents&lt;/strong&gt; — Chain complex trades (e.g., sell BTC → buy ETH → stake on Lido) into a single atomic execution.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Limit orders with expiry&lt;/strong&gt; — Set a price and walk away. The MCP server watches and executes.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Portfolio rebalancing&lt;/strong&gt; — Tell your AI agent your target allocation, and it figures out the trades.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;More chains&lt;/strong&gt; — Solana and Arbitrum are next.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The Bigger Picture
&lt;/h2&gt;

&lt;p&gt;We believe the future of trading is &lt;em&gt;declarative&lt;/em&gt;. You say what you want, not how to get it. AI agents handle execution. Protocols handle settlement. Humans handle strategy.&lt;/p&gt;

&lt;p&gt;Hashlock Markets is the infrastructure layer for that future.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Hashlock Markets is built by &lt;a href="https://github.com/Hashlock-Tech" rel="noopener noreferrer"&gt;Hashlock-Tech&lt;/a&gt;. Try it at &lt;a href="https://hashlock.markets" rel="noopener noreferrer"&gt;hashlock.markets&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Questions? Reach out on &lt;a href="https://github.com/Hashlock-Tech/hashlock-mcp-server/issues" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt; or join the conversation.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>mcp</category>
      <category>ai</category>
      <category>cryptocurrency</category>
      <category>blockchain</category>
    </item>
  </channel>
</rss>
