<?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: Tiago Yonamine</title>
    <description>The latest articles on DEV Community by Tiago Yonamine (@tiagoyonamine).</description>
    <link>https://dev.to/tiagoyonamine</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%2F3946107%2F470fb7dc-25ca-4a92-bf7e-dadd1bbd2572.jpeg</url>
      <title>DEV Community: Tiago Yonamine</title>
      <link>https://dev.to/tiagoyonamine</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/tiagoyonamine"/>
    <language>en</language>
    <item>
      <title>How to control IT assets with Claude + Handoff MCP</title>
      <dc:creator>Tiago Yonamine</dc:creator>
      <pubDate>Fri, 22 May 2026 12:51:44 +0000</pubDate>
      <link>https://dev.to/tiagoyonamine/how-to-control-it-assets-with-claude-handoff-mcp-559h</link>
      <guid>https://dev.to/tiagoyonamine/how-to-control-it-assets-with-claude-handoff-mcp-559h</guid>
      <description>&lt;h1&gt;
  
  
  How to control IT assets with Claude + Handoff MCP
&lt;/h1&gt;




&lt;h2&gt;
  
  
  The problem nobody wants to admit
&lt;/h2&gt;

&lt;p&gt;Your company has 40 employees and 60 notebooks. You know both numbers. What you don't know is which notebook is with which person, whether the responsibility term was signed, and what needs to come back when someone quits.&lt;/p&gt;

&lt;p&gt;The typical "solution" is a Google Sheet that someone updates sometimes, a PDF that lives in an email attachment, and a Slack message on the person's last day: "hey can you return the notebook?"&lt;/p&gt;

&lt;p&gt;This costs real money. Notebooks are R$5,000–R$15,000 each. And every offboarding is a gamble.&lt;/p&gt;




&lt;h2&gt;
  
  
  What Handoff does
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://usehandoff.com.br" rel="noopener noreferrer"&gt;Handoff&lt;/a&gt; is a SaaS built specifically for this: link equipment to people, generate digital responsibility terms, and get a clear offboarding checklist when someone leaves.&lt;/p&gt;

&lt;p&gt;The interesting part for developers: it has a native MCP server.&lt;/p&gt;




&lt;h2&gt;
  
  
  Connecting Handoff to Claude
&lt;/h2&gt;

&lt;p&gt;Add this to your Claude Desktop &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;"handoff"&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;"url"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"https://app.usehandoff.com.br/api/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;"headers"&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;"Authorization"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Bearer hoff_your_key_here"&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;Get your API key at: &lt;strong&gt;Admin → API Keys&lt;/strong&gt; inside the app.&lt;/p&gt;

&lt;p&gt;That's it. No local server to run, no Docker, no Python environment. The MCP server is hosted at &lt;code&gt;app.usehandoff.com.br/api/mcp&lt;/code&gt; and speaks JSON-RPC 2.0.&lt;/p&gt;




&lt;h2&gt;
  
  
  What you can do from Claude
&lt;/h2&gt;

&lt;p&gt;Once connected, you can ask things like:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;"Who has the company laptops right now?"&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Claude calls &lt;code&gt;list_allocations({ status: "ativa" })&lt;/code&gt; and &lt;code&gt;list_assets({ status: "em_uso" })&lt;/code&gt; and gives you a human-readable summary.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;"Fernanda is leaving next week. What does she need to return?"&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Claude calls &lt;code&gt;get_employee&lt;/code&gt; + &lt;code&gt;list_allocations({ colaboradorId })&lt;/code&gt; and lists every active allocation with delivery dates.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;"Register that João Silva joined the team. He's in the TI department and starts 2026-06-01."&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Claude calls &lt;code&gt;list_departments&lt;/code&gt; to find the TI department ID, then &lt;code&gt;create_employee&lt;/code&gt; with all the fields — and confirms the creation.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;"Which employees were onboarded in the last 3 months and don't have a signed term yet?"&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Claude combines &lt;code&gt;list_employees&lt;/code&gt;, &lt;code&gt;list_allocations&lt;/code&gt;, and &lt;code&gt;offboarding_pending&lt;/code&gt; to cross-reference data.&lt;/p&gt;




&lt;h2&gt;
  
  
  Available tools
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Tool&lt;/th&gt;
&lt;th&gt;What it does&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;list_employees&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Search employees by name, CPF, or department&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;get_employee&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Get one employee with their active allocations&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;create_employee&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Register a new employee&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;delete_employee&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Archive an employee (blocked if assets are still assigned)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;list_assets&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;List assets, filter by status or search term&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;get_asset&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Get one asset with allocation history&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;create_asset&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Register a new asset&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;list_allocations&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;List allocations, filter by status or employee&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;create_allocation&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Assign an asset to an employee (generates responsibility term)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;return_asset&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Register an asset return (closes the allocation)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;list_departments&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;List departments&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;list_equipment_types&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;List equipment types&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;offboarding_pending&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;List dismissed employees with pending returns&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h2&gt;
  
  
  A real workflow: onboarding + equipment delivery
&lt;/h2&gt;

&lt;p&gt;Here's what happens when you tell Claude:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"Register a new employee: Ana Costa, CPF 123.456.789-00, &lt;a href="mailto:ana@company.com"&gt;ana@company.com&lt;/a&gt;, Engineer, starting 2026-06-01, TI department. Then allocate the MacBook Pro NB-042 to her."&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Claude will:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Call &lt;code&gt;list_departments&lt;/code&gt; → find TI department ID&lt;/li&gt;
&lt;li&gt;Call &lt;code&gt;create_employee&lt;/code&gt; with all fields → get employee ID&lt;/li&gt;
&lt;li&gt;Call &lt;code&gt;list_assets({ q: "NB-042" })&lt;/code&gt; → find the asset ID&lt;/li&gt;
&lt;li&gt;Call &lt;code&gt;create_allocation&lt;/code&gt; → link asset to employee&lt;/li&gt;
&lt;li&gt;Return the &lt;strong&gt;responsibility term link&lt;/strong&gt; (&lt;code&gt;termoAceiteUrl&lt;/code&gt;) — send this to Ana so she can sign on her phone, no login required&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The entire flow in one prompt, zero context switching.&lt;/p&gt;




&lt;h2&gt;
  
  
  Why this matters beyond convenience
&lt;/h2&gt;

&lt;p&gt;The MCP integration isn't just a party trick. It enables:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;HRIS sync via Claude agents&lt;/strong&gt;: an agent that monitors your HR system and registers new employees in Handoff automatically&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Offboarding automation&lt;/strong&gt;: a workflow that checks offboarding_pending daily and sends reminders&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Audit queries&lt;/strong&gt;: "show me all assets that have never had a signed term" — Claude combines multiple tools and reasons over the data&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Natural language search&lt;/strong&gt;: instead of filtering a table, just describe what you're looking for&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Free tier
&lt;/h2&gt;

&lt;p&gt;Handoff has a permanent free tier: unlimited assets, up to 10 employees, no credit card required.&lt;/p&gt;

&lt;p&gt;If you want to test the MCP today:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Create a free account at &lt;a href="https://app.usehandoff.com.br/signup" rel="noopener noreferrer"&gt;app.usehandoff.com.br/signup&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Go to Admin → API Keys → generate a key&lt;/li&gt;
&lt;li&gt;Add the config to Claude Desktop&lt;/li&gt;
&lt;li&gt;Ask Claude: "list my employees in Handoff"&lt;/li&gt;
&lt;/ol&gt;




&lt;h2&gt;
  
  
  The bigger picture
&lt;/h2&gt;

&lt;p&gt;As AI agents become more capable, the tools they connect to need clean, well-scoped APIs. Handoff's MCP server is designed for exactly this: a narrow domain (equipment per person), clear data model, and operations that make sense to an agent (create, list, allocate, return, offboard).&lt;/p&gt;

&lt;p&gt;If you're building HR/IT automation with Claude and your company is in Brazil, this is probably the fastest path to structured equipment control without standing up your own infrastructure.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Handoff is built in Brazil for Brazilian companies. The UI is in Portuguese, the API field names are in Portuguese, and the responsibility terms are legally valid in Brazil. The MCP protocol and API keys work the same way regardless of language.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>claude</category>
      <category>mcp</category>
      <category>ai</category>
      <category>productivity</category>
    </item>
  </channel>
</rss>
