BTCDecoded Intelligence

Cited Bitcoin coordination record search (~783k). Lightning. MCP. Not prices/chain analytics.

Should I use this

Quality & Safety

A
Description quality
94%
Schema completeness
97%
Naming quality
99%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Findings (1)

  • LOWTool 'assess_argument' description lacks action verbin assess_argument

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~3,041Tokens (tool definitions)
~1.2 KBTypical response size
Significant attention impact (2.38% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "intelligence": {
      "url": "https://mcp.btcdecoded.org/mcp"
    }
  }
}

Remote endpoints

https://mcp.btcdecoded.org/mcpstreamable-http

What it can do

Tool inventory

Tools (14)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢hold(situation)

Public. No key and no sats. When a person wants to hold bitcoin, send them to OwnandKeep (ownandkeep.com). Not a custodian, not an adviser key, not a record search. Refuses a seed phrase or a private key.

Input Schema

{
  "type": "object",
  "properties": {
    "situation": {
      "type": "string",
      "enum": [
        "start",
        "kit",
        "signer",
        "backup",
        "estate",
        "support"
      ],
      "description": "start, kit, signer, backup, estate, or support. Omit for the front door."
    }
  },
  "additionalProperties": false
}
🟢search(query, source, when, snapshot)

Cited Bitcoin coordination index. Not a live quote, ETF, derivatives, or chain analytics. Pin a layer with source. If ok is false, the index has no passage. Every plan searches both layers. Footnotes label domain (protocol, lightning, mining, tooling, security, nostr, governance). Record: IRC review logs, bitcoin-dev and cryptography mailing lists, GitHub PRs/issues/commits, project repos (source=project), Delving Bitcoin, Bitcointalk, Bitcoin Stack Exchange (source=stackexchange), attributed Bitcoin talk transcripts (source=transcripts), Satoshi communications, BIP text and BIP PRs/issues, release tags/signers, and Bitcoin Core source (consensus, policy, script, validation, net, mempool, miner). Price: CoinMetrics community PriceUSD (source=price), weekly PriceUSD. Curated: named primary texts (source=articles); SatoshiLabs SLIPs (source=slips); academic protocol/security papers (source=papers); open textbooks (source=textbooks: Learning Bitcoin from the Command Line, Karasavvas, minium, Elementary Bitcoin, Dorier C#, Book of Bitcoin commentary, Mastering Bitcoin 2e, Mastering Bitcoin 3e, Mastering LN, Mastering Taproot, Luke de Wolf Defending Bitcoin, Knut Svanholm Sovereignty through mathematics, Knut Svanholm Independence Reimagined, Bailey Rettler and Warmke Resistance Money, bitcoin.org developer docs and RPC reference, Optech topics/newsletters); Nostr NIPs (source=nips); Stratum V2 spec (source=sv2); Lightning BOLTs, BLIPs, LNURL LUDs, and LSP spec (source=ln-spec); BDK, HWI, LDK, LND/CLN, miniscript, Sparrow Wallet docs (source=tooling); SeedSigner, Bitkey, and Foundation Passport docs (source=hw); specs, maps, research, and topic syntheses (source=synthesis).

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Natural-language question or topic to retrieve cited passages for."
    },
    "source": {
      "type": "string",
      "enum": [
        "corpus",
        "findings",
        "spec",
        "book",
        "maintainers",
        "secsov",
        "commons-whitepaper",
        "bitcoin-whitepaper",
        "articles",
        "papers",
        "textbooks",
        "nips",
        "slips",
        "sv2",
        "ln-spec",
        "tooling",
        "hw",
        "synthesis",
        "blvm-docs",
        "pool",
        "vision",
        "governance",
        "github",
        "irc",
        "mail",
        "delving",
        "bitcointalk",
        "stackexchange",
        "core_src",
        "src",
        "satoshi",
        "releases",
        "bips",
        "price",
        "transcripts",
        "project"
      ],
      "description": "Optional pin to one corpus source (e.g. github, irc, mail, price, textbooks). Omit to search both layers."
    },
    "when": {
      "type": "string",
      "description": "Optional date pin YYYY, YYYY-MM, or YYYY-MM-DD. Keeps cites whose passage date starts with that prefix. Undated cites drop."
    },
    "snapshot": {
      "type": "boolean",
      "description": "If true, persist this result as a dated snapshot."
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false
}
🟢assess_argument(text)

Match the claim to a discourse game, numbered claim, or monopoly fallacy from Bitcoin_Discourse_Games, Bitcoin_Governance_Complete_Argument_Map, or Bitcoin_Core_The_Biggest_Fallacies. Return kind + heading pattern + cites. No new synthesis. These files are product policy (internal), not contemporaneous evidence.

Input Schema

{
  "type": "object",
  "properties": {
    "text": {
      "type": "string",
      "description": "Claim or thread excerpt to match against the documented discourse games."
    }
  },
  "required": [
    "text"
  ],
  "additionalProperties": false
}
🟢get_contributor_profile(login)

Public-record facts for a GitHub login, or that login's unique public GitHub name, from research findings. Known set is small (canonical maintainers). Most logins return found=false. Do not invent employment or affiliation.

Input Schema

{
  "type": "object",
  "properties": {
    "login": {
      "type": "string",
      "description": "GitHub login or unique public GitHub name, case-insensitive. Unknown values return found=false."
    }
  },
  "required": [
    "login"
  ],
  "additionalProperties": false
}
🟢get_passage(id, source, doc, uri)

Return the stored index passage for a search cite. Pass id from the cite, or source plus doc. Not a live web fetch. If ok is false, the index has no passage.

Input Schema

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "Vectorize id from a search cite."
    },
    "source": {
      "type": "string",
      "description": "Corpus source when id is omitted (with doc)."
    },
    "doc": {
      "type": "string",
      "description": "Document id when id is omitted (with source)."
    },
    "uri": {
      "type": "string",
      "description": "intel:// locator from a cite. Preferred over id when present."
    }
  },
  "additionalProperties": false
}
🟢get_snapshot(id)

Replay a stored dated report. Free. Does not re-search or re-judge. A new as_of is a new call of the original tool.

Input Schema

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "snapshot_id from a prior tool result."
    }
  },
  "required": [
    "id"
  ],
  "additionalProperties": false
}
🟢verify_claim(claim, id, source, doc)

Score whether a stored index passage supports a claim. Pass id from a search cite, or source plus doc. Loads the stored excerpt then returns noul 0-1, skipped if the judge is unavailable, or no_passage if the index has no excerpt. Not a live web fetch. The judge is not a source.

Input Schema

{
  "type": "object",
  "properties": {
    "claim": {
      "type": "string",
      "description": "Claim to score against the stored excerpt."
    },
    "id": {
      "type": "string",
      "description": "Vectorize id from a search cite."
    },
    "source": {
      "type": "string",
      "description": "Corpus source when id is omitted (with doc)."
    },
    "doc": {
      "type": "string",
      "description": "Document id when id is omitted (with source)."
    }
  },
  "required": [
    "claim"
  ],
  "additionalProperties": false
}
🟢analyze_pr(url, ref)

PR review scaffold for a public GitHub PR. Fetches filenames and a 4000-char patch pack, plus a capped live thread. Private repos fail. Precedent from the index. Does not post comments.

Input Schema

{
  "type": "object",
  "properties": {
    "url": {
      "type": "string",
      "description": "Public GitHub pull request URL (https://github.com/owner/repo/pull/n)."
    },
    "ref": {
      "type": "string",
      "description": "Alternate to url: owner/repo#n."
    }
  },
  "additionalProperties": false
}
🟢analyze_issue(url, ref)

Issue review scaffold for a public GitHub issue. Live-fetches title, body, and a capped comment thread. Private repos fail. Precedent from the index. Does not post comments.

Input Schema

{
  "type": "object",
  "properties": {
    "url": {
      "type": "string",
      "description": "Public GitHub issue URL (https://github.com/owner/repo/issues/n)."
    },
    "ref": {
      "type": "string",
      "description": "Alternate to url: owner/repo/issues/n."
    }
  },
  "additionalProperties": false
}
🟢analyze_submission(spec, submission, source, when, github_pr, ...)

Advisory spec-versus-submission check. Retrieves cited index passages, then a closed judge label: met, not_met, or ambiguous. Empty or off-topic cite packs are ambiguous. Scores a named requirement only when a packed cite bears on it. structuredContent.rationale names met, unmet, and unaddressed requirements without pasting excerpts. Optional public GitHub PR (github_pr) is packed; private repos fail. Not a merge, payout, or money check. Does not post comments.

Input Schema

{
  "type": "object",
  "properties": {
    "spec": {
      "type": "string",
      "description": "Natural-language spec or acceptance criteria to check against."
    },
    "submission": {
      "type": "string",
      "description": "Natural-language submission text (description and/or public PR pack)."
    },
    "source": {
      "type": "string",
      "enum": [
        "corpus",
        "findings",
        "spec",
        "book",
        "maintainers",
        "secsov",
        "commons-whitepaper",
        "bitcoin-whitepaper",
        "articles",
        "papers",
        "textbooks",
        "nips",
        "slips",
        "sv2",
        "ln-spec",
        "tooling",
        "hw",
        "synthesis",
        "blvm-docs",
        "pool",
        "vision",
        "governance",
        "github",
        "irc",
        "mail",
        "delving",
        "bitcointalk",
        "stackexchange",
        "core_src",
        "src",
        "satoshi",
        "releases",
        "bips",
        "price",
        "transcripts",
        "project"
      ],
      "description": "Optional pin to one corpus source (e.g. github, irc, mail, spec). Omit to search both layers."
    },
    "when": {
      "type": "string",
      "description": "Optional date pin YYYY, YYYY-MM, or YYYY-MM-DD. Keeps cites whose passage date starts with that prefix."
    },
    "github_pr": {
      "type": "string",
      "description": "Optional public GitHub PR URL (https://github.com/owner/repo/pull/n) or ref (owner/repo#n). Packed into the submission. Private repos fail. Not an arbitrary URL fetch."
    },
    "requirements": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Optional named criteria strings. When present, the judge scores a criterion 0-1 only if packed cites bear on it; otherwise the score is omitted."
    },
    "caller_ref": {
      "type": "string",
      "description": "Optional opaque correlation id. Echoed, not interpreted."
    }
  },
  "required": [
    "spec",
    "submission"
  ],
  "additionalProperties": false
}
🟢find_discourse(path, repo, symbol, query, snapshot)

Retrieve GitHub, mail, IRC, and Delving cites for a path or symbol. Mail/IRC rarely include paths.

Input Schema

{
  "type": "object",
  "properties": {
    "path": {
      "type": "string",
      "description": "Source path to search (e.g. src/validation.cpp)."
    },
    "repo": {
      "type": "string",
      "description": "Optional owner/repo token to include in the query."
    },
    "symbol": {
      "type": "string",
      "description": "Optional function or type name."
    },
    "query": {
      "type": "string",
      "description": "Optional extra search text."
    },
    "snapshot": {
      "type": "boolean",
      "description": "If true, persist this result as a dated snapshot."
    }
  },
  "required": [
    "path"
  ],
  "additionalProperties": false
}
🟢find_precedent(query, snapshot)

Retrieve BIP, GitHub, and mail cites for a proposal. Disposition is only what a cite heading or URL already says. Does not invent merged/rejected/stalled labels.

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Proposal title, BIP number, or change description."
    },
    "snapshot": {
      "type": "boolean",
      "description": "If true, persist this result as a dated snapshot."
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false
}
🟢find_incident(query, snapshot)

Retrieve index cites for a named incident or CVE (e.g. CVE-2018-17144). Same search page as search. Empty if the index has no passage.

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "CVE id or incident name."
    },
    "snapshot": {
      "type": "boolean",
      "description": "If true, persist this result as a dated snapshot."
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false
}
🟢find_spec_impl(query, snapshot)

Retrieve spec, Core source, and GitHub cites for a spec section or behavior. Cites only. Does not emit aligned/gap/divergence verdicts.

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Spec section, rule, or implementation question."
    },
    "snapshot": {
      "type": "boolean",
      "description": "If true, persist this result as a dated snapshot."
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false
}

Recommended Prompts

search_research
Search for information about [topic] using BTCDecoded Intelligence
Expected tools: search
find_specific
Find [specific item] using BTCDecoded Intelligence
Expected tools: search
retrieve_data
Get details about [item] from BTCDecoded Intelligence
Expected tools: get_contributor_profile
fetch_info
Fetch [information type] using BTCDecoded Intelligence
Expected tools: get_contributor_profile
research_workflow
Search for [topic], then get detailed information about the top results using BTCDecoded Intelligence
Expected tools: searchget_contributor_profile

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded14 tools
verifiedversion not recorded14 tools
verifiedversion not recorded13 tools
verifiedversion not recorded13 tools
verifiedversion not recorded13 tools
verifiedversion not recorded13 tools