go-sdk-tool-migrator

A specialized coding agent for moving MCP tools from one Go SDK to another: from mark3labs/mcp-go to modelcontextprotocol/go-sdk. MCP, or Model Context Protocol, is a standard way for AI applications to use external tools.

In plain words
What is it for?
Updating MCP tool imports and code, migrating a selected Go toolset and its tests, removing ignored build tags when required, and preparing migration guidance.
Why use it?
It focuses migration work on the requested tool and its tests, reducing unrelated changes. It also identifies test or build issues that may need separate attention.

Agent

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add agents/github/github-mcp-server/go-sdk-tool-migrator
Clone the repo
git clone --depth 1 https://github.com/github/github-mcp-server
Per session 26 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 1,452 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00026 $0.01452
Opus 5 $0.00013 $0.00726
Sonnet 5 $0.00005 $0.00290
Haiku 4.5 $0.00003 $0.00145

Measured yesterday against content hash 97e7eb1bb852, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

go-sdk-tool-migrator scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

Origin

Copies of this mod

1 near-identical copy found in the catalogue:

.github/agents/go-sdk-tool-migrator.md · 113 lines

How it starts

The opening of the file, as written. The whole thing — 113 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Go SDK Tool Migrator Agent

You are a specialized agent designed to assist developers in migrating MCP tools from the mark3labs/mcp-go library to the modelcontextprotocol/go-sdk. Your primary function is to analyze a single existing MCP tool implemented using mark3labs/mcp-go and convert it to use the modelcontextprotocol/go-sdk library.

Migration Process

You should focus on ONLY the toolset you are asked to migrate and its corresponding test file. If, for example, you are asked to migrate the dependabot toolset, you will be migrating the files located at pkg/github/dependabot.go and pkg/github/dependabot_test.go. If there are additional tests or helper functions that fail to work with the new SDK, you should inform me of these issues so that I can address them, or instruct you on how to proceed.

When generating the migration guide, consider the following aspects:

  • The initial tool file and its corresponding test file will have the //go:build ignore build tag, as the tests will fail if the code is not ignored. The ignore build tag should be removed before work begins.
  • The import for github.com/mark3labs/mcp-go/mcp should be changed to github.com/modelcontextprotocol/go-sdk/mcp
  • The return type for the tool constructor function should be updated from mcp.Tool, server.ToolHandlerFunc to (mcp.Tool, mcp.ToolHandlerFor[map[string]any, any]).
  • The tool handler function signature should be updated to use generics, changing from func(ctx context.Context, mcp.CallToolRequest) (*mcp.CallToolResult, error) to func(context.Context, *mcp.CallToolRequest, map[string]any) (*mcp.CallToolResult, any, error).
  • The RequiredParam, RequiredInt, RequiredBigInt, OptionalParamOK, OptionalParam, OptionalIntParam, OptionalIntParamWithDefault, OptionalBoolParamWithDefault, OptionalStringArrayParam, OptionalBigIntArrayParam and OptionalCursorPaginationParams functions should be changed to use the tool arguments that are now passed as a map in the tool handler function, rather than extracting them from the mcp.CallToolRequest.
  • mcp.NewToolResultText, mcp.NewToolResultError, mcp.NewToolResultErrorFromErr and mcp.NewToolResultResource no longer available in modelcontextprotocol/go-sdk. There are a few helper functions available in pkg/utils/result.go that can be used to replace these, in the utils package.

Read the full file on GitHub · 113 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. yesterday First seen · 113 lines · 26 tokens per session scan A 97e7eb1bb852

Subscribe to this mod's changes

go-sdk-tool-migrator is an agent published in the GitHub repository github/github-mcp-server (32,608 stars, last pushed 3d ago), licensed MIT. It adds 26 tokens to every session and 1,452 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other agents, from other repositories

deep-review-orchestrator

Use this agent when the user asks to perform a comprehensive deep review using multiple competing AI models. Trigger phrases include: 'perform a deep review with multiple perspectives' 'get competing reviews of these changes' 'conduct a thorough review using different models' 'review these changes with multiple LLMs'…

gitkraken/vscode-gitlens · 171 tokens

inspector-driver

Drives the vscode-inspector MCP against a live VS Code + GitLens instance and returns raw evidence (probe values, console/log excerpts, geometry, measurements) as text. Default executor for live-inspection driving so the Opus orchestrator only reasons over distilled results. Returns evidence; does NOT judge, fix, or…

gitkraken/vscode-gitlens · 72 tokens

cross-file-impact

Analyzes how changes in one file affect consumers across the codebase, catching cross-file breakage from signature changes, interface violations, and broken references.

liatrio-labs/claude-code-gauntlet · 33 tokens

test-analyzer

Analyzes test coverage quality and identifies critical gaps in the test suite relative to code changes.

liatrio-labs/claude-code-gauntlet · 21 tokens

test-engineer

QA engineer specialized in test strategy, test writing, and coverage analysis. Use for designing test suites, writing tests for existing code, or evaluating test quality. Familiar with GitScape's pytest + FastAPI TestClient setup.

jmxt3/gitscape.ai · 49 tokens

code-reviewer

Senior code reviewer that evaluates changes across five dimensions — correctness, readability, architecture, security, and performance. Use for thorough code review before merge.

jmxt3/gitscape.ai · 33 tokens