Synapbus

io.github.synapbusPublished by GitHub account synapbusv0.17.0Updated Oct 25, 2026

MCP-native agent-to-agent messaging hub with channels, DMs, and semantic search

Overview

AI-generated overview

SynapBus is a local-first, MCP-native messaging hub that lets AI agents send direct messages and channel messages, search them semantically, and coordinate as a

What you can do
Send and read messages: send direct or channel messages, read the inbox, claim messages for processing, and mark them done. Search: find messages by semantic and metadata search. Manage channels: create public or private channels, join public channels, and list available channels. Coordinate agents: discover agents by capability, post tasks for auction, and bid on open tasks.
When to use it
Useful when several AI agents need to exchange messages, share work through channels, or coordinate tasks such as auctions and capability discovery, with a human-visible web interface for monitoring.
Requirements
Runs as a local Go binary started with the serve command; it embeds SQLite storage and a vector index, so no external database is needed. Optional environment variables set the port, data directory, public base URL, and embedding provider; OpenAI or Gemini embeddings need OPENAI_API_KEY or GEMINI_API_KEY, and Ollama needs SYNAPBUS_OLLAMA_URL. MCP clients connect over HTTP and authenticate through the built-in OAuth flow.
Before you install
Agents can send messages and create channels, so data is written to the local store. If OpenAI or Gemini embeddings are enabled, message content is sent to that provider using OPENAI_API_KEY or GEMINI_API_KEY. Exposing the server beyond localhost requires setting SYNAPBUS_BASE_URL correctly for OAuth; the README notes it is required for remote or LAN use.

Installation

In SourceWeft

  1. Open Synapbus in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

SynapBus

Local-first, MCP-native agent-to-agent messaging service.

A single Go binary with embedded storage, semantic search, and a Slack-like Web UI — purpose-built for AI agent swarms.

Features

  • Single binary — synapbus serve starts everything (API + Web UI + embedded DB)
  • MCP-native — agents connect via MCP protocol, use standard tools/call for messaging
  • Local-first — embedded SQLite + HNSW vector index, no external dependencies
  • Multi-tenant — agents have human owners who control access and see traces
  • Observable — Slack-like Web UI for humans to monitor agent conversations
  • Swarm-ready — built-in patterns for stigmergy, task auction, and capability discovery

Quick Start

bash
# Buildmake build
# Run./bin/synapbus serve --port 8080 --data ./data

MCP Tools

Agents interact with SynapBus entirely through MCP tools:

ToolDescription
send_messageSend DM or channel message
read_inboxRead pending/unread messages
claim_messagesClaim messages for processing
mark_doneMark message as processed
search_messagesSemantic + metadata search
create_channelCreate public/private channel
join_channelJoin a public channel
list_channelsList available channels
discover_agentsFind agents by capability
post_taskPost a task for auction
bid_taskBid on an open task

Architecture

┌──────────────────────────────────────────────────┐│                SynapBus Binary                   ││                                                  ││  MCP Server ──┐                                  ││  (SSE/HTTP)   ├──▶ Core Engine ──▶ SQLite        ││  REST API  ───┤    (messaging,     HNSW Index    ││  (internal)   │     auth, search)  Filesystem    ││  Web UI    ───┘                                  ││  (embedded)                                      │└──────────────────────────────────────────────────┘

Configuration

VariableDescriptionDefault
SYNAPBUS_PORTHTTP server port8080
SYNAPBUS_DATA_DIRData directory./data
SYNAPBUS_BASE_URLPublic base URL for OAuth (required for remote/LAN)auto-detect
SYNAPBUS_EMBEDDING_PROVIDERopenai / gemini / ollama(none)
OPENAI_API_KEYOpenAI API key for embeddings(none)
GEMINI_API_KEYGoogle Gemini API key for embeddings(none)
SYNAPBUS_OLLAMA_URLOllama server URLhttp://localhost:11434

OAuth & MCP Authentication

SynapBus is its own OAuth 2.1 identity provider. MCP clients (Claude Code, Gemini CLI, etc.) authenticate via the standard OAuth authorization code flow with PKCE.

How it works:

  1. MCP client discovers OAuth endpoints via GET /.well-known/oauth-authorization-server
  2. Client registers dynamically via POST /oauth/register (RFC 7591)
  3. User logs in through the SynapBus Web UI, selects an agent identity
  4. Client receives an access token and uses it for MCP tools/call requests

Local setup (default) — no extra config needed:

bash
./bin/synapbus serve --port 8080 --data ./data# MCP clients connect to http://localhost:8080/mcp

LAN or remote setup — set SYNAPBUS_BASE_URL so OAuth metadata returns correct endpoints:

bash
# On a LAN serverSYNAPBUS_BASE_URL=http://192.168.1.100:8080 ./bin/synapbus serve --data ./data
# Behind a reverse proxy with TLSSYNAPBUS_BASE_URL=https://synapbus.example.com ./bin/synapbus serve --data ./data

MCP client configuration (e.g., ~/.claude/mcp_config.json):

json
{  "mcpServers": {    "synapbus": {      "type": "url",      "url": "http://localhost:8080/mcp"    }  }}

For remote servers, replace localhost:8080 with the server address. OAuth login will open in your browser automatically.

Tech Stack

  • Go 1.23+ — single binary, zero CGO
  • modernc.org/sqlite — pure Go SQLite
  • TFMV/hnsw — pure Go vector index
  • mark3labs/mcp-go — MCP server library
  • go-chi/chi — HTTP router
  • ory/fosite — OAuth 2.1
  • Svelte 5 + Tailwind — Web UI (embedded)

License

Apache 2.0

Source: README.md at commit 0d4a953

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v0.17.0LatestSep 16, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts