Tag: api

47 posts

AT Protocol MCP Server: API Expansion Phase 1


E
ewan's devlog
devlog.croft.click
·
Jun 13, 2026

AT Protocol MCP Server: API Expansion Phase 1


E
ewan's devlog
devlog.croft.click
·
Jun 13, 2026
Type-safe slogging

Type-safe slogging

The default slog API is loose enough that a careless line ships broken JSON to production. Pin it down with Attr constructors, LogAttrs, a context-borne logger, and sloglint.

·
May 8, 2026
Hoisting wire plumbing out of your Go handlers

Hoisting wire plumbing out of your Go handlers

Four of the five steps in every unary RPC handler are wire plumbing. Pin the service function signature and they fit in one generic adapter per transport.

·
May 1, 2026
Accepted proposal: UUID in the Go standard library

Accepted proposal: UUID in the Go standard library

Notes on Go's newly accepted uuid proposal and the tradeoffs behind the API.

·
Apr 18, 2026

API Versioning is a Contract Commitment, not a Technical Choice


Ricky Moorhouse icon
Ricky Moorhouse
rickymoorhouse.uk
·
Apr 12, 2026
What's the ideal dispatch mechanism?

What's the ideal dispatch mechanism?

Switch, map of functions, and interface registry for dispatching in Go.

·
Mar 30, 2026

Observability as a design requirement


Ricky Moorhouse icon
Ricky Moorhouse
rickymoorhouse.uk
·
Mar 27, 2026
Is passing user ID through context an antipattern?

Is passing user ID through context an antipattern?

Why the middleware-to-handler boundary is a special case for context values.

·
Mar 17, 2026
What belongs in Go's context values?

What belongs in Go's context values?

A simple litmus test for when to use context values in Go.

·
Mar 16, 2026
Wrapping a gRPC client in Go

Wrapping a gRPC client in Go

How to wrap a generated gRPC client behind a clean Go API so users never have to touch protobuf types or connection management directly.

·
Mar 14, 2026
Mutate your locked state inside a closure

Mutate your locked state inside a closure

Why your mutex wrapper should accept a closure for mutation instead of a plain value, with examples from the standard library and Tailscale.

·
Mar 4, 2026
Your Go tests probably don't need a mocking library

Your Go tests probably don't need a mocking library

Practical patterns for mocking in Go without external libraries. Learn to mock functions, methods, interfaces, HTTP calls, and time using only the standard library

·
Jan 22, 2026

Community

Dev Log 38: 2025-12-18

·
Dec 18, 2025

What's New In The 2025-11-25 MCP Authorization Spec

Preview of authorization changes landing in the 2025-11-25 MCP spec release, marking the protocol's first anniversary with notable auth-flow updates.

·
Nov 23, 2025
Revisiting interface segregation in Go

Revisiting interface segregation in Go

Apply SOLID's Interface Segregation Principle in Go with consumer-defined contracts. Learn why small interfaces and implicit implementation matter.

·
Oct 31, 2025
Avoiding collisions in Go context keys

Avoiding collisions in Go context keys

Master Go context keys with custom types, avoid collisions using empty structs, and learn accessor patterns for safe request-scoped values.

·
Oct 21, 2025
Lifecycle management in Go tests

Lifecycle management in Go tests

Master Go test lifecycle with t.Cleanup(), subtests, and TestMain. Learn per-test, grouped, and package-wide setup patterns effectively.

·
Aug 29, 2025

OAuth In The MCP C# SDK: Simple, Secure, Standard

Walkthrough of the new OAuth 2.0 and RFC 9728 PRM support shipped in the official MCP C# SDK, with sample code for protected MCP server authorization in .NET.

·
Jul 6, 2025

Stop Guessing: MCP Elicitations Come To Visual Studio Code

VS Code now supports MCP elicitations from the 2025-06-18 spec, letting servers prompt users with structured native dialogs instead of guessing at parameters.

·
Jul 5, 2025

Please Don't Write Your Own MCP Authorization Code

Why most teams should let an API gateway handle the new MCP Protected Resource Metadata flow instead of hand-rolling OAuth in their own server code.

·
Jun 25, 2025

Update To MCP Authorization Spec - Resource Parameter (RFC 8707)

How RFC 8707 resource indicators are now required in the MCP authorization spec to prevent token misuse and phishing across MCP server deployments.

·
Jun 17, 2025

Visual Studio Code Now Supports MCP Authorization

VS Code Insiders implements the new MCP authorization spec while gracefully falling back to the 2025-03-26 version, demonstrated against the Sentry MCP server.

·
May 25, 2025

Confused Deputy Attacks In MCP, Solved With Azure APIM

Mitigating confused deputy attacks in remote MCP servers by enforcing per-client consent prompts and proxying Dynamic Client Registration through Azure APIM.

·
May 24, 2025
You probably don't need a DI framework

You probably don't need a DI framework

Dependency injection in Go doesn't need Dig or Wire. Learn why manual wiring beats reflection magic and how Go's design makes DI frameworks overkill.

·
May 23, 2025

Building Personal APIs

In which the author steals his data back from various tools and APIs and uses them to build his own panopticon-for-one


E
EJ Fox
ejfox.com
·
May 3, 2025

The New MCP Authorization Specification

Walkthrough of the updated MCP authorization spec, covering the OAuth-based discovery mechanism and security improvements for MCP server authorization.

·
Apr 25, 2025
Deferred teardown closure in Go testing

Deferred teardown closure in Go testing

Return teardown closures from test helpers to manage cleanup elegantly. Learn patterns for temp files, mock servers, and t.Cleanup() usage.

·
Mar 27, 2025
Stacked middleware vs embedded delegation in Go

Stacked middleware vs embedded delegation in Go

Compare middleware stacking with embedded delegation in Go HTTP servers. Learn when to override ServeHTTP for simpler request handling.

·
Mar 5, 2025

Using GitHub Copilot From Inside GitHub Actions

Call the undocumented GitHub Copilot REST API from inside a GitHub Actions workflow to extract structured data from issue bodies without manual parsing.

·
Jan 24, 2025

無料の翻訳API、みんなの自動翻訳を使ってみた


N
nove-b blog
blog.nove-b.dev/
·
Jan 23, 2025

Artem Zakharchenko - Mock Service Worker

Artem Zakharchenko explains Mock Service Worker's network request mocking capabilities, technical evolution, and future automation features.


Devtools FM icon
Devtools FM
devtools.fm
·
Jan 18, 2025

Deleting All Workflow Runs In GitHub Repository With PowerShell

A PowerShell script that paginates the GitHub REST API to bulk-delete every workflow run in a repository, with rate-limit handling and dry-run support.

·
Jan 16, 2025
Function types and single-method interfaces in Go

Function types and single-method interfaces in Go

Implement single-method interfaces with function types instead of structs. Master http.HandlerFunc patterns for middlewares, mocks, and adapters.

·
Dec 21, 2024

Extracting Icons From A Windows DLL Or EXE With C#

Extract icon resources from Windows DLL and EXE binaries to a local folder using C# and the Win32 API via P/Invoke.

·
Dec 7, 2024

New Features For MSAL Python - Managed Identity and macOS Broker

Recent additions to MSAL Python - managed identity support for Azure-hosted services and a new macOS authentication broker for richer interactive sign-in flows.

·
Oct 17, 2024
Shades of testing HTTP requests in Python

Shades of testing HTTP requests in Python

Test HTTP requests in Python with pytest-httpx for full mocking, respx for pattern matching, or VCR.py for recording real responses.

·
Sep 1, 2024

Converting HEX Color To SolidColorBrush In WinUI 3

WinUI 3 has no built-in HEX-to-SolidColorBrush converter, so here's a small C# helper that parses ARGB hex strings into a usable Color object.

·
Aug 11, 2024
Log context propagation in Python ASGI apps

Log context propagation in Python ASGI apps

Automatically tag Python logs with request context using middleware and contextvars for distributed tracing in ASGI web applications.

·
Aug 5, 2024

Convert Gamertag To XUID

Locating an Xbox Live endpoint that resolves a gamertag string to its immutable XUID, used in OpenSpartan Workshop to look up shared Halo Infinite matches.

·
Jul 2, 2024

Tracking My Own Halo Infinite Stats With OpenSpartan Workshop

Using OpenSpartan Workshop to record personal Halo Infinite match data locally, built on top of the reverse-engineered Halo Infinite Web API.

·
Jun 12, 2024
Protobuffed contracts

Protobuffed contracts

Define service contracts with Protocol Buffers for non-gRPC systems. Generate serializers, maintain self-documented APIs, and ensure cross-language compatibility.

·
May 9, 2024

APIのメソッドPUTとPATCHは何が違うのか調べてみた

APIを作成しているので、PUTとPATCHの違いを調べてみた


N
nove-b blog
blog.nove-b.dev/
·
May 1, 2024

A Look Under The Hood Of The Halo Infinite Exchange

Inspect the Halo Infinite Exchange API to see how Spartan Points pricing, item rotation, and cosmetic inventory data are exposed by the game backend.

·
Apr 30, 2024
ETag and HTTP caching

ETag and HTTP caching

Implement client-side HTTP caching with ETag headers. Learn If-None-Match, 304 Not Modified responses, and weak validation in Go servers.

·
Apr 9, 2024
Dysfunctional options pattern in Go

Dysfunctional options pattern in Go

Discover a simpler alternative to functional options: method chaining with builder-style configuration that's 76x faster and easier to understand.

·
Mar 5, 2024

Go Langで作成したAPIをSwagger UIで表示する


N
nove-b blog
blog.nove-b.dev/
·
Dec 27, 2023