Open Source Contributions category -- MCP & AI Agents Hackathon
Four pull requests submitted across three sponsor repositories, each making Bitcoin infrastructure a first-class citizen in the MCP agent ecosystem. The contributions range from new tooling integrations to bug fixes that improve developer experience.
| # | Repo | PR | Type | Status |
|---|---|---|---|---|
| 1 | kagent-dev/kagent | #1558 | Feature: Bitcoin ToolServer + SRE Agent | Submitted |
| 2 | agentregistry-dev/agentregistry | #410 | Bug fix: panic on negative page-size | Submitted |
| 3 | agentregistry-dev/agentregistry | #411 | Bug fix: broken lint Makefile target | Submitted |
| 4 | agentgateway/agentgateway | #1369 | Feature: Bitcoin example with rate limiting | Submitted |
Repository: kagent-dev/kagent Pull Request: #1558 -- Add bitcoin-mcp ToolServer and Bitcoin SRE Agent
What it does:
- Adds a
bitcoin-mcpToolServer tocontrib/tools/, following the establishedcontext7.mcp.yamlpattern used by other community tool integrations - Adds a Bitcoin SRE Agent (
contrib/agents/bitcoin-sre.yaml) with a detailed incident response system prompt covering block production monitoring, mempool analysis, fee spike triage, and chain reorganization detection - Enables Kubernetes-native Bitcoin infrastructure monitoring through kagent's agent orchestration layer
Why it matters: Bitcoin node operators running Kubernetes clusters can now use kagent to deploy an AI agent that monitors their infrastructure using real blockchain data from bitcoin-mcp. The SRE agent prompt encodes actual operational runbooks for common Bitcoin infrastructure incidents.
Repository: agentregistry-dev/agentregistry Pull Request: #410 -- Fix panic on negative --page-size Fixes: Issue #368
The problem: Running arctl skill list --page-size -1 caused a Go slice bounds out-of-range panic. The negative value was passed directly to slice operations without validation, crashing the CLI.
The fix: Added input validation in the listSkills command that checks for negative --page-size values before any slice operations. Returns a clear error message: "page-size must be a positive integer".
Why it matters: CLI tools should never panic on user input. This is a straightforward defensive programming fix that prevents a crash and gives users actionable feedback.
Repository: agentregistry-dev/agentregistry Pull Request: #411 -- Fix broken lint Makefile target Fixes: Issue #377
The problem: make lint failed because it tried to install golangci-lint via go install, but PR #253 removed it from the Go tools list. The Makefile target was left pointing at a binary that no longer gets installed through the project's toolchain.
The fix: Updated the lint Makefile target to use the system-installed golangci-lint binary directly, with a helpful error message if it's not found, including the official install command. This aligns with golangci-lint's own recommendation against go install for linter binaries.
Why it matters: A broken make lint means contributors can't run the same checks CI runs. This is a barrier to contribution that's trivial to fix but significant in impact.
Repository: agentgateway/agentgateway Pull Request: #1369 -- Add Bitcoin example with rate limiting
What it does:
- Adds
examples/bitcoin/with a complete configuration and README - Demonstrates bitcoin-mcp proxied through agentgateway with rate limiting and CORS headers
- Zero additional configuration required -- bitcoin-mcp's free hosted API works out of the box
- Shows agentgateway's value proposition: add rate limiting, auth, and observability to any MCP server without modifying the server itself
Why it matters: This is the first crypto/blockchain example in agentgateway's examples directory. It demonstrates a real-world use case (protecting a Bitcoin API from abuse) rather than a toy example.
+------------------+
| AI Agent |
| (Claude, etc.) |
+--------+---------+
|
MCP Protocol (stdio/SSE)
|
+--------------+--------------+
| |
+---------v----------+ +----------v---------+
| agentgateway | | kagent |
| (PR #1369) | | (PR #1558) |
| Rate limiting, | | K8s orchestration, |
| CORS, auth proxy | | SRE agent prompt |
+---------+----------+ +----------+----------+
| |
+-------------+---------------+
|
+--------v--------+
| bitcoin-mcp |
| MCP Server |
| (40+ tools) |
+-----------------+
|
+--------v--------+
| Bitcoin Network |
| (Core/Knots or |
| Satoshi API) |
+-----------------+
+-------------------------------------------+
| agentregistry (PRs #410, #411) |
| Discovery layer: find and install MCP |
| servers like bitcoin-mcp via arctl CLI |
+-------------------------------------------+
The connecting story: These three projects form layers of the MCP agent infrastructure stack:
- agentregistry is the discovery layer -- where developers find and install MCP servers
- agentgateway is the proxy layer -- adding security, rate limiting, and observability
- kagent is the orchestration layer -- deploying agents with tools into Kubernetes
By contributing Bitcoin integrations and fixes across all three, bitcoin-mcp becomes a reference implementation that spans the entire stack.
- For Bitcoin developers: Agent-native Bitcoin infrastructure monitoring out of the box
- For the MCP ecosystem: A real-world, production-relevant example (not a toy) that demonstrates the full stack working together
- For the sponsor projects: Two bug fixes that improve contributor experience, and two feature additions that expand the ecosystem
Andy Barnes (@Bortlesboat) Creator of bitcoin-mcp -- 40+ tools for querying and analyzing the Bitcoin network via MCP.