Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Description from the maker (original English)
Query Obyte mainnet and testnet: balances, units, autonomous agents, AA state, dry runs, tokens.
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
OBYTE_NETWORK, OBYTE_MAINNET_HUB_ADDRESS, OBYTE_TESTNET_HUB_ADDRESS, OBYTE_TESTNET_TOKEN_REGISTRY_ADDRESSYou need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"obyte": {
"command": "npx",
"args": [
"-y",
"obyte-mcp",
"--network",
"mainnet"
],
"env": {
"OBYTE_NETWORK": "your-value",
"OBYTE_MAINNET_HUB_ADDRESS": "your-value",
"OBYTE_TESTNET_HUB_ADDRESS": "your-value",
"OBYTE_TESTNET_TOKEN_REGISTRY_ADDRESS": "your-value"
}
}
}
}Run this in your terminal
claude mcp add obyte --env OBYTE_NETWORK=your-value --env OBYTE_MAINNET_HUB_ADDRESS=your-value --env OBYTE_TESTNET_HUB_ADDRESS=your-value --env OBYTE_TESTNET_TOKEN_REGISTRY_ADDRESS=your-value -- npx -y obyte-mcp --network mainnetFill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"obyte": {
"command": "npx",
"args": [
"-y",
"obyte-mcp",
"--network",
"mainnet"
],
"env": {
"OBYTE_NETWORK": "your-value",
"OBYTE_MAINNET_HUB_ADDRESS": "your-value",
"OBYTE_TESTNET_HUB_ADDRESS": "your-value",
"OBYTE_TESTNET_TOKEN_REGISTRY_ADDRESS": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"obyte": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"obyte-mcp",
"--network",
"mainnet"
],
"env": {
"OBYTE_NETWORK": "your-value",
"OBYTE_MAINNET_HUB_ADDRESS": "your-value",
"OBYTE_TESTNET_HUB_ADDRESS": "your-value",
"OBYTE_TESTNET_TOKEN_REGISTRY_ADDRESS": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.
Your choice stays on this device in a cookie; no account needed.
OBYTE_NETWORK envOBYTE_MAINNET_HUB_ADDRESS envOBYTE_TESTNET_HUB_ADDRESS envOBYTE_TESTNET_TOKEN_REGISTRY_ADDRESS envThese settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Runs on your computer; the tool list appears in your AI app after you install it.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 7, 2026
The registry name was verified with the GitHub account Taump, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
This one runs on your computer; there is no internet endpoint
Runs on your computer and uses local settings instead
Runs on your computer; we can only read tool lists from internet endpoints
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
The registry does not list a required key, though some servers ask you to sign in on first use.
It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).
The GitHub repo last changed –, and the latest version (0.3.1) reached the registry 3 months ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Node.js on your computer.
In the same category: Spec Driven Development, Remote Desktop Commander, sync. labs
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Lipsync videos, dub them into other languages, make talking videos and open sync. Studio.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
Local stdio MCP server for querying Obyte from AI tools. One server serves both mainnet and testnet — every tool takes an optional network, so you never run two servers.
obyte-mcp exposes Obyte hub reads, autonomous-agent inspection, AA dry runs, and token symbol helpers to MCP clients such as Cursor, VS Code, Codex, Claude Desktop, and Claude Code.
Use a button above, or run the one command for your client:
claude mcp add --transport stdio obyte -- npx -y obyte-mcp # Claude Code
codex mcp add obyte -- npx -y obyte-mcp # Codex CLI code --add-mcp '{"name":"obyte","command":"npx","args":["-y","obyte-mcp"]}' # VS Code npx -y obyte-mcp install # every client on this machine
Needs Node.js >=20. Nothing else to configure: no account, no API key, no per-network setup - mainnet and testnet are both served from the start. Restart your client afterwards and ask it something like *"what is the GBYTE balance of this Obyte address?"*.
To make testnet the default for calls that omit network (both stay available), add --network testnet to any of the commands above.
Registers the server with every MCP client it finds on this machine. It runs each client's own CLI (code --add-mcp, codex mcp add, claude mcp add) and writes the Cursor and Claude Desktop config files directly.
Clients that are not installed are skipped quietly - only what actually changed is reported, along with which clients to restart. Naming one explicitly with --client always does something: if that client is not detected, the exact manual steps are printed instead.
Preview first (changes nothing):
npx -y obyte-mcp install --dry-run
Install into every detected client:
npx -y obyte-mcp install
Target a single client, or set the default network:
npx -y obyte-mcp install --client vscode
npx -y obyte-mcp install --client claude-desktop --network testnet npx -y obyte-mcp install --client codex --name obyte-testnet --network testnet
Flags: --client vscode|cursor|codex|claude-desktop|claude-code (default: every detected client), --name NAME (server name, default obyte), --dry-run, plus any config flag from the table below.
From a checkout you can use the wrapper scripts (they build first if needed):
./scripts/install.sh --dry-run # macOS / Linux
pwsh ./scripts/install.ps1 --dry-run # Windows
Prefer copy-paste? npx -y obyte-mcp setup prints ready snippets for all clients without changing anything (add --print-only --client for one).
obyte-mcp install --client vscode runs code --add-mcp for you. To do it by hand, add to .vscode/mcp.json (workspace) or your user settings.json under "mcp":
{
"servers": { "obyte": { "type": "stdio", "command": "npx", "args": ["-y", "obyte-mcp"] } } }
VS Code uses servers (not mcpServers) and requires "type": "stdio".
Cursor has no MCP CLI, so obyte-mcp install --client cursor writes its config file directly (backing the old one up to *.bak and keeping your other servers). The button at the top does the same in one click. To do it by hand, edit ~/.cursor/mcp.json (global) or .cursor/mcp.json (project) and restart Cursor:
{
"mcpServers": { "obyte": { "command": "npx", "args": ["-y", "obyte-mcp"] } } }
obyte-mcp install --client codex runs codex mcp add. To do it by hand, add to ~/.codex/config.toml (Codex uses TOML, not JSON):
[mcp_servers.obyte]
command = "npx" args = ["-y", "obyte-mcp"]
Claude Desktop has no CLI, so obyte-mcp install --client claude-desktop edits its config file directly (it backs up the existing file to *.bak and merges, keeping your other servers). To do it by hand, edit claude_desktop_config.json and restart Claude Desktop:
{
"mcpServers": { "obyte": { "command": "npx", "args": ["-y", "obyte-mcp"] } } }
Config paths:
~/Library/Application Support/Claude/claude_desktop_config.json%APPDATA%\Claude\claude_desktop_config.json~/.config/Claude/claude_desktop_config.jsonobyte-mcp install --client claude-code runs:
claude mcp add --transport stdio obyte -- npx -y obyte-mcp
The -- before npx is required. Without it, Claude Code can parse server flags such as --network as Claude Code flags. Useful commands: claude mcp list, claude mcp get obyte, and /mcp inside Claude Code.
Anthropic's MCP Bundle format (.mcpb, formerly .dxt) lets users install with a single click in Claude Desktop, Claude Code, and MCP for Windows (VS Code and Codex do not support .mcpb). This repo ships a manifest.json. Build a bundle with:
npm ci --omit=dev # keep the bundle small (runtime deps only)
npm run bundle # builds, then runs mcpb pack -> obyte-mcp.mcpb
Then open obyte-mcp.mcpb in Claude Desktop and click Install. The bundle exposes a "Default network" option and an optional testnet token registry in the install UI.
The server uses stdio only. It does not start an HTTP server and does not listen on a local TCP port.
>=20Official Obyte docs:
This is the headline feature: you do not pick a network when starting the server — you pick it per call.
network argument: "mainnet" or "testnet".network, the server uses the default network (mainnet unless you set --network testnet / OBYTE_NETWORK=testnet).meta.network and meta.hub always tell you which network actually answered.network. If the network is ambiguous, tools are documented to ask you first.Inspect the live configuration for both networks any time with obyte_get_network_info.
Raw hub data (balances, AA state vars, payment outputs, AA responses) carries amounts as integers in the asset's smallest units. The base asset has 9 decimals: 2500000000 bytes = 2.5 GBYTE. Agents that skip this step report wrong numbers, so the server enforces it in three ways:
obyte_analyze_address, obyte_analyze_aa, and obyte_get_portfolio_summary return a totals_by_asset / balance_summary block with symbol, decimals, raw_total, and display_total (already divided by 10^decimals). Assets that cannot be resolved (e.g. no registry on testnet) are listed in unresolved_assets with display_total: null — never presented as converted.obyte_resolve_asset / obyte_get_decimals_by_symbol_or_asset first, and to convert user-facing amounts *into* smallest units when building AA triggers.base/GBYTE/MBYTE/KBYTE/BYTE are answered locally, even on testnet with no registry configured.obyte_get_asset_holders returns the top holders of any asset (by symbol or asset id), sorted by balance descending, with raw and display amounts plus total supply — up to 100 holders per call. The data comes from the Obyte explorer (a centralized convenience service, separate from the hub) and may lag the ledger slightly.
For a human-browsable view, asset tools also return explorer_asset_url: https://explorer.obyte.org/asset/ (testnet: https://testnetexplorer.obyte.org/asset/ ). Note: amounts on explorer web pages are already in display units — only hub tool outputs need decimals conversion.
You should not have to tell your agent to use this server. Two mechanisms make it proactive:
initialize the server sends instructions that hosts (Claude Desktop, Claude Code, and others) inject into the agent's context: use obyte_* tools whenever the user mentions Obyte, GBYTE/bytes, autonomous agents, or pastes an Obyte identifier (addresses are 32-character base32 strings; unit hashes and asset ids are 44-character base64 strings usually ending in =), plus the network and decimals rules.For hosts that ignore server instructions (or to make it extra reliable in a specific project), add a line to your project memory file — CLAUDE.md (Claude Code) or AGENTS.md (Codex):
For anything involving Obyte, GBYTE, bytes, autonomous agents (AAs), Obyte units/addresses,
or Obyte token symbols, use the obyte MCP server tools (obyte_analyze_address, obyte_analyze_unit, obyte_analyze_aa, obyte_resolve_asset, obyte_get_portfolio_summary, obyte_prepare_aa_dry_run) without being asked. Pass network:"testnet" for testnet questions. Never show raw smallest-unit amounts: use display_total fields or resolve decimals first.
Precedence, highest first:
OBYTE_TESTNET_HUB_ADDRESS)--testnet-hub)| Env var | CLI flag | Applies to | Default | Description |
|---|---|---|---|---|
OBYTE_NETWORK | --network | default network | mainnet | Network used when a call omits network |
OBYTE_HUB_ADDRESS | --hub | default network | Network default | Custom hub URL |
OBYTE_TOKEN_REGISTRY_ADDRESS | --token-registry | default network | Mainnet registry / unset | Token registry AA |
OBYTE_MAINNET_HUB_ADDRESS | --mainnet-hub | mainnet | https://obyte.org/api | Custom mainnet hub |
OBYTE_TESTNET_HUB_ADDRESS | --testnet-hub | testnet | https://testnet.obyte.org/api | Custom testnet hub |
OBYTE_MAINNET_TOKEN_REGISTRY_ADDRESS | --mainnet-token-registry | mainnet | Official registry | Mainnet registry AA |
OBYTE_TESTNET_TOKEN_REGISTRY_ADDRESS | --testnet-token-registry | testnet | unset | Testnet registry AA |
| `OBYT
Only the beginning is shown; read the rest in the repo