@logicnodez/mcp-bridge
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@@logicnodez/mcp-bridgecheck gas oracle on Base"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
@logicnodez/mcp-bridge
Connect any MCP-compatible AI agent (Claude Desktop, Cursor, Windsurf, Cline, etc.) to LogicNodes — deterministic, pay-per-call infrastructure for autonomous agents on Base.
What this bridge exposes
8 deterministic service tools (x402 USDC pay-per-call):
Tool | What it does | Cost |
| Real-time gas for Base + EVM chains | $0.001 |
| EIP-712 domain readiness check | $0.001 |
| USDC supply + peg status | $0.001 |
| Lock USDC, verify job, release payment | $0.01 |
| Register an autonomous system | $0.01 |
| Signed SHA-256 inference commitment | $0.01–$0.10 |
| Rule-based compliance attestation | $0.01 |
| Hash-binding compute commitment (not a ZK circuit) | $0.01–$0.10 |
Plus marketplace tools: search_agents, get_agent, invoke_agent, check_task, verify_receipt — discovery and invocation across the LogicNodes worker catalog.
We publish our real usage numbers — settled volume, test-vs-real splits, quarantined workers — at logicnodes.io/transparency.
Related MCP server: MCPAGENT
Install
npx -y @logicnodez/mcp-bridgeClaude Desktop config
{
"mcpServers": {
"logicnodes": {
"command": "npx",
"args": ["-y", "@logicnodez/mcp-bridge"],
"env": {
"LOGICNODES_API_KEY": "optional — x402 pay-per-call works without a key"
}
}
}
}On-chain trust
Escrow: EscrowV2 on Base — 0.5% fee, refund on expiry
Identity: ERC-8004 agent #55092
ERC-8183 conformance: logicnodes.io/erc-8183
A2A agent card: logicnodes.io/.well-known/agent-card.json
Docs
Available Tools
8 toolslogicnodes_compliance_sentryA
Autonomous regulatory attestation for agent transactions. Checks action against MiCA, EU AI Act, and US EO compliance rules. Returns attestation hash and compliance score. Cost: $0.01 USDC per check.
| Name | Required | Description | Default |
|---|---|---|---|
| amount_usd | No | Transaction value in USD if applicable | |
| action_type | Yes | Type of agent action (transfer, inference, governance, trade) | |
| jurisdiction | No | Regulatory jurisdiction (EU, US, GLOBAL) | GLOBAL |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavior. It mentions it is 'autonomous', checks against rules, returns attestation hash and compliance score, and discloses cost ($0.01 USDC). However, it does not clarify if it is read-only or creates records, nor what happens on non-compliance.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise, with four short statements that front-load the main purpose. It wastes no words, though it could be slightly more structured (e.g., bullet points).
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the absence of an output schema, the description adequately explains what is returned (attestation hash and compliance score). It lists the regulations checked and the cost. However, it lacks details on error handling or prerequisites, but overall is sufficiently complete for a simple compliance check tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% (all three parameters have descriptions). The tool description does not add any additional meaning beyond what the schema already provides, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool performs 'regulatory attestation' and 'checks action against MiCA, EU AI Act, and US EO compliance rules', with specific verb 'Checks' and resource 'compliance rules'. It distinguishes from siblings like logicnodes_sig_verify and logicnodes_gas_oracle which serve different purposes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies it is used for agent transactions needing compliance checks, mentioning cost per check, but does not explicitly state when to use it versus alternatives (e.g., inference_attest) or when not to use it (e.g., if no regulatory jurisdiction applies).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
logicnodes_escrow_verifierA
On-chain escrow state verifier. Checks LogicNodesEscrow contract for active escrow, balance, and release conditions. Cost: $0.001 USDC per call.
| Name | Required | Description | Default |
|---|---|---|---|
| escrow_id | Yes | Escrow ID or transaction hash | |
| party_address | No | Address to check escrow for |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits. It mentions a cost of $0.001 USDC per call, which is useful, but it does not state whether the operation is read-only or whether it involves side effects. The tool name suggests a verifier (likely read-only), but this is not explicit. Missing details about what happens on error or confirmation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no filler. The first states the purpose, the second adds a critical cost detail. Every word earns its place. Very efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description should hint at return values or side effects. It does not mention what the tool returns (e.g., a status, balance value, or boolean). Also, no prerequisites (e.g., network connection, API key) are stated. The cost note is good, but overall completeness is adequate but not thorough.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds value by explaining that the tool checks 'balance and release conditions', giving context to the parameters escrow_id and party_address. This helps the agent understand that the parameters are used to fetch specific escrow details, going beyond the bare schema types.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool checks the LogicNodesEscrow contract for active escrow, balance, and release conditions. The verb 'checks' and specific resource 'LogicNodesEscrow contract' make purpose unambiguous. Among siblings like logicnodes_sig_verify or logicnodes_gas_oracle, this tool is distinctly about escrow verification.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied: use when you need to verify on-chain escrow state. However, no explicit when-to-use or when-not-to-use guidance is given, nor are alternatives mentioned despite having 7 sibling tools. The description lacks exclusions or context for distinguishing from other verification tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
logicnodes_gas_oracleA
Real-time Base mainnet gas price oracle. Returns current base fee, priority fee, and EIP-1559 deviation from 7-day average. Cost: $0.0001 USDC per call.
| Name | Required | Description | Default |
|---|---|---|---|
| percentile | No | Fee percentile (50, 75, 95, 99) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses the cost per call and real-time nature, which are important behavioral traits. However, it does not explicitly state that the tool is read-only or safe, but the nature of an oracle implies no destructive side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: two sentences and a cost line. Every sentence adds value with no redundancy or fluff. The most important information (purpose, outputs) comes first.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (one optional parameter, no output schema, no annotations), the description provides complete context: what data it returns, which network, and the cost. The agent has sufficient information to decide and invoke.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage as the sole parameter 'percentile' is fully described. The tool description adds no additional meaning beyond the schema, so the baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool is a real-time gas price oracle for Base mainnet, listing specific return values (base fee, priority fee, EIP-1559 deviation). It distinguishes itself from sibling tools like logicnodes_sig_verify and logicnodes_peg_monitor, which serve different purposes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implicitly suggests using the tool when needing gas price data, but provides no explicit guidance on when to use it over alternatives or when not to use it. The mention of cost and real-time data gives some context, but lacks direct usage instructions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
logicnodes_identity_registerA
Register an agent identity on Base mainnet via AgentIdentityRoot. Returns on-chain identity hash and registration transaction. Cost: $0.01 USDC per registration.
| Name | Required | Description | Default |
|---|---|---|---|
| capabilities | Yes | List of agent capability strings | |
| metadata_uri | No | IPFS or HTTPS URI for agent metadata | |
| agent_address | Yes | Agent wallet address |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses cost and return values, but does not cover failure modes, idempotency, or permission requirements. Adequate but not exhaustive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the primary action, and includes essential details (cost) without any fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity and full schema coverage, the description covers purpose, return, and cost, but lacks context on prerequisites, error handling, or when this tool should be chosen over siblings.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, so the baseline is 3. The description adds no extra meaning to parameters beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'register' and the specific resource 'agent identity on Base mainnet via AgentIdentityRoot'. It also mentions return values and cost, making it distinct from sibling tools which are verification, oracle, monitoring, etc.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use for registering identities, but lacks explicit guidance on when not to use it or alternatives. No prerequisites or success/failure conditions are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
logicnodes_inference_attestC
Attest an AI inference result on-chain via InferenceAttestationNetwork. Produces a signed POL receipt verifiable by any chain participant. Cost: $0.001 USDC per attestation.
| Name | Required | Description | Default |
|---|---|---|---|
| model_id | Yes | ||
| confidence | No | Model confidence 0-1 | |
| input_hash | Yes | keccak256 of inference input | |
| output_hash | Yes | keccak256 of inference output |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses cost ($0.001 USDC) and mentions the receipt, but lacks details on side effects, permissions, or error scenarios. No annotations provided, so description carries full burden but is insufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences, front-loaded with verb, no redundant information. Every word adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Without output schema or annotations, the description should provide more context on usage, return values, and error handling. It is incomplete for a tool with 4 parameters.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers 75% of parameters with descriptions. Description adds no additional parameter information beyond what is in the input schema, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool attests an AI inference result on-chain and produces a signed POL receipt. It specifies the platform and output, but does not explicitly distinguish from sibling tools like zk_compute_attest.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives. The description does not indicate prerequisites, exclusions, or context for usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
logicnodes_peg_monitorA
USDC peg stability monitor. Returns current USDC/USD deviation, Circle reserve attestation status, and depeg risk score. Cost: $0.0001 USDC per call.
| Name | Required | Description | Default |
|---|---|---|---|
| threshold_bps | No | Alert threshold in basis points |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description should disclose behavioral traits. It mentions cost and outputs but does not state that it is read-only, any side effects, authorization needs, or rate limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with purpose, then outputs and cost. Every sentence earns its place with no fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one optional parameter and no output schema, the description explains what it returns but lacks detail on output format and the effect of threshold_bps. Adequate but could be more complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the parameter description in schema is sufficient. The tool description does not add additional meaning beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it is a 'USDC peg stability monitor' and lists specific outputs: deviation, reserve attestation, risk score. It distinguishes itself from unrelated sibling tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for USDC peg status without explicit alternatives or exclusions. The cost note provides practical guidance, but no 'when not to use' is stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
logicnodes_sig_verifyA
Cryptographic signature verification on Base. Verifies EIP-712 typed data signatures and returns signer address with on-chain proof. Cost: $0.0001 USDC per call.
| Name | Required | Description | Default |
|---|---|---|---|
| message | Yes | ||
| signature | Yes | ||
| expected_signer | No | Optional expected signer address |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses the cost ($0.0001 USDC per call) and mentions returning the signer address with on-chain proof, but it does not explicitly state whether the tool is read-only, requires authentication, or has rate limits. Since it's a verification tool, it is likely non-destructive, but this is not confirmed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences: one clearly stating functionality and one specifying cost. It is concise, front-loaded with the core purpose, and contains no unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no output schema and only medium parameter count, the description covers the basic purpose and cost. However, it lacks details on input format requirements (e.g., encoding of message and signature), expected return structure (e.g., address format), and any prerequisites. For a developer to use this tool confidently, more detail would be beneficial.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 33% (only expected_signer has a description). The tool description adds context by stating it verifies EIP-712 typed data signatures, implying that 'message' is the typed data and 'signature' is the cryptographic signature. However, it does not explicitly define these parameters' formats (e.g., hex, JSON) or provide per-parameter guidance, leaving ambiguity.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool performs cryptographic signature verification on Base, specifically EIP-712 typed data, and returns the signer address with on-chain proof. The verb 'verifies' and resource 'signatures' are specific, and the scope (Base blockchain, EIP-712) distinguishes it from sibling tools like logicnodes_gas_oracle or logicnodes_peg_monitor.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for verifying EIP-712 typed data signatures on Base, but it provides no explicit guidance on when to use this tool versus alternatives, nor does it specify conditions for use or exclusions. The cost mention is helpful but not sufficient for clear usage guidelines.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
logicnodes_zk_compute_attestA
Zero-knowledge compute attestation. Proves a computation was performed correctly without revealing inputs. Returns ZK proof hash anchored to Base via LogicNodesGraphCommitment. Cost: $0.05 USDC per proof.
| Name | Required | Description | Default |
|---|---|---|---|
| circuit_id | Yes | ZK circuit identifier | |
| public_inputs | No | ||
| computation_hash | Yes | Hash of the computation to attest |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavioral traits. It reveals return type (ZK proof hash), anchoring, and cost per proof. However, it does not address idempotency, side effects, authorization, or state mutation, leaving gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three concise sentences, each adding unique value: purpose, proof property, and output with cost. No unnecessary words; front-loaded with core functionality.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema or annotations, the description explains purpose and return type, but omits usage guidelines, detailed parameter roles, behavioral details, and full output format. Adequate but not comprehensive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 67%, but the tool description adds no per-parameter explanation beyond schema. public_inputs lacks description in both schema and tool description, leaving its role unclear.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool performs zero-knowledge compute attestation, proving computation correctness without revealing inputs. It distinguishes from siblings by specifying ZK and anchoring to Base, and mentions returning a proof hash and cost.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use for verifying computations with ZK, but does not explicitly state when to use this tool vs alternatives like logicnodes_inference_attest or logicnodes_sig_verify. No exclusion criteria or prerequisites are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
8 tool updates
v1.0.4- First observed
logicnodes_compliance_sentry - First observed
logicnodes_escrow_verifier - First observed
logicnodes_gas_oracle - First observed
logicnodes_identity_register - First observed
logicnodes_inference_attest - First observed
logicnodes_peg_monitor - First observed
logicnodes_sig_verify - First observed
logicnodes_zk_compute_attest
TDQS
Scored across 8 tools
Each tool targets a distinct blockchain operation: signature verification, gas oracle, peg monitoring, escrow verification, identity registration, inference attestation, compliance checking, and ZK compute attestation. No overlapping purposes.
All tools follow the consistent pattern 'logicnodes_<descriptive_snake_case_name>' (e.g., sig_verify, gas_oracle, zk_compute_attest). The naming is predictable and clear.
8 tools is an appropriate count for a blockchain bridge server. It covers a breadth of functionalities without being overwhelming or too sparse.
The tool surface covers core bridge operations (verification, monitoring, registration, attestation). A minor gap is a generic transaction or balance checking tool, but the set is largely complete for its domain.
Maintenance
Related MCP Connectors
Pay-per-call tools for autonomous agents, settled in USDC on Base via x402.
Pay-per-use tool marketplace for AI agents. Search, price-check, and call APIs via MCP.
15 paid AI agent primitives via x402 (USDC on Base). Pay-per-call MCP server.
Production-grade MCP gateway delivering 8 real-time AI tools with instant x402 micropayments settled in USDC on Base Mainnet or SPL-USDC on Solana. Features Basescan contract auditing, wallet analytics, headless browser scraping, and pre-scraped oracle data feeds.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceAn agent-to-agent marketplace where AI agents discover, hire, and pay each other in USDC on Base. Agents list services, post jobs, submit proposals, and invoke each other's capabilities — all through API, MCP, or A2A protocol.MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to discover and interact with onchain agent infrastructure on Base, including identity, micropayments, and tool capabilities via MCP.4MIT
- AlicenseAqualityDmaintenanceThe MCP gateway that lets any AI agent discover and pay metered APIs on Base or Solana — without the user wiring payments themselves.351Apache 2.0
- AlicenseCqualityBmaintenanceOne MCP install that lets your AI agents discover and pay (x402 micropayments, USDC on Base + Solana) for 66 specialized real-time intelligence APIs - finance, crypto, insurance, immigration, legal, markets and more. 68 tools, pey-per-query, no subscription.69303Apache 2.0