MCP-Server

canton-ccpedia

io.github.UnityNodes/canton-ccpedia
Entwicklertools Wissen & Dokumentation Suche & Recherche Öffentlich und erreichbar MCP 2025-11-25

Was dieses MCP kann

Searches and explains Canton Network and Daml documentation, governance proposals, forums, code examples, APIs, releases, and ecosystem projects.

call_canton_mcp
Federate a tool call to another Canton MCP server (see list_canton_mcps). CCPEDIA proxies the call and returns the result, acting as one MCP that routes across the Canton MCP ecosystem. Only free, hosted, no-auth Canton MCPs can be proxied; local or paid ones return connect instructions instead. Canton-only.
Externer Zugriff
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['server', 'tool'], 'properties': {'tool': {'type': 'string', 'description': 'Tool name to call on that server'}, 'server': {'type': 'string', 'description': 'Target MCP id from list_canton_mcps (e.g. "ccpedia", "x402-mcp")'}, 'arguments': {'type': 'object', 'description': 'Arguments object for that tool', 'propertyNames': {'type': 'string'}, 'additionalProperties': {}}}}
check_deprecation
Check whether a specific Canton/Daml toolchain item (CLI, SDK package, or command: e.g. daml-assistant, Navigator, dpm) is deprecated. Canton-specific. Not a general npm/pip deprecation checker. ALWAYS call before recommending any Canton tool or package to a developer. Accepts either one name or a block of prose: given prose it reports every deprecated item mentioned in it. Returns DEPRECATED (with replacement), CURRENT, or NOT_FOUND.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['name'], 'properties': {'name': {'type': 'string', 'minLength': 2, 'description': 'Tool/package/command to check, e.g. "daml-assistant", "Navigator", "dpm", "canton sandbox". A longer block of text (a forum post, a draft answer) is scanned for every deprecated item it mentions.'}}}
community_consensus
Surface signals of what the Canton community thinks about a topic: forum thread reply ratios, mailing list debate volume, and the first reply on the most-viewed thread. Canton-specific. Not sentiment-analysis; a structured roundup the caller can summarise.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['topic'], 'properties': {'topic': {'type': 'string', 'minLength': 2, 'description': 'Topic to assess.'}}}
compare_governance_outcomes
Aggregate governance throughput over a window: CIPs that changed status (approved / rejected / advanced), counts of cip-vote and cip-discuss mailing activity, and dev-fund proposals opened in the window that are closed today (merged, withdrawn and rejected are not distinguished; no close dates are stored). Canton-specific. Use to summarise "what governance has shipped this quarter?".
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'window_days': {'type': 'integer', 'default': 90, 'maximum': 365, 'minimum': 7, 'description': 'Window in days, 7-365 (default 90).'}}}
compare_to_evm
Map one Ethereum/EVM concept (e.g. smart contract, wallet, gas, ERC20, Hardhat, ABI) to its Canton Network equivalent, for developers migrating from Solidity/EVM to Canton. Canton-specific (target is always Canton). Use for single concept-to-concept translations; use get_started_guide for a full EVM-to-Canton learning path.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['concept'], 'properties': {'concept': {'type': 'string', 'description': 'EVM concept, e.g. "smart contract", "wallet", "gas", "ERC20", "Hardhat", "Remix", "ABI".'}}}
detect_builder_overlap
Given a project/proposal idea, find existing Canton ecosystem projects + dev-fund proposals that look similar: across BOTH the canton-dev-fund proposals corpus AND ecosystem_projects. Broader than find_similar_projects, which only searches the live ecosystem directory. Canton-specific. Cuts manual cross-reference research before submitting a new proposal.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['idea'], 'properties': {'idea': {'type': 'string', 'minLength': 6, 'description': 'One-paragraph project idea or capability description.'}}}
detect_cip_dependency_chain
Walk the CIP `requires:` graph from a starting CIP or PR draft. Returns the full chain of prerequisites that must reach `Final` before the starting proposal becomes implementable, with each prerequisite's current status. Accepts both approved CIPs ("CIP-0112", "0112") and dev-fund PR drafts ("PR-203"). Canton governance only. Use when planning around a CIP that hasn't shipped yet.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['cip_id'], 'properties': {'cip_id': {'type': 'string', 'description': 'Starting CIP or PR id, e.g. "0112", "CIP-0112", or "PR-203".'}}}
detect_drift
Find contradictions between docs, forum and GitHub on a topic. Returns counts of how each surface talks about it plus the most recent doc-page and forum statement so the caller can spot mismatches. Distinct from get_kb_drift (which compares foundation_kb to live releases).
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['topic'], 'properties': {'topic': {'type': 'string', 'minLength': 2, 'description': 'Topic to cross-check.'}}}
diagnose_error
Paste a Canton/Daml/Splice ERROR MESSAGE, stack trace, or error code and get the most likely resolved fixes from CCPEDIA history: forum threads where the same error was discussed, and related GitHub issues (each with its own date). Needs a literal error string or code (e.g. TOPOLOGY_TOO_MANY_PENDING_TOPOLOGY_TRANSACTIONS, ValidatorLicense); do NOT use it for symptom descriptions with no error text (e.g. "my balance is zero"), use semantic_search for those. Canton-specific. Returns top 3 matches each from forum and github.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['error_text'], 'properties': {'limit': {'type': 'integer', 'maximum': 10, 'minimum': 1, 'description': 'Max matches per source (default 3).'}, 'error_text': {'type': 'string', 'minLength': 8, 'description': 'Error message, stack trace, or status code. Longer/more distinctive text returns better matches.'}}}
ecosystem_dependency_graph
Map ecosystem_projects matching a topic to the SDK versions and repos they appear alongside, building a quick dependency picture. Canton-specific. Useful for "if I build with X SDK version, who else is on it?".
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['topic'], 'properties': {'topic': {'type': 'string', 'minLength': 2, 'description': 'Topic / category / project family.'}}}
find_apps_by_pattern
Pattern-search the Featured Apps catalogue by free-text query across name, category, and description. Returns the best matches in name+category, falling back to description. Canton-specific.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['pattern'], 'properties': {'limit': {'type': 'integer', 'maximum': 50, 'minimum': 1, 'description': 'Max rows (default 10).'}, 'pattern': {'type': 'string', 'description': 'Free text, e.g. "AMM", "wallet", "DeFi vault", "validator".'}}}
find_cip_for_feature
Given a Canton feature or capability description, find the matching CIP(s) by searching titles and bodies. Canton-specific. Use to answer "is there a CIP for X?".
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['feature'], 'properties': {'feature': {'type': 'string', 'minLength': 2, 'description': 'Feature description, e.g. "wallet abstraction", "token standard", "validator staking".'}}}
find_code_examples
Find Canton/Daml code snippets in forum posts on a topic. Filters forum_posts where the rendered HTML contains `<pre>` or `<code>` blocks AND matches the topic keyword. Canton-specific.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['topic'], 'properties': {'limit': {'type': 'integer', 'maximum': 15, 'minimum': 1, 'description': 'Max rows (default 5).'}, 'topic': {'type': 'string', 'minLength': 2, 'description': 'Topic keyword.'}, 'offset': {'type': 'integer', 'default': 0, 'maximum': 9007199254740991, 'minimum': 0, 'description': 'Skip this many before returning, for paging past the limit. The response states the full count and echoes the offset used.'}}}
find_collaboration_opportunities
Given one Canton ecosystem project, find others with complementary tags/category that could plug in. Canton-specific. Lightweight heuristic: overlap of tags + adjacent categories.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['project'], 'properties': {'project': {'type': 'string', 'minLength': 2, 'description': 'Project name or slug to look around.'}}}
find_expert
Rank likely Canton experts on a topic across CCPEDIA: forum activity matching the topic, plus overall forum/GitHub volume of that author. Canton-specific.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['topic'], 'properties': {'limit': {'type': 'integer', 'maximum': 15, 'minimum': 1, 'description': 'Max authors (default 5).'}, 'topic': {'type': 'string', 'minLength': 2, 'description': 'Topic / domain to find experts for.'}}}
find_known_issues
Surface known UNRESOLVED problems matching a free-text description: forum threads with zero replies but high views, plus open GitHub issues. Answers "is anyone else hitting this?". Canton-specific. Does NOT return fixes, solutions, config, or how-to steps, and returns nothing when no open issue matches; for "how do I fix / configure / why does X happen" use semantic_search (then get_doc) instead.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['description'], 'properties': {'limit': {'type': 'integer', 'maximum': 15, 'minimum': 1, 'description': 'Max rows per source (default 5).'}, 'description': {'type': 'string', 'minLength': 8, 'description': "What you're seeing. Short prose, not a stack trace (for that use diagnose_error)."}}}
find_maintainer_guidance
Surface forum/mailing posts authored by top-volume Canton contributors (likely maintainers) on a topic. Canton-specific. Use when you want to weight expert voices over the general forum.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['topic'], 'properties': {'topic': {'type': 'string', 'minLength': 2, 'description': 'Topic keyword, e.g. "topology", "wallet", "DAR upload".'}}}
find_security_patches
Surface release notes likely to contain security or CVE fixes. Canton-specific. Heuristic: matches release bodies containing security / CVE / vulnerability / patch keywords.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'limit': {'type': 'integer', 'maximum': 30, 'minimum': 1, 'description': 'Max rows (default 10).'}}}
find_similar_projects
Find Canton ecosystem projects most similar to a free-text description by matching across title + category + description + tags: searches only the live ecosystem directory. Canton-specific. Useful before proposing a project to check overlap; to also check pending/past Dev Fund proposals for the same idea, use detect_builder_overlap instead.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['description'], 'properties': {'limit': {'type': 'integer', 'maximum': 20, 'minimum': 1, 'description': 'Max rows (default 10).'}, 'offset': {'type': 'integer', 'default': 0, 'maximum': 9007199254740991, 'minimum': 0, 'description': 'Skip this many before returning, for paging past the limit. The response states the full count and echoes the offset used.'}, 'description': {'type': 'string', 'minLength': 4, 'description': 'Project description / idea.'}}}
full_context
Single free-text query across CCPEDIA's entire corpus at once: docs, CIPs, forum, mailing, GitHub items, blog, videos, whitepapers, ecosystem projects. Canton-specific. Use for an exhaustive cross-source roundup on a topic described in words, even if that topic happens to be a known CIP's nickname (e.g. 'featured app locking'). This tool does not require a CIP id. If the user already gives a specific CIP id/number, use get_cip_citations instead for a deeper single-CIP citation graph. For narrow single-source searches prefer the specialised tools.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['topic'], 'properties': {'topic': {'type': 'string', 'minLength': 2, 'description': 'Topic / question.'}, 'limit_per_source': {'type': 'integer', 'maximum': 10, 'minimum': 1, 'description': 'Max rows per source (default 3).'}}}
get_api_reference
Get a structured reference (ports, endpoints, services, links) for one specific Canton Network API: JSON Ledger API, gRPC Ledger API, Scan API, Validator API, Token Standard APIs, Admin API, or Splice HTTP. Canton-specific. Not for GitHub, REST, or non-Canton APIs. Use when the user names one of these Canton APIs; use search/semantic_search for broader doc lookups.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['api'], 'properties': {'api': {'enum': ['json_ledger_api', 'grpc_ledger_api', 'scan_api', 'validator_api', 'token_standard', 'admin_api', 'splice_http'], 'type': 'string', 'description': 'Which API to look up.'}}}
get_app_metrics
Fetch metrics for one specific Featured App by its app_id (contract id from the Scan API). Returns name, category, TVL, 24h volume, user count, and last activity from the Featured Apps registry. Canton-specific. TVL / volume / users may be null when only the Scan API source is available.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['app_id'], 'properties': {'app_id': {'type': 'string', 'description': 'Featured-app contract id, or a unique prefix of it as shown by list_featured_apps.'}}}
get_asset_supply
Get total token supply for a Canton-ecosystem asset: Canton Coin (CC), CBTC, HECTO, HANDL, USDCx, EDELx, or cETH. Omit the asset param to get all seven. Each row carries provenance: Canton Coin's supply is chain_derived (verifiable via the Global Synchronizer Scan registry); every other asset's supply is issuer_reported (CIP-0056 states on-ledger publication does not allow independent verification of total supply, since the holdings it's computed from are private) - treat those numbers as the issuer's own claim, not an audited fact. Holder counts are usually not_disclosed (Canton's privacy model hides holdings from third parties by design) and appear as null, not zero. Sourced from CCTools' public API. Canton-only; cannot price or size-supply any other chain's tokens.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'asset': {'type': 'string', 'description': 'Slug or symbol to filter to one asset, e.g. "cbtc", "CBTC", "canton-coin", or "CC". Case-insensitive. Omit for all seven.'}}}
get_breaking_changes
Compare two Canton/Daml/Splice SDK versions and return the list of changes between them: release notes from github_releases plus any forum/GitHub reports near the release window. Canton-specific. Use when a developer is planning an upgrade and asks "what breaks moving from X to Y?". Pass version strings as they appear in github_releases tags (with or without the leading "v").
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['from_sdk', 'to_sdk'], 'properties': {'repo': {'type': 'string', 'description': 'Optional repo hint: "canton", "splice" (alias for decentralized-canton-sync), "daml", or a full owner/name. Auto-inferred from version shape when omitted.'}, 'to_sdk': {'type': 'string', 'description': 'Target version, e.g. "0.6.10" or "v3.5.6".'}, 'from_sdk': {'type': 'string', 'description': 'Origin version, e.g. "0.5.0" or "v3.4.0".'}}}
get_cip
Fetch the full markdown body of a single Canton Improvement Proposal (CIP) by its ID (e.g. "CIP-0042", "0042", "PR-0117"). Returns only what the proposal SAYS. To learn whether that CIP was approved, enforced, or acted on ON CHAIN, use get_cip_vote_outcome instead: reading the proposal text does not tell you its on-chain fate. For the status timeline use get_cip_history; to browse or filter multiple CIPs use list_cips. Canton/Daml/Splice ecosystem only, not Cardano or other CIP schemes.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': 'CIP ID: "0001", "CIP-0042", or "PR-0117"'}}}
get_cip_attachments
Get the file/PDF attachments of a single Canton Improvement Proposal (CIP): supporting documents and signed-vote-record PDFs, with filename, page count, URL, and the full text CCPEDIA has extracted from each. Many older CIPs publish the proposal ITSELF as a PDF and leave only a header block in markdown, so for those this returns the actual proposal text and get_cip returns the index entry. For the parsed who-voted-how breakdown use get_cip_votes. Canton ecosystem only. Not Cardano or other 'CIP' schemes.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': 'CIP ID: "0001", "CIP-0042"'}}}
get_cip_citations
Comprehensive citation graph for a Canton Improvement Proposal (CIP): every place across CCPEDIA's corpus that references CIP-N. Returns per-source counts AND samples for: sibling CIPs (declared `requires:` or content-mentions), individual forum posts (not just topic count), individual mailing-list messages (all indexed lists.sync.global groups; no group is excluded), GitHub items (issues + PRs + dev-fund proposals across all indexed Canton repos), blog posts (third-party coverage), and YouTube videos (transcript matches). CCPEDIA-unique: joins through our parsed `mailing_messages.cip_id` column give per-message granularity no other source has. Use when an agent needs 'who is referencing CIP-X and where' / impact analysis, and a specific CIP id is already known. For the proposal's own text use get_cip, for its votes use get_cip_votes, for the legacy aggregated counts use get_cip_mentions. For a general topic or feature name with NO known CIP id. E.g. 'featured app locking' rather than 'CIP-0116'. Use full_context instead, which searches by free text across the whole corpus rather than requiring an id. Canton/Daml/Splice ecosystem only.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['cip_id'], 'properties': {'cip_id': {'type': 'string', 'description': 'CIP id, e.g. "CIP-0056", "0056", "PR-0117". Padded or unpadded both accepted.'}}}
get_cip_history
Get the status-transition timeline of a single Canton Improvement Proposal (CIP): each dated from->to change (e.g. Draft->Review->Final). Use for 'how/when did CIP-X move through governance' questions. Returns history only, not the proposal body (get_cip) or vote tallies (get_cip_votes). Canton ecosystem only. Not Cardano or other 'CIP' schemes.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': 'CIP ID: "0001", "CIP-0042", or "PR-0117"'}}}
get_cip_implementation_status
For one CIP, report whether code/grants are tracking the proposal: linked dev-fund PRs, related ecosystem projects, status transitions. Canton governance. Use after find_cip_for_feature to gauge readiness.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['cip_id'], 'properties': {'cip_id': {'type': 'string', 'description': 'CIP id, e.g. "0112", "CIP-0112", "PR-0088".'}}}
get_cip_mentions
Find every place that references a given Canton Improvement Proposal (CIP): forum threads, mailing-list posts, blog articles, Dev Fund grant proposals, and sibling CIPs that require/cite it. A reverse-reference (backlink) lookup: use for 'who is discussing CIP-X and where' / impact questions. Returns aggregated per-source counts, not individual items. For individual forum posts/mailing messages and CCPEDIA's finer per-message mailing-list granularity, use get_cip_citations instead. Not for the proposal's own text (get_cip) or its vote records (get_cip_votes). Canton ecosystem only. Not Cardano or other 'CIP' schemes.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': 'CIP ID: "0001", "CIP-0042", or "PR-0117"'}}}
get_cip_vote_outcome
Find out whether a Canton Improvement Proposal (CIP) was actually acted on ON CHAIN, and how. Returns every DSO governance vote request whose text cites this CIP, with outcomes and dates. This answers 'was it decided', which the mailing-list tools cannot: get_cip_votes reads the discussion on the cip-vote list, this reads the ledger. Example: CIP-0116 (Featured App Locking) is cited in dozens of requests that paused apps for non-compliance. Canton ecosystem only, not Cardano or other CIP schemes.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['cip_id'], 'properties': {'limit': {'type': 'integer', 'default': 20, 'maximum': 100, 'minimum': 1, 'description': 'How many vote requests to return, newest first. Default 20, max 100. The response states the full count either way.'}, 'cip_id': {'type': 'string', 'description': 'CIP id, e.g. "CIP-0116", "116", "0116".'}}}
get_cip_votes
Get the cip-vote mailing-list messages for a specific Canton Improvement Proposal (CIP), oldest first: the raw discussion trail as sent, with each SV/participant's vote stated in their message body ("… votes in favor / not in favor"). This is the message thread, NOT a pre-computed count; the first message is usually the proposal announcement, not a vote. For the on-chain accept/reject tally use get_cip_vote_outcome. Use for reading who said what on Governance-type CIPs. Not the attachment PDFs (get_cip_attachments) or status timeline (get_cip_history). Canton ecosystem only. Not Cardano or other 'CIP' schemes.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['cip_id'], 'properties': {'limit': {'type': 'integer', 'default': 25, 'maximum': 100, 'minimum': 1, 'description': 'How many messages (oldest first) to return. Default 25, max 100. The header states the full count and the range shown.'}, 'cip_id': {'type': 'string', 'description': 'CIP id, e.g. "0117", "0118", or "CIP-0117". Numeric form preferred.'}, 'offset': {'type': 'integer', 'default': 0, 'maximum': 9007199254740991, 'minimum': 0, 'description': 'Skip this many messages before returning, for paging through a long vote thread.'}}}
get_current_versions
Get the freshest Canton SDK, Splice, Daml, and DPM versions ALL AT ONCE, plus per-network Splice deployment status (DevNet / TestNet / MainNet) and any upcoming synchronizer-upgrade windows. Derived live on every call from two CCPEDIA-only joins: github_releases (latest stable tag per repo) + mailing_messages (validator-announce list). This is fresher than the Foundation Build-on-Canton KB snapshot, which can lag by weeks. Use this when a user asks "what version should I target?", "is Splice X.Y.Z still current?", "what is on MainNet?". Anything time-sensitive about Canton/Splice/Daml/DPM versioning across MULTIPLE packages. If the user names ONE specific package and wants its release notes, use get_latest_release instead.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
get_defi_pools
Get per-pool DeFi liquidity data on Canton from OneSwap, Send, and Tradecraft: pair, TVL, fee rate, APY, and reserve amounts. This is pool-level detail; for aggregate protocol-level TVL across all of Canton DeFi use get_token_market instead (that one also lists Cantex, which this tool does not cover - Cantex's own API has been down and CCTools marks its numbers stale). Sourced from CCTools' public API. Canton-only.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'protocol': {'enum': ['oneswap', 'send', 'tradecraft'], 'type': 'string', 'description': 'Restrict to one DEX. Omit for all three.'}}}
get_discussion
Get a single thread from the official Canton Network community forum (Discourse at forum-style discussions on ccpedia.xyz) by numeric topic id: title, category, view/post counts, and the first ~15 posts. Canton-only, served from CCPEDIA's cached forum index. This is the WEB FORUM. For GitHub Discussions use get_github_discussion, for sync.global mailing-list threads use get_mailing_thread. Get the id from search results or trending.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['id'], 'properties': {'id': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'string'}], 'description': 'Forum topic ID from a search result, e.g. 3242 or "topic:3242". Not a doc-page id: those go to get_doc.'}}}
get_doc
Fetch the FULL text of one indexed Canton-ecosystem documentation page (Canton/Daml/Splice and integrated partner docs) by its numeric id. Canton-specific. Use this AFTER search or semantic_search returns a doc id, to read complete commands, flags, and full sections a search snippet truncates. Requires an id. Not a discovery tool; use search/semantic_search first.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['id'], 'properties': {'id': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'string'}], 'description': 'Doc page ID from a search/semantic_search result, e.g. 3242 or "doc:3242". Not a forum topic id: those go to get_discussion.'}}}
get_ecosystem_gaps
Surface ecosystem gaps: high-view forum threads with zero replies (unanswered demand), mailing threads that got no reply, and open Dev Fund proposals with no label assigned (waiting for a SIG or champion). Canton-specific. Use to find "where the ecosystem needs help". For per-category funding levels use get_funding_landscape.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'limit': {'type': 'integer', 'maximum': 20, 'minimum': 1, 'description': 'Max rows per gap type (default 5).'}}}
get_faq
Look up answers in the Canton Network developer FAQ (Canton Foundation curated, hackathon-tested): Canton/Daml installation, party creation, Daml contracts, Ledger/Scan APIs, testnet deployment, Canton Coin/token standard, common gotchas. Returns the 3 NEAREST FAQ entries, which may not exactly match. Canton-specific, do NOT use for other blockchains or general/non-Canton questions. If none of the 3 directly answers the question, or the user needs specific config values, commands, or parameters, use semantic_search over the full docs (then get_doc) rather than answering from a near-miss. For a full onboarding path use get_started_guide; for API endpoint details use get_api_reference.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['question'], 'properties': {'question': {'type': 'string', 'description': 'Developer\'s question, e.g. "how do I install", "create party", "deploy to testnet".'}}}
get_foundation_info
Retrieve official Canton Foundation pages (canton.foundation): team and board bios, working groups, membership process, grants program. Free-text topic search over CCPEDIA's index of the canton.foundation site, returning matched-page snippets (not the curated knowledge base). Canton-only. Use when a user asks about Foundation people, governance structure, or member/grant processes.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['topic'], 'properties': {'limit': {'type': 'integer', 'default': 3, 'maximum': 10, 'minimum': 1, 'description': 'How many matching sections to return. Default 3, max 10.'}, 'topic': {'type': 'string', 'description': 'Free-text topic, e.g. "team", "executive director", "working groups", "membership", "grants", "board".'}}}
get_funding_landscape
Overview of the Canton Dev Fund: counts of proposals by state and label, top categories, and recent activity. Canton-specific. Use to gauge whether a category is over- or under-funded before proposing.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'category': {'type': 'string', 'description': 'Optional label filter, e.g. "daml-tooling", "node-deployment-operations".'}}}
get_github_discussion
Get the full body and comments of a single GitHub Discussion from a Canton Network or Digital Asset repo, by its GitHub GraphQL node id (from list_github_discussions). CANTON-ONLY, read from CCPEDIA's cache. Not the live GitHub API. This is GitHub Discussions, distinct from the Canton web forum (get_discussion) and mailing lists (get_mailing_thread).
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': 'GitHub GraphQL node ID, e.g. "D_kwDOMNgu5s4AY..."'}}}
get_governance_vote
Get the full detail of one Canton on-chain DSO governance vote request: the proposed action, the requester's stated reason, every Super Validator's individual vote with their own written reason, who abstained, the outcome and the date it took effect. Use after list_governance_votes when a specific decision matters. Canton ecosystem only.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['tracking_cid'], 'properties': {'tracking_cid': {'type': 'string', 'description': 'The vote request tracking contract id, or a unique prefix of it, as returned by list_governance_votes.'}}}
get_issue_status
Look up one GitHub issue or PR by repo + number. Canton/Daml/Splice repos only.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['repo', 'number'], 'properties': {'repo': {'type': 'string', 'description': 'Repo, e.g. "canton-foundation/canton-dev-fund" or shorthand "canton-dev-fund".'}, 'number': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'Issue or PR number.'}}}
get_kb_drift
Report where the Foundation Build-on-Canton KB snapshot (which CCPEDIA syncs daily from github.com/canton-network-devs/Build-on-Canton-MCP) diverges from CCPEDIA's live signals (github_releases, mailing_messages). Returns each drifted (category, key) with the KB value, the live value derived right now, the drift age in days, and severity (info | warn | stale). Use this when a user or another agent quotes a Canton SDK / Splice / DPM / Daml version from foundation_kb and you need to confirm whether it is still current. CCPEDIA-specific transparency layer: no other Canton MCP server exposes this kind of cross-source quality audit. Canton/Daml/Splice ecosystem only.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'refresh': {'type': 'boolean', 'default': False, 'description': 'If true, re-run the validator before returning the report. Default false uses the most recent stored findings.'}}}
get_latest_release
Get the single latest release (version tag, publish date, and GitHub release-notes link) for ONE NAMED Canton-ecosystem package: canton, daml, dpm, or splice. Canton-specific. Requires a package name as input. Use when the user names a specific package ("what's the latest daml release", "latest canton version"); use get_current_versions instead for a cross-package snapshot of all four at once or MainNet/TestNet deployment status.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['package'], 'properties': {'package': {'type': 'string', 'description': 'Repo or package name: "canton", "daml", "dpm", "splice", or a full owner/repo.'}}}
get_mailing_thread
Get every message (oldest first) in a specific Canton Network governance mailing-list thread on lists.sync.global (cip-discuss, cip-vote, grants-discuss, etc.). Canton-only. Pass the thread id from list_mailing_threads. This is the email/mailing-list channel. Not the web forum (get_discussion) or GitHub Discussions.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': 'Thread id exactly as list_mailing_threads prints it. Both forms work: a numeric archive topic id ("119286914") and a message id for messages the archive never threaded ("cip-discuss-809").'}, 'limit': {'type': 'integer', 'default': 25, 'maximum': 100, 'minimum': 1, 'description': 'How many messages (oldest first) to return. Default 25, max 100. The header states the full held count and the range shown.'}, 'offset': {'type': 'integer', 'default': 0, 'maximum': 9007199254740991, 'minimum': 0, 'description': 'Skip this many messages before returning, for paging through a long thread.'}}}
get_network_state
Get the latest Canton Network ON-CHAIN state snapshot from the public Scan API (api.cantonnodes.com): Super Validator list & count, voting threshold, sequencer count, latest mining round, featured-apps count, and cumulative app/validator rewards in CC. Canton-only, cached snapshot (captured_at). This is live network telemetry. NOT CCPEDIA content counts (get_network_stats) and NOT price/TVL (get_token_market).
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
get_network_stats
Get CCPEDIA's CONTENT-CATALOG metrics: how many Canton items CCPEDIA has indexed. Counts of CIPs (total/in-review/final), forum topics & posts, GitHub issues/PRs, dev-fund proposals, docs pages, videos, blog posts, mailing threads, and radar items. This is CCPEDIA coverage/inventory, NOT live Canton on-chain stats. For on-chain validators/rounds use get_network_state, for price/TVL use get_token_market.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
get_npm_packages
List the indexed Canton/Daml npm packages (sdk_versions registry=npm) optionally filtered by name. Canton-specific.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'limit': {'type': 'integer', 'maximum': 50, 'minimum': 1, 'description': 'Max packages (default 25).'}, 'query': {'type': 'string', 'description': 'Optional substring filter on package name.'}, 'offset': {'type': 'integer', 'default': 0, 'maximum': 9007199254740991, 'minimum': 0, 'description': 'Skip this many before returning, for paging past the limit. The response states the full count and echoes the offset used.'}}}
get_proposal_milestones
For one Canton Dev Fund proposal PR, list any related milestone tracking issues (issues whose body or title references the PR number). Canton-specific.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['pr_number'], 'properties': {'pr_number': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991, 'description': 'PR number in canton-foundation/canton-dev-fund.'}}}
get_proposals
List Canton Network Dev Fund grant proposals: community funding requests tracked on GitHub. Filterable by state (open/closed/all). Use for 'what grants/funding requests exist' questions. NOT the same as Canton Improvement Proposals (CIPs): those are governance specs (use list_cips / get_cip). Returns number, title, state, author, and board status. Canton ecosystem only.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'limit': {'type': 'integer', 'default': 20, 'maximum': 50, 'minimum': 1, 'description': 'How many proposals to return. Default 20, max 50. The response states the full count.'}, 'state': {'enum': ['open', 'closed', 'all'], 'type': 'string', 'default': 'open', 'description': 'Grant-request state on GitHub. Defaults to "open", so the total reported is open requests rather than every proposal ever filed.'}, 'offset': {'type': 'integer', 'default': 0, 'maximum': 9007199254740991, 'minimum': 0, 'description': 'Skip this many before returning, for paging past the limit. The response states the full count and echoes the offset used.'}}}
get_radar
Get the Canton Network Radar, CCPEDIA's curated feed of time-sensitive ecosystem alerts: breaking changes, upgrade deadlines, protocol migrations and required validator actions, each with deadline, affected components and source link. Filter by level (critical/important/ecosystem/all). Canton-only. Use when a user asks what's changing, what's about to break, or what deadlines are approaching on Canton.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'level': {'enum': ['all', 'critical', 'important', 'ecosystem'], 'type': 'string', 'default': 'all', 'description': 'Severity floor. "critical" and "important" return only that level; "ecosystem" is the low-severity feed; "all" (default) returns every live alert.'}, 'limit': {'type': 'integer', 'default': 25, 'maximum': 100, 'minimum': 1, 'description': 'How many alerts to return, most severe and most recent first. Default 25.'}, 'offset': {'type': 'integer', 'default': 0, 'maximum': 9007199254740991, 'minimum': 0, 'description': 'Skip this many before returning, for paging past the limit. The response states the full count and echoes the offset used.'}}}
get_recent_changes
Get a chronological (newest-first) feed of recent Canton Network activity: CIP status changes, new grant proposals, new forum threads, blog posts, GitHub releases, and radar items, merged into one time-ordered stream (default last 7 days). Canton-specific. Not a git/repo changelog. Use for 'what changed/happened on Canton recently'; use get_trending instead for popularity-ranked 'what's hot'.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'days': {'type': 'integer', 'default': 7, 'maximum': 90, 'minimum': 1, 'description': 'How far back to look, in days, counted from now. Default 7, max 90.'}, 'limit': {'type': 'integer', 'default': 50, 'maximum': 500, 'minimum': 1, 'description': 'How many changes to return, newest first. Default 50, max 500.'}}}
get_recent_deployments
Recent completed SV deployments/releases from sv_operations_calendar (operation_type in deploy|release|upgrade), cross-referenced with github_releases when the title names a SemVer-looking tag. Canton-specific. Use to answer "what shipped on MainNet recently?".
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'limit': {'type': 'integer', 'maximum': 50, 'minimum': 1, 'description': 'How many deployments to return, newest first. Default 10, max 50.'}, 'offset': {'type': 'integer', 'default': 0, 'maximum': 9007199254740991, 'minimum': 0, 'description': 'Skip this many before returning, for paging past the limit. The response states the full count and echoes the offset used.'}}}
get_recurring_issue_fingerprint
Identify error patterns that recur across multiple Canton SDK or Splice release windows: structural bugs the ecosystem keeps hitting versus one-off regressions. Returns the top keywords/error codes mentioned in forum_posts that span at least 3 distinct months over the last 18 months. Canton/Daml/Splice ecosystem only. Useful for triage prioritisation and for choosing what to add to a runbook.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'min_months': {'type': 'integer', 'maximum': 12, 'minimum': 2, 'description': 'A keyword must appear in this many distinct months to count as recurring (default 3).'}, 'window_months': {'type': 'integer', 'maximum': 36, 'minimum': 3, 'description': 'Look-back window in months (default 18).'}}}
get_sdk_changelog
Fetch the release-notes body for one SDK version across canton / daml / dpm / decentralized-canton-sync (Splice). Canton-specific. Returns the rendered release body with a link to the GitHub release.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['version'], 'properties': {'repo': {'type': 'string', 'description': 'Optional repo hint: canton, daml, dpm, splice.'}, 'version': {'type': 'string', 'description': 'Version tag, e.g. "3.5.6", "v3.5.6", "0.6.10".'}}}
get_started_guide
Generate a personalized Canton Network developer onboarding/quickstart path. Use when a developer asks how to start building, build a dApp, or develop on Canton specifically. Canton-only. Do not use for onboarding to other chains or tools. Ask the user's background first (EVM, Solana, Sui/Move, Web, Enterprise, or New to Blockchain). Prefer this over 'search' for 'how to build / get started on Canton'; use get_faq for a single specific gotcha and get_api_reference for API details.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['background'], 'properties': {'background': {'enum': ['evm', 'solana', 'sui_move', 'web_dev', 'enterprise', 'new_to_blockchain'], 'type': 'string', 'description': "Developer's primary background. Ask the user to select this before proceeding."}}}
get_sv_schedule
Show the Super Validator operations schedule from the Canton Foundation's sv-cal.canton.foundation feed: planned releases, deploys, upgrades, governance windows, freezes. Filter by environment. Canton-specific. Use when an operator asks "what is happening on MainNet next?" or "when is the next Splice cut?".
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'limit': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Max rows (default 20).'}, 'environment': {'enum': ['DevNet', 'TestNet', 'MainNet'], 'type': 'string', 'description': 'Restrict to one environment. Omit for all.'}, 'upcoming_only': {'type': 'boolean', 'description': 'If true (default), only events with start_at >= today.'}}}
get_token_market
Get the latest cached market snapshot for CANTON COIN (CC) ONLY: USD price, 24h change, market cap, 24h volume, total Canton DeFi TVL, and per-protocol TVL on Canton. Canton-specific. Cannot price BTC, ETH or any other asset (use a general crypto-price MCP like CoinGecko for those). Snapshot from CCPEDIA's sync (captured_at timestamp), not a live exchange feed.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
get_trending
Get this week's most popular/trending Canton Network content (CIPs, forum threads, docs, blog, etc.) ranked by an engagement score. Canton-specific. Not general crypto/social/news trends. Use for 'what's hot/popular on Canton right now'; use get_recent_changes instead for a chronological 'what changed recently' feed.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
get_upcoming_deadlines
Canton operational deadlines coming up: scheduled upgrades, minimum-version raises, topology freezes and Logical Synchronizer Upgrades, per network. Use for "what do I have to do in the next N days" on DevNet, TestNet or MainNet. Events whose network could not be attributed are excluded rather than guessed, because a wrong deadline is worse than a missing one. A subscribable calendar of the same data is at https://ccpedia.xyz/calendar. For a verdict on your specific version use get_upgrade_status; for the full historical schedule use get_sv_schedule. Canton ecosystem only.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'days': {'type': 'integer', 'maximum': 180, 'minimum': 1, 'description': 'How far ahead to look, in days. Default 30.'}, 'environment': {'type': 'string', 'description': '"MainNet", "TestNet" or "DevNet". Omit for all networks.'}, 'validator_only': {'type': 'boolean', 'description': 'Only events that require a validator operator to act.'}}}
get_upcoming_operations
Convenience wrapper: SV operations in the next N days, all environments, all operation types. Canton-specific. Quick "what should I be ready for this week?" answer for validator/SV ops.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'days': {'type': 'integer', 'default': 30, 'maximum': 180, 'minimum': 1, 'description': 'Days ahead to look (1-180, default 30).'}}}
get_upgrade_status
Upgrade Copilot for a Canton validator: given the Splice version a node runs and its network, report whether it is below the minimum in force, how many releases behind, the next topology freeze and LSU (with UTC time), the minimum .dar package versions, and the breaking changes between the running version and the target. Canton-specific. Use when an operator asks "am I safe to skip this week?", "what breaks if I upgrade?", or "when is my next deadline?".
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['environment'], 'properties': {'version': {'type': 'string', 'description': 'Splice version the node currently runs, e.g. "0.6.9". Omit to get the schedule without a verdict.'}, 'environment': {'enum': ['DevNet', 'TestNet', 'MainNet'], 'type': 'string', 'description': 'Which network the node runs on.'}}}
get_validator
Look up an individual Canton validator node in the DSO registry by name or party id: its sponsor, self-reported Splice version and how stale that report is, when it was last active, the round range it has been earning over, and how many reward coupons it has missed. CCPEDIA-unique: derived from the DSO validator licenses on the public Scan API. Use for "is node X still live", "how reliable is X", and "who onboarded X" where the registry records a distinct sponsor (about half the fleet does; the rest name themselves and this says so rather than repeating the node name back). For the version distribution across the whole fleet use get_validator_fleet; for whether a version passes the MainNet minimum use get_upgrade_status; for Super Validator GOVERNANCE voting records use list_votes_by_sv, which is a different population. Canton ecosystem only.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['name'], 'properties': {'name': {'type': 'string', 'description': 'Validator name or party id, whole or partial, e.g. "GSF-validator-2" or "MPCH".'}, 'limit': {'type': 'integer', 'maximum': 50, 'minimum': 1, 'description': 'Maximum matches to return (default 10, max 50).'}}}
get_validator_fleet
Where do you stand versus other Canton operators on your Splice version? Reports the whole DSO-approved validator fleet as a version distribution; call with no version to see the whole distribution, or pass your own version to get your exact position (early, typical, or dangerously behind most nodes). CCPEDIA-unique: no other public source publishes this. IMPORTANT: versions are self-reported by each operator in its license metadata, not observed, and many reports are months stale; the tool returns how many are fresh so you can qualify the answer. For the pass/fail rule (are you above the required minimum) use get_upgrade_status. Canton ecosystem only.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'version': {'type': 'string', 'description': 'Your Splice version, e.g. "0.6.9", to locate it in the distribution.'}}}
get_video
Get a Canton Network video that CCPEDIA has cached (curated channels: Canton Network, Digital Asset, Sync Insights, Canton Foundation, Daml) by its YouTube id: title, channel, publish date, description and full transcript text if stored. CANTON-ONLY and limited to videos already in CCPEDIA's index. Does NOT fetch arbitrary YouTube videos (use a dedicated YouTube tool for that). Obtain ids from list_videos or search.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['id'], 'properties': {'id': {'type': 'string', 'description': 'YouTube video id, e.g. "dQw4w9WgXcQ"'}, 'transcript_chars': {'type': 'integer', 'default': 12000, 'maximum': 200000, 'minimum': 0, 'description': 'Transcript characters to return. Default 12000; raise it (max 200000) for the full text, or set 0 for metadata only.'}}}
get_whitepaper
Get the full extracted text of a specific Canton Network whitepaper by slug (e.g. 'canton-network-whitepaper'): title, tag, page count, PDF link, and body text (up to ~50k chars). Canton-only. Call list_whitepapers first to obtain valid slugs.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['slug'], 'properties': {'slug': {'type': 'string', 'description': 'Whitepaper slug, e.g. "canton-network-whitepaper"'}}}
learning_path
Construct a structured Canton onboarding sequence for a stated goal: whitepaper → relevant docs → CIPs to know → forum starter threads → talks. Canton-specific. Topic-driven (distinct from get_started_guide which is background-driven).
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['goal'], 'properties': {'goal': {'type': 'string', 'minLength': 2, 'description': 'What the learner wants to do, e.g. "build a Canton dApp", "operate a validator", "write a CIP".'}}}
list_canton_mcps
List the Canton Network MCP servers CCPEDIA knows about: a directory of the Canton MCP ecosystem (payments, wallets, docs, knowledge). For each: what it does, how to connect or run it, whether it is free/hosted, and whether CCPEDIA can call it directly via call_canton_mcp. Canton-specific.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
list_cips
Browse Canton Improvement Proposals (CIPs), optionally filtered by status (Draft, Early Draft, In Review, Proposed, Approved, Active, Final, Withdrawn, Rejected, Replaced, Obsolete, Pending) and type (e.g. "Standards Track"). Returns a metadata list (id, title, status, type, author). Not full text. Use to discover or enumerate CIPs when you don't have a specific ID; use get_cip to read one. Canton/Daml/Splice governance only. Not Cardano or other 'CIP' schemes.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'type': {'type': 'string', 'description': 'Type filter, e.g. "Standards Track"'}, 'limit': {'type': 'integer', 'default': 20, 'maximum': 100, 'minimum': 1, 'description': 'How many CIPs to return. Default 20, max 100. The response states the full count, which can exceed this limit; page with offset.'}, 'offset': {'type': 'integer', 'default': 0, 'maximum': 9007199254740991, 'minimum': 0, 'description': 'Skip this many before returning, for paging past the limit. The response states the full count and echoes the offset used.'}, 'status': {'enum': ['Draft', 'Early Draft', 'In Review', 'Proposed', 'Approved', 'Active', 'Final', 'Withdrawn', 'Rejected', 'Replaced', 'Obsolete', 'Pending', 'Review', 'Superseded', 'all'], 'type': 'string', 'default': 'all'}}}
list_deprecations
List all known deprecated Daml/Canton CLI commands, packages, and tools with their modern replacements. Returns a compact table you can scan, optionally filtered by category (cli, package, tool, api, workflow). Canton/Daml/Splice only. Use this to enumerate or browse; use migrate_lookup for a specific name.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'category': {'enum': ['all', 'cli', 'package', 'tool', 'api', 'workflow', 'other'], 'type': 'string', 'default': 'all', 'description': 'Kind of thing deprecated. "all" (default) returns every category.'}}}
list_ecosystem_projects
List Canton Network ecosystem projects (DeFi protocols, wallets, custody, infrastructure, NaaS, etc.) from the curated canton.wiki catalog. Filter by category or free-text query. Returns name, category, description and URL: a static directory of who-builds-on-Canton, not live on-chain/TVL data (use get_token_market for live DeFi TVL). Canton-only.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'limit': {'type': 'integer', 'default': 30, 'maximum': 100, 'minimum': 1, 'description': 'How many projects to return. Default 30, max 100. The response states the full count.'}, 'query': {'type': 'string', 'description': 'Search in title/description/tags'}, 'offset': {'type': 'integer', 'default': 0, 'maximum': 9007199254740991, 'minimum': 0, 'description': 'Skip this many before returning, for paging past the limit. The response states the full count and echoes the offset used.'}, 'category': {'type': 'string', 'description': 'Filter by category (e.g. "DeFi", "Wallets", "NaaS")'}, 'liveness': {'enum': ['alive', 'suspect', 'dead', 'unknown'], 'type': 'string', 'description': "Restrict to projects whose site last responded this way to CCPEDIA's daily probe. Omit for all of them; every row is labelled either way."}}}
list_featured_apps
List Canton Network Featured Apps from the live Scan-API-sourced catalogue. Filter by category (when known) and choose ordering. Canton-specific. Use for "what dApps are live on Canton?" or to discover providers offering a particular service. Returns name, provider/app_id, category, last_activity, url.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'sort': {'enum': ['recent', 'name', 'tvl', 'volume'], 'type': 'string', 'description': 'Sort key (default: recent).'}, 'limit': {'type': 'integer', 'maximum': 200, 'minimum': 1, 'description': 'Max rows (default 25).'}, 'category': {'type': 'string', 'description': 'Filter by category, e.g. "Validator", "DeFi", "Tokenized Assets" (case-insensitive substring match).'}}}
list_github_discussions
List GitHub Discussions from Canton Network and Digital Asset repositories cached by CCPEDIA, sorted by recency (newest first). Filter by repo or category, or call with no filter to see which repos are present. CANTON-ONLY and read from CCPEDIA's cache, NOT the live GitHub API or the user's own repos (use a GitHub MCP for those). This is GitHub Discussions: distinct from the Canton web forum (get_discussion) and the sync.global mailing lists (list_mailing_threads). Use get_github_discussion for full body + comments.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'repo': {'type': 'string', 'description': 'Filter by owner/name as shown in the unfiltered listing. Repos get transferred, so read the value from a result rather than assuming one.'}, 'limit': {'type': 'integer', 'default': 15, 'maximum': 50, 'minimum': 1, 'description': 'How many discussions to return, newest first. Default 15, max 50.'}, 'category': {'type': 'string', 'description': 'Filter by Discussions category, e.g. "Q&A", "Ideas"'}}}
list_governance_votes
List Canton Network on-chain DSO governance vote requests and their outcomes, from the ledger itself. Covers Featured App rights being granted or revoked, Super Validator reward-weight changes, SV offboarding, and AmuletRules/DsoRules config changes. CCPEDIA-unique: no other public source exposes this joined to the CIP corpus. Use for 'what has the DSO decided recently', 'which apps got Featured App status', 'what got rejected'. For one CIP's fate use get_cip_vote_outcome; for one Super Validator's record use list_votes_by_sv. Canton ecosystem only.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'limit': {'type': 'integer', 'maximum': 200, 'minimum': 1, 'description': 'Max rows (default 20).'}, 'action': {'type': 'string', 'description': 'Filter by action, e.g. "SRARC_GrantFeaturedAppRight", "SRARC_RevokeFeaturedAppRight", "SRARC_UpdateSvRewardWeight", "SRARC_OffboardSv".'}, 'offset': {'type': 'integer', 'default': 0, 'maximum': 9007199254740991, 'minimum': 0, 'description': 'Skip this many before returning, for paging past the limit. The response states the full count and echoes the offset used.'}, 'status': {'enum': ['open', 'closed'], 'type': 'string', 'description': '"open" for votes still in flight, "closed" for decided ones. Omit for both; there is no "all" value.'}, 'outcome': {'enum': ['VRO_Accepted', 'VRO_Rejected', 'VRO_Expired'], 'type': 'string', 'description': 'Filter by outcome. Omit for all outcomes; there is no "all" value.'}}}
list_mailing_threads
List threads from the Canton Network governance mailing lists (lists.sync.global groups: cip-discuss, cip-vote, cip-announce, grants-discuss, validator-announce, tokenomics-announce, supervalidator-announce). Filter by group, CIP number, or date. Canton-only. This is the EMAIL/mailing-list channel. Distinct from the web forum (get_discussion) and GitHub Discussions (list_github_discussions). Returns thread metadata only; use get_mailing_thread for message bodies.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'group': {'enum': ['cip-discuss', 'cip-vote', 'cip-announce', 'grants-discuss', 'validator-announce', 'tokenomics-announce', 'supervalidator-announce'], 'type': 'string', 'description': 'Restrict to one of the 7 indexed groups.'}, 'limit': {'type': 'integer', 'default': 20, 'maximum': 100, 'minimum': 1, 'description': 'How many threads to return. Default 20, max 100.'}, 'since': {'type': 'string', 'description': 'Earliest last_post_at ISO date.'}, 'cip_id': {'type': 'string', 'description': 'CIP number filter, e.g. "0117". Returns only threads tagged with this CIP.'}, 'offset': {'type': 'integer', 'default': 0, 'maximum': 9007199254740991, 'minimum': 0, 'description': 'Skip this many before returning, for paging past the limit. The response states the full count and echoes the offset used.'}}}
list_repos
List the Canton Network GitHub repositories that CCPEDIA has indexed (Canton org repos such as canton-foundation and Daml/Splice, excluding the dev-fund proposals repo), with the count of issues+PRs indexed per repo. CANTON-ONLY and read from CCPEDIA's cache. This is NOT a live GitHub API and does NOT list the user's own repos (use a GitHub MCP for that).
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
list_videos
List Canton Network videos cached in CCPEDIA, filtered by channel (Canton Network, Digital Asset, Sync Insights, Canton Foundation, Daml), publish date (since), and transcript availability. CANTON-ONLY corpus. These are curated Canton ecosystem videos, not general YouTube. Returns metadata only (id, title, channel, date); call get_video with an id for the transcript.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'limit': {'type': 'integer', 'default': 20, 'maximum': 100, 'minimum': 1, 'description': 'How many videos to return. Default 20, max 100.'}, 'since': {'type': 'string', 'description': 'Earliest published_at (ISO date, e.g. "2026-01-01"). Default: no lower bound.'}, 'offset': {'type': 'integer', 'default': 0, 'maximum': 9007199254740991, 'minimum': 0, 'description': 'Skip this many before returning, for paging past the limit. The response states the full count and echoes the offset used.'}, 'channel': {'type': 'string', 'description': 'Channel name filter, e.g. "Canton Network", "Digital Asset", "Sync Insights", "Canton Foundation", "Daml". Case-insensitive substring.'}, 'has_transcript': {'type': 'boolean', 'description': 'If true, only return videos with a stored transcript. If false, only those still missing one. Omit for both.'}}}
list_votes_by_sv
Get the on-chain voting record of Canton Super Validators: how many DSO governance votes each has cast, how often they voted for or against, how often they abstained, and the span of their participation. Use for 'how does Tradeweb vote', 'which SVs abstain most', 'who is most active in governance'. CCPEDIA-unique: derived from the full ledger vote history. Canton ecosystem only.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'sv_name': {'type': 'string', 'description': 'Super Validator short name, e.g. "Tradeweb-Markets-1", "Digital-Asset-1", "Cumberland-1". Omit for all of them.'}}}
list_whitepapers
List every Canton Network whitepaper indexed by CCPEDIA, returning slug, title, description, tag and page count (metadata only, no body). Use the returned slug with get_whitepaper to fetch full content. Canton-only.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
migrate_lookup
Look up the modern replacement for a deprecated Daml/Canton CLI command, npm package, or tool (e.g. "daml start", "@daml/ledger", "Navigator", "Daml Triggers", "splice-wallet-payments subscription"). Returns the replacement, since-version, install instructions when applicable, and a migration note. Canton/Daml/Splice ecosystem only. Use when a user mentions a specific deprecated symbol; use list_deprecations to enumerate all known pairs or browse by category.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['query'], 'properties': {'query': {'type': 'string', 'description': 'The deprecated command, package, or tool name to look up. Best-match search.'}}}
outdated_guidance_detector
Surface CCPEDIA content that mentions deprecated Canton/Daml tooling alongside the user's query: likely outdated. Cross-references foundation_kb.DEPRECATED with doc_pages, forum_posts, and blog_posts. Canton-specific.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['query'], 'properties': {'query': {'type': 'string', 'minLength': 2, 'description': 'Topic to scan.'}}}
proposal_success_predictor
Heuristic readiness score for a Dev Fund proposal draft, based on attributes that correlate with approval in the historical corpus: explicit milestones, code/PoC references, sources, scope realism. Canton-specific. Not a vote; a checklist.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['draft_text'], 'properties': {'draft_text': {'type': 'string', 'minLength': 40, 'description': 'Full draft text.'}}}
search
Keyword/full-text search over the Canton Network knowledge base (CIPs, Canton/Daml/Splice docs, forum, mailing lists, whitepapers, grant proposals, blog, YouTube, GitHub). Canton-specific. Do NOT use for other blockchains, the web, or local files. Use this for exact-term/name lookups; use semantic_search instead for conceptual or 'how does X work' questions, and get_doc to read a full page once you have its id. NOTE: forum matches cover the topic TITLE and the FIRST POST only; a term that appears only inside a forum reply will not surface here, so use semantic_search (which indexes all forum post bodies) when a forum discussion is likely and this returns nothing.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['query'], 'properties': {'type': {'enum': ['all', 'cip', 'doc', 'discussion', 'mail', 'whitepaper', 'proposal', 'blog', 'youtube', 'github', 'governance'], 'type': 'string', 'default': 'all', 'description': 'Restrict results to one source type; "governance" is the stated reasoning behind an on-chain DSO vote; "all" searches everything'}, 'limit': {'type': 'integer', 'default': 10, 'maximum': 50, 'minimum': 1, 'description': 'Max results to return (1-50)'}, 'query': {'type': 'string', 'description': 'Search query'}, 'offset': {'type': 'integer', 'default': 0, 'maximum': 9007199254740991, 'minimum': 0, 'description': 'Skip this many before returning, for paging past the limit. The response states the full count and echoes the offset used.'}}}
search_community
One-call semantic-style search across CCPEDIA's community sources at once: forum, mailing lists, blog, and GitHub discussions. Canton-specific. Use when you want to scan everything written by humans (not docs/code) for a topic.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['query'], 'properties': {'limit': {'type': 'integer', 'maximum': 20, 'minimum': 1, 'description': 'Max hits per source (default 5).'}, 'query': {'type': 'string', 'minLength': 2, 'description': 'Free-text query.'}}}
search_github_issues
Full-text search across CCPEDIA's indexed GitHub issues (15+ Canton repos). Canton ecosystem only. Use to find prior reports / open bugs / requested features. For PRs use get_proposals (Dev Fund grant PRs) or search with type="github" (broader).
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['query'], 'properties': {'limit': {'type': 'integer', 'maximum': 50, 'minimum': 1, 'description': 'Max rows (default 10).'}, 'query': {'type': 'string', 'minLength': 2, 'description': 'Free-text query.'}, 'state': {'enum': ['open', 'closed', 'all'], 'type': 'string', 'description': 'Issue state filter (default: all).'}, 'offset': {'type': 'integer', 'default': 0, 'maximum': 9007199254740991, 'minimum': 0, 'description': 'Skip this many before returning, for paging past the limit. The response states the full count and echoes the offset used.'}}}
search_mailing_list
Search across CCPEDIA's indexed Canton mailing-list archives (cip-discuss, cip-vote, grants-discuss, validator-announce, etc). Canton-specific.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['query'], 'properties': {'group': {'type': 'string', 'description': 'Optional group_slug filter, e.g. "cip-discuss".'}, 'limit': {'type': 'integer', 'maximum': 30, 'minimum': 1, 'description': 'Max rows (default 10).'}, 'query': {'type': 'string', 'minLength': 2, 'description': 'Free-text query. Appears in subject or body.'}, 'offset': {'type': 'integer', 'default': 0, 'maximum': 9007199254740991, 'minimum': 0, 'description': 'Skip this many before returning, for paging past the limit. The response states the full count and echoes the offset used.'}}}
search_release_notes
Search across release-notes bodies of all indexed Canton repos for a feature/keyword. Canton-specific. Use to find which release first mentioned X.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['feature'], 'properties': {'feature': {'type': 'string', 'minLength': 2, 'description': 'Feature keyword, e.g. "logical synchronizer", "topology", "wallet kernel".'}}}
search_talks
Search CCPEDIA's indexed Canton talks/videos (YouTube transcripts). Canton-specific. Returns matches across title + transcript with a short snippet around the hit.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['query'], 'properties': {'limit': {'type': 'integer', 'maximum': 20, 'minimum': 1, 'description': 'Max rows (default 5).'}, 'query': {'type': 'string', 'minLength': 2, 'description': 'Free-text query. Appears in title or transcript.'}, 'offset': {'type': 'integer', 'default': 0, 'maximum': 9007199254740991, 'minimum': 0, 'description': 'Skip this many before returning, for paging past the limit. The response states the full count and echoes the offset used.'}}}
semantic_search
PRIMARY tool for open-ended questions: how / why / what-is, troubleshooting a symptom ("why is my balance zero", "how do I fix X"), and locating config or setup steps. Conceptual/meaning-based search over the full Canton corpus (CIPs, docs, forum, mailing lists, proposals, blog, releases, ecosystem, foundation KB, YouTube) using vector+FTS hybrid retrieval with reranking. Canton-specific. Use this FIRST for anything a specific tool does not clearly own; the narrow curated tools (get_faq, find_known_issues, diagnose_error) cover only small hand-picked sets or need a literal error string, so prefer semantic_search for real how/why/config questions. Then call get_doc with a returned id to read the full source page.
Nur Lesen Idempotent
Eingabeschema
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['query'], 'properties': {'limit': {'type': 'integer', 'default': 6, 'maximum': 15, 'minimum': 1, 'description': 'How many chunks to return. Default 6, max 15. Capped at 2 per document so one long file cannot take every slot.'}, 'query': {'type': 'string', 'minLength': 2, 'description': 'Free-form question or phrase.'}, 'source_types': {'type': 'array', 'items': {'enum': ['cip', 'doc_page', 'forum_topic', 'mailing_message', 'proposal', 'github_item', 'whitepaper', 'blog_post', 'github_release', 'github_discussion', 'ecosystem_project', 'foundation_kb', 'youtube_video', 'gov_vote', 'radar_item', 'cip_attachment', 'sdk_version'], 'type': 'string'}, 'description': 'Restrict to these source types. "proposal" is a Dev Fund grant request; "github_item" is an ordinary issue or PR from any other indexed repo; "sdk_version" is a released package version from the npm/Docker registries. Omit for all.'}}}
Geändert
list_mailing_threads
27. September 2026 02:49
Geändert
get_recent_changes
25. September 2026 02:59
Hinzugefügt
call_canton_mcp
17. September 2026 12:53
Hinzugefügt
list_canton_mcps
17. September 2026 12:53
Hinzugefügt
find_collaboration_opportunities
17. September 2026 12:53
Hinzugefügt
ecosystem_dependency_graph
17. September 2026 12:53
Hinzugefügt
outdated_guidance_detector
17. September 2026 12:53
Hinzugefügt
learning_path
17. September 2026 12:53
Hinzugefügt
detect_drift
17. September 2026 12:53
Hinzugefügt
find_expert
17. September 2026 12:53
Hinzugefügt
community_consensus
17. September 2026 12:53
Hinzugefügt
full_context
17. September 2026 12:53
Hinzugefügt
proposal_success_predictor
17. September 2026 12:53
Hinzugefügt
detect_builder_overlap
17. September 2026 12:53
Hinzugefügt
get_ecosystem_gaps
17. September 2026 12:53
Hinzugefügt
get_proposal_milestones
17. September 2026 12:53
Hinzugefügt
get_funding_landscape
17. September 2026 12:53
Hinzugefügt
find_code_examples
17. September 2026 12:53
Hinzugefügt
get_issue_status
17. September 2026 12:53
Hinzugefügt
find_maintainer_guidance
17. September 2026 12:53
Hinzugefügt
search_mailing_list
17. September 2026 12:53
Hinzugefügt
find_similar_projects
17. September 2026 12:53
Hinzugefügt
get_npm_packages
17. September 2026 12:53
Hinzugefügt
find_security_patches
17. September 2026 12:53
Hinzugefügt
search_release_notes
17. September 2026 12:53
Hinzugefügt
get_latest_release
17. September 2026 12:53
Hinzugefügt
get_cip_implementation_status
17. September 2026 12:53
Hinzugefügt
find_cip_for_feature
17. September 2026 12:53
Hinzugefügt
find_known_issues
17. September 2026 12:53
Hinzugefügt
search_talks
17. September 2026 12:53