Skip to main content
Glama

Server Details

Signal-first Bitcoin intelligence over MCP. Surfaces leading, non-price indicators — sovereign reserve adoption, Bitcoin/crypto-infra hiring velocity, and network hashrate trend — each with a 0–100 strength, a direction (tailwind/headwind/neutral), a one-line rationale, and primary sources. Tools: scan_signals, get_hiring_signal, get_sovereign_reserves, get_network_signal, get_daily_brew. Resource: coinbucha://methodology. Information, not financial advice.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 4.4/5 across 7 of 7 tools scored.

Server CoherenceA
Disambiguation5/5

Each tool targets a distinct data source or signal type: daily brew is the aggregate digest, scan_signals is the ranked detailed feed, and the rest cover specific indicators (ETF flows, hiring, hashrate, sovereign reserves, treasury holdings). While daily brew and scan_signals both summarize signals, their descriptions clearly differentiate the digest from the filterable, ranked feed, so there is no real ambiguity.

Naming Consistency4/5

Six of seven tools follow a consistent get_<noun> pattern (get_etf_flows, get_hiring_signal, etc.). The exception is scan_signals, which uses a verb instead of get_ — a minor deviation that is still readable and logical, but slightly breaks the dominant pattern.

Tool Count5/5

Seven tools is a well-scoped number for a Bitcoin indicators server. Each tool earns its place, covering a distinct signal source plus two aggregate views (daily brew, scan_signals). This is comfortably within the ideal 3-15 range.

Completeness4/5

The toolset covers a comprehensive set of leading non-price Bitcoin indicators (ETF flows, hiring, hashrate, sovereign reserves, treasury holdings) plus aggregate access. There may be room for additional signals (e.g., derivatives or on-chain metrics), but given the server's stated purpose as a curated signal set, the surface appears largely complete with only minor potential gaps.

Available Tools

7 tools
get_daily_brewCoinBucha Daily BrewA
Read-onlyIdempotent
Inspect

The day's machine-readable digest of the whole signal set — the CoinBucha Daily Brew. Takes no arguments. Returns { date, btc_price_usd, headline, signals_summary[] }, one summary line per signal with its strength, direction and one-line why. Example: {}. Information, not financial advice.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint and idempotentHint, and the description adds valuable context by specifying the exact return structure (date, btc_price_usd, headline, signals_summary[]) and explaining each signal line. The disclaimer 'Information, not financial advice' also clarifies the tool's nature. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and front-loaded, immediately stating the tool's purpose. It includes a compact example of the return structure and a disclaimer, all within three sentences. Every sentence contributes to understanding, with no fluff or repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description fully specifies the response format and content, ensuring the agent knows what to expect. It also covers the tool's input (none), return fields, and a caveat. Combined with strong annotations for safety, the description is complete for this simple read-only tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, and the schema confirms this with 100% coverage. The description states 'Takes no arguments,' which is redundant but harmless. Per the baseline for 0 params, a score of 4 is appropriate since no parameter meaning needs to be added.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the tool as providing 'The day's machine-readable digest of the whole signal set,' distinguishing it from siblings that focus on individual signals. The verb 'returns' and specifics (date, btc_price, headline, signals_summary) make its purpose unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies use for a broad overview via 'whole signal set' and lists what the digest contains, but it does not explicitly state when to choose this over sibling tools like scan_signals or get_hiring_signal. No exclusions or alternative recommendations are provided, so guidance is implied but not explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_etf_flowsSpot Bitcoin ETF flowsA
Read-onlyIdempotent
Inspect

Spot Bitcoin ETF net-flow figures exactly as the upstream source reports them — latest day plus trailing 5/30-day, per fund where the source breaks it out. Takes no arguments. Returns { available, status, as_of, date_basis, unit, note, disclaimer } plus the flow figures when a document is present; when the feed is absent, stale or unreadable it says so in status and serves no number rather than substituting a zero. Example: {}. Information, not financial advice.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the readOnlyHint and idempotentHint annotations, the description discloses critical behaviors: it reports data 'exactly as the upstream source reports them,' and when the feed is absent/stale/unreadable it 'says so in status and serves no number rather than substituting a zero.' It also lists the exact return keys and adds a 'not financial advice' disclaimer. This is excellent for an agent assessing side effects and failure modes.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is thorough and front-loaded with the primary purpose, covering source fidelity, timeframe, per-fund detail, return structure, failure behavior, and disclaimer. The 'Example: {}' line is slightly unhelpful (an empty object doesn't illustrate anything), but it does not detract significantly. Each sentence earns its place, though it could be trimmed slightly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema and no parameters, the description carries the full burden of explaining return values and behavior. It does so comprehensively: return keys, the handling of missing/unreadable feeds, the no-zero-substitution policy, and the source fidelity. This is complete enough for an agent to invoke the tool correctly and interpret the outcome.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so the baseline is 4. The description reinforces this with 'Takes no arguments,' which is a clear confirmation. No additional parameter semantics are needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly specifies the tool's function: 'Spot Bitcoin ETF net-flow figures exactly as the upstream source reports them.' It names the exact resource (Spot Bitcoin ETF net flows), includes the timeframe (latest day plus trailing 5/30-day), and per-fund granularity. This distinguishes it from sibling tools like get_sovereign_reserves or get_hiring_signal.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description states the tool's scope ('Spot Bitcoin ETF net-flow figures') and explicitly notes it takes no arguments, making it obvious when this tool is relevant. However, it does not explicitly name alternatives or provide when-not-to-use conditions, though the domain is clearly distinct from the siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_hiring_signalBitcoin hiring velocityA
Read-onlyIdempotent
Inspect

Hiring velocity across tracked Bitcoin and crypto-infrastructure employers, counted from their live ATS boards. Returns { as_of, companies[], note, why, disclaimer }; each company carries company, ticker, category, ats, careers_url, open_roles, open_roles_30d_ago, open_roles_90d_ago and the derived delta_30d, delta_90d and pct_30d. Example: {"company": "coinbase"} for one employer, or {} for every employer tracked. When a company filter matches no tracked employer the response adds coverage_note and tracked_count, saying that the name is outside the tracked set — a limit of coverage, not a finding about whether that company is hiring. Information, not financial advice.

ParametersJSON Schema
NameRequiredDescriptionDefault
companyNoCase-insensitive company filter
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint and idempotentHint, so the safety profile is established. The description adds the data source (live ATS boards), a detailed return payload with derived fields, and a disclaimer, which is valuable context given the lack of an output schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise, starting with the core purpose, then detailing the return structure, an example, and a disclaimer—all in two sentences. Every element earns its place without redundancy, making it easy to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with a single optional parameter and no output schema, the description is exceptionally complete: it specifies the return shape field-by-field, provides an example invocation, and notes the non-financial-advice caveat. This is sufficient for an agent to select and invoke the tool correctly without additional documentation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema provides 100% coverage with a description of the 'company' parameter as a case-insensitive filter. The description enhances this by showing the exact JSON structure for filtering one company versus omitting the parameter for all employers, which adds practical usage meaning beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool measures hiring velocity from live ATS boards of Bitcoin and crypto-infrastructure employers, which is a specific domain distinct from sibling tools like etf_flows or network_signal. The return structure is explicitly outlined, leaving no ambiguity about the tool's function.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use the tool (for hiring data from crypto employers) and provides a concrete example of filtering by company or fetching all tracked employers. However, it does not explicitly contrast with alternatives or state exclusions, though the clear domain focus makes the context practically unambiguous.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_network_signalBitcoin network hashrateA
Read-onlyIdempotent
Inspect

Bitcoin network hashrate level and trend. Takes no arguments. Returns { as_of, hashrate_eh (exahashes per second), pct_30d, pct_90d, why, disclaimer }. Example: {}. Information, not financial advice.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds context beyond the readOnlyHint and idempotentHint annotations by specifying the output fields (as_of, hashrate_eh, pct_30d, pct_90d, why, disclaimer) and includes a disclaimer ('Information, not financial advice'). This discloses behavioral aspects like the data returned and its nature, without contradicting the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, with the purpose front-loaded in the first sentence. The second sentence efficiently covers arguments, return fields, and a disclaimer. Every sentence earns its place, and the 'Example: {}' is a compact way to illustrate usage.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (no arguments, no output schema), the description provides a comprehensive overview by listing all returned fields and including a caution. It lacks detailed explanations of 'why' or 'disclaimer', but for a read-only informational endpoint, it is sufficiently complete for an agent to invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has zero parameters, so the baseline is 4 per the rubric. The description explicitly states 'Takes no arguments', which matches the empty input schema. While it adds no parameter-specific meaning, the zero-parameter case is handled clearly and accurately.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool provides 'Bitcoin network hashrate level and trend', a specific resource and function. It differentiates from sibling tools like get_etf_flows or get_sovereign_reserves by topic, making it unambiguous which tool to use for hashrate data.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains that the tool 'takes no arguments' and returns a specific structure, but it does not explicitly state when to use it versus alternatives. Usage is implied from the title and topic, but no exclusions or alternative tool references are provided, so guidance is limited to context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_sovereign_reservesSovereign Bitcoin reservesA
Read-onlyIdempotent
Inspect

Nation-state Bitcoin holdings, ranked largest first. Returns { as_of, btc_price_usd, count, sovereigns[], disclaimer }; each row carries country_name, country_code, holdings_btc, status, tier (1 = largest holders), framework, sources[], its own as_of, and source_quality (primary = confirmed against the state's own publication; secondary = reported, not confirmed at source — derived from that row's sources[]). Filter by country name or ISO code, or by tier. Example: {"country": "US"} or {"tier": 1} — call with {} for the full ranking. Information, not financial advice.

ParametersJSON Schema
NameRequiredDescriptionDefault
tierNoHolding tier; 1 = largest holders
countryNoCountry name or ISO code
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already indicate read-only, idempotent behavior, and the description adds substantial context: the full return shape, per-row fields, the meaning of source_quality, and the disclaimer. It clarifies that source_quality is derived from each row's sources[], which goes beyond the structured annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is dense but well-structured, front-loading the core purpose and then enumerating output details and usage examples. It is somewhat long due to the rich return field breakdown, but every sentence contributes meaningful information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description fully compensates by enumerating the top-level and per-row fields, explaining tier and source_quality semantics, and giving usage examples. It provides enough context for an agent to invoke the tool and interpret results correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema covers both parameters with descriptions, so baseline is 3. The description adds value by clarifying filtering semantics ('country name or ISO code'), providing examples for each parameter, and explaining that empty input returns the full ranking — details not present in the schema alone.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description begins with a specific verb and resource: 'Nation-state Bitcoin holdings, ranked largest first.' It clearly states what the tool returns and the ordering, and the 'Nation-state' qualifier distinguishes it from sibling tools like get_treasury_holdings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives explicit usage patterns: filter by country name or ISO code, filter by tier, and call with {} for the full ranking. It provides concrete examples but does not explicitly mention when not to use this tool or compare it to alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_treasury_holdingsCorporate Bitcoin treasuriesA
Read-onlyIdempotent
Inspect

Bitcoin held on the balance sheets of tracked public companies, in aggregate and by largest holder. Takes no arguments. Returns { as_of, total_btc, company_count, total_value_usd, top[], why, disclaimer }, where top[] lists the largest holders as { name, symbol, btc }. Example: {}. Information, not financial advice.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already provide readOnly and idempotent hints. The description adds valuable context by specifying the exact return structure ({ as_of, total_btc, company_count, total_value_usd, top[], why, disclaimer }), clarifying that it covers 'tracked' companies only, and including a 'not financial advice' disclaimer. This goes beyond the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and efficiently structured: it states the purpose, notes the lack of arguments, details the return fields, provides an example, and includes a disclaimer—all in four short sentences with no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite lacking an output schema, the description fully defines the return format, including the nested top[] structure. It also includes an example and a disclaimer, making the tool's output and limitations clear for a parameterless operation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There are no parameters, and the description explicitly confirms 'Takes no arguments,' matching the empty input schema. With zero parameters, the baseline is 4, and nothing needs further explanation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states the tool's function: reporting Bitcoin held on balance sheets of tracked public companies, both in aggregate and by largest holder. This clearly differentiates it from sibling tools like get_etf_flows or get_sovereign_reserves, which focus on other data domains.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The intended use case is implied by the description (analyzing corporate bitcoin treasuries), but there is no explicit guidance on when to use this tool versus alternatives, nor any exclusion criteria. It relies on the user to infer appropriate usage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

scan_signalsScan Bitcoin signalsA
Read-onlyIdempotent
Inspect

Ranked cross-signal feed of CoinBucha's leading, non-price Bitcoin indicators. Returns { as_of, btc_price_usd, count, signals[], disclaimer }, where each signal carries id, type, title, value, unit, signal_strength (0-100), direction (tailwind | headwind | neutral), a one-line why, sources[] and its own as_of. Optional filters narrow by strength, direction or signal type. Example: {"min_strength": 70, "direction": "tailwind"} — call with {} for the full ranked list. Observational data; information, not financial advice.

ParametersJSON Schema
NameRequiredDescriptionDefault
directionNoKeep only signals carrying this direction label
min_strengthNoOnly signals with strength >= this
signal_typesNoe.g. ['sovereign_adoption','hiring_velocity']
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish read-only and idempotent behavior. The description adds valuable behavioral context: it explicitly labels the data as observational and disclaims financial advice, and details the return structure (top-level keys and per-signal fields). This goes beyond what annotations convey.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and well-structured: purpose, return schema, filter options, an example, and a caveat are all presented in three dense sentences with no redundancy or filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite the lack of an output schema, the description thoroughly enumerates the response fields and per-signal attributes, explains the optional filters, and provides an example. This is complete enough for an agent to select and invoke the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with descriptions for all three parameters. The description enhances this by providing a concrete invocation example and clarifying that an empty object yields the full ranked list, which aids real-world usage beyond the schema's static descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool as a 'Ranked cross-signal feed of CoinBucha's leading, non-price Bitcoin indicators.' This specific verb-resource pair distinguishes it from sibling tools that target individual data streams such as ETF flows or network signals.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies use for a cross-signal overview and provides filter examples, but it does not explicitly state when to use this tool versus the sibling getters. No exclusions or alternative-tool references are given, so guidance is implied rather than explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Servers

  • A
    license
    A
    quality
    A
    maintenance
    GTM signal intelligence suite for AI agents. Six tools: hiring signals, tech stack detection, company-to-LinkedIn resolution, ICP scoring, job board scanning, and a combined signals aggregator. Built for outbound sales workflows.
    11
    737
    1
    MIT
  • F
    license
    -
    quality
    C
    maintenance
    Browse IndustryLens's published competitive-intelligence reports and head-to-head competitor comparisons from any AI agent — real, source-backed data.

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources