Ambolt

Data lookups, on-chain facts and a non-custodial Solana swap for agents. Sourced and dated.

我该使用它吗

质量与安全性

A
描述质量
100%
模式完整度
96%
命名质量
80%
投毒风险
100%
权限匹配度
100%
协议合规性
100%

基于对工具定义和协议合规性的自动分析。

上下文开销

~6,899token 数(工具定义)
~1.2 KB典型响应大小
对注意力有显著影响(占 128k 上下文窗口的 5.39%)

这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。

安装

一键安装

将以下内容添加到你的 `claude_desktop_config.json` 文件中:

{
  "mcpServers": {
    "ambolt": {
      "url": "https://api.ambolt.dev/mcp"
    }
  }
}

远程端点

https://api.ambolt.dev/mcpstreamable-http

它能做什么

工具清单

工具(36)

🟢 只读🟡 写入🔴 删除⚪ 未知
🟢base_erc20_balance(address, token)

ERC-20 token balance of a wallet address on Base mainnet (USDC, WETH, any token): raw units, decimals, symbol and formatted amount, read live via eth_call.

输入模式

{
  "type": "object",
  "properties": {
    "address": {
      "type": "string",
      "pattern": "^0x[0-9a-fA-F]{40}$",
      "description": "Wallet address."
    },
    "token": {
      "type": "string",
      "pattern": "^0x[0-9a-fA-F]{40}$",
      "description": "ERC-20 token contract address on Base."
    }
  },
  "required": [
    "address",
    "token"
  ],
  "additionalProperties": false
}
🟢base_token_facts(token)

Verifiable on-chain facts about an ERC-20 token on Base: name, symbol, supply, whether the contract has an owner (and whether it was renounced), whether it is an upgradeable proxy and who administers it, whether it is paused, and which privileged functions (mint, burn, pause, blacklist, fee setting, upgrade) appear in its bytecode. Facts only: no verdict and no recommendation.

输入模式

{
  "type": "object",
  "properties": {
    "token": {
      "type": "string",
      "pattern": "^0x[0-9a-fA-F]{40}$",
      "description": "ERC-20 token contract address on Base."
    }
  },
  "required": [
    "token"
  ],
  "additionalProperties": false
}
🟢base_token_info(token)

Basic facts about an ERC-20 token contract on Base mainnet: name, symbol, decimals and total supply (raw and formatted), read live via eth_call. Facts only, no price or recommendation.

输入模式

{
  "type": "object",
  "properties": {
    "token": {
      "type": "string",
      "pattern": "^0x[0-9a-fA-F]{40}$",
      "description": "ERC-20 token contract address on Base."
    }
  },
  "required": [
    "token"
  ],
  "additionalProperties": false
}
🟢base_transaction(hash)

Look up a transaction on Base by hash: success or revert, block and time, sender, recipient, ETH value, gas and fee, the called method selector, and decoded ERC-20 transfers with token symbols. Read live from the chain; facts only.

输入模式

{
  "type": "object",
  "properties": {
    "hash": {
      "type": "string",
      "pattern": "^0x[0-9a-fA-F]{64}$",
      "description": "Transaction hash on Base."
    }
  },
  "required": [
    "hash"
  ],
  "additionalProperties": false
}
🟢base_wallet_balances(address, extraTokens)

ETH balance and balances of major tokens (USDC, WETH, cbBTC, DAI, USDbC, cbETH, AERO) for any address on Base, plus any extra token contracts you list. Read live from the chain. Shows only non-zero balances; there is no price data and no recommendation.

输入模式

{
  "type": "object",
  "properties": {
    "address": {
      "type": "string",
      "pattern": "^0x[0-9a-fA-F]{40}$",
      "description": "Wallet address on Base."
    },
    "extraTokens": {
      "type": "array",
      "maxItems": 20,
      "items": {
        "type": "string",
        "pattern": "^0x[0-9a-fA-F]{40}$"
      },
      "description": "Additional ERC-20 contract addresses to check (up to 20)."
    }
  },
  "required": [
    "address"
  ],
  "additionalProperties": false
}
🟢disposable_email_check(email)

Fast email address check without sending anything: syntax, domain MX records, disposable/temporary-mail domain (9,000+ listed), role address (info@, admin@) and likely typo of a popular provider. Does not confirm that a mailbox exists.

输入模式

{
  "type": "object",
  "properties": {
    "email": {
      "type": "string",
      "maxLength": 254,
      "description": "Email address to check."
    }
  },
  "required": [
    "email"
  ],
  "additionalProperties": false
}
🟢dk_co2_intensity(area)

CO2 emissions per kWh of electricity consumed in Denmark (DK1 West, DK2 East), latest 5-minute value plus 24-hour average, cleanest and dirtiest times.

输入模式

{
  "type": "object",
  "properties": {
    "area": {
      "type": "string",
      "enum": [
        "DK1",
        "DK2"
      ],
      "default": "DK1",
      "description": "Price area."
    }
  },
  "additionalProperties": false
}
🟢dk_electricity_prices(area, date, resolution, cheapestHours)

Day-ahead electricity spot prices for one day and bidding area, in EUR and DKK per MWh, quarter-hourly or hourly, with min/max/average and the cheapest hours. Tomorrow's prices are normally published around 13:00 CET.

输入模式

{
  "type": "object",
  "properties": {
    "area": {
      "type": "string",
      "enum": [
        "DK1",
        "DK2",
        "DE",
        "NO2",
        "SE3",
        "SE4"
      ],
      "default": "DK1",
      "description": "Bidding area."
    },
    "date": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "Danish local date, YYYY-MM-DD. Default: today."
    },
    "resolution": {
      "type": "string",
      "enum": [
        "hourly",
        "quarter"
      ],
      "default": "hourly",
      "description": "Hourly averages or the native 15-minute prices."
    },
    "cheapestHours": {
      "type": "integer",
      "minimum": 0,
      "maximum": 24,
      "default": 3,
      "description": "How many cheapest hourly slots to list."
    }
  },
  "required": [],
  "additionalProperties": false
}
🟢dns_lookup(domain, types)

Resolve public DNS records for a domain (A, AAAA, MX, TXT, NS, CNAME) and report whether SPF and DMARC records are present, with their policies. DNS queries only; no connection is made to the domain itself.

输入模式

{
  "type": "object",
  "properties": {
    "domain": {
      "type": "string",
      "maxLength": 253,
      "pattern": "^(?=.{1,253}$)([A-Za-z0-9]([A-Za-z0-9-]{0,61}[A-Za-z0-9])?\\.)+[A-Za-z]{2,63}$",
      "description": "Domain name, e.g. example.com."
    },
    "types": {
      "type": "array",
      "maxItems": 6,
      "items": {
        "type": "string",
        "enum": [
          "A",
          "AAAA",
          "MX",
          "TXT",
          "NS",
          "CNAME"
        ]
      },
      "description": "Record types. Default: all."
    }
  },
  "required": [
    "domain"
  ],
  "additionalProperties": false
}
🟢doi_lookup(doi, query, limit)

Scholarly metadata by DOI, or a best-match search by citation text: title, authors, journal, year, publisher, citation count, licence links and URL. Bibliographic facts only.

输入模式

{
  "type": "object",
  "properties": {
    "doi": {
      "type": "string",
      "maxLength": 200,
      "pattern": "^10\\.\\d{4,9}/\\S+$",
      "description": "DOI, e.g. 10.1038/nature14539."
    },
    "query": {
      "type": "string",
      "maxLength": 300,
      "description": "Citation or title text to search when no DOI is known."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 20,
      "default": 5,
      "description": "Maximum search results."
    }
  },
  "additionalProperties": false
}
🟢domain_rdap(domain)

Look up a domain in the public RDAP registry: registration, last-changed and expiry dates, status codes, nameservers, DNSSEC flag and registrar name. Registrant and contact details are not returned.

输入模式

{
  "type": "object",
  "properties": {
    "domain": {
      "type": "string",
      "maxLength": 253,
      "pattern": "^([A-Za-z0-9]([A-Za-z0-9-]{0,61}[A-Za-z0-9])?\\.)+[A-Za-z]{2,63}$",
      "description": "Domain name, e.g. example.com."
    }
  },
  "required": [
    "domain"
  ],
  "additionalProperties": false
}
🟢ecb_key_rates(history)

The three ECB key interest rates with their latest change dates and recent history. Data only, not advice.

输入模式

{
  "type": "object",
  "properties": {
    "history": {
      "type": "integer",
      "minimum": 1,
      "maximum": 24,
      "default": 4,
      "description": "Number of most recent rate observations per series."
    }
  },
  "additionalProperties": false
}
🟢ens_resolve(name, address)

Resolve an ENS name (e.g. vitalik.eth) to its Ethereum address, or look up the reverse-record name of an address, via the ENS registry on Ethereum mainnet. Onchain resolvers only; off-chain (CCIP-read) names report resolved=false.

输入模式

{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "maxLength": 255,
      "pattern": "^[a-z0-9-]+(\\.[a-z0-9-]+)+$",
      "description": "Lower-case ENS name, e.g. vitalik.eth."
    },
    "address": {
      "type": "string",
      "pattern": "^0x[0-9a-fA-F]{40}$",
      "description": "Address for a reverse lookup (used if name is not set)."
    }
  },
  "additionalProperties": false
}
🟢entity_resolve(query, queries, country, limit)

Resolve a company name, website domain, registry number, LEI or VAT number to its official legal entity: registry, registry number, legal form, status, address, industry codes, size where published and LEI. Searches national registers (Norway, Finland, Czechia, France) and GLEIF, scores the match and links every record to its source. Company-level only: no officers, no sole traders.

输入模式

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "maxLength": 200,
      "description": "Company name, website domain (example.com), registry number, LEI or VAT number. Use this or queries."
    },
    "queries": {
      "type": "array",
      "maxItems": 100,
      "items": {
        "type": "string",
        "maxLength": 200
      },
      "description": "Up to 100 queries in one run (Apify Actor only). Each query that finds a match is one billable result."
    },
    "country": {
      "type": "string",
      "pattern": "^[A-Za-z]{2}$",
      "description": "Optional ISO country code (NO, FI, CZ, FR, GB) to search one register only. Faster and more precise."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 10,
      "default": 3,
      "description": "Maximum candidates per query."
    }
  },
  "additionalProperties": false
}
🟢eu_vat_validate(vat)

Check whether an EU VAT number is valid and active. Returns validity, registered name and address where the member state publishes them.

输入模式

{
  "type": "object",
  "properties": {
    "vat": {
      "type": "string",
      "maxLength": 20,
      "description": "VAT number with country prefix, e.g. DK10150817. Spaces and dots are ignored. Greece uses EL, Northern Ireland XI."
    }
  },
  "required": [
    "vat"
  ],
  "additionalProperties": false
}
🟢fx_rate_ecb(base, symbols, date, amount)

European Central Bank euro foreign-exchange reference rates for any date since 1999, converted to any base currency. Reference rates published around 16:00 CET on working days; not tradable quotes.

输入模式

{
  "type": "object",
  "properties": {
    "base": {
      "type": "string",
      "pattern": "^[A-Za-z]{3}$",
      "default": "EUR",
      "description": "Base currency, ISO 4217."
    },
    "symbols": {
      "type": "array",
      "maxItems": 40,
      "items": {
        "type": "string",
        "pattern": "^[A-Za-z]{3}$"
      },
      "description": "Target currencies. Default: all."
    },
    "date": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "YYYY-MM-DD. Default: latest. Weekends and holidays return the previous working day."
    },
    "amount": {
      "type": "number",
      "minimum": 0,
      "maximum": 1000000000000,
      "default": 1,
      "description": "Amount of base currency to convert."
    }
  },
  "additionalProperties": false
}
🟢iban_validate(iban)

Validate an IBAN offline: ISO 13616 checksum (mod 97), registered length for the country, and a normalised and grouped format. Does not check that the account exists.

输入模式

{
  "type": "object",
  "properties": {
    "iban": {
      "type": "string",
      "maxLength": 50,
      "description": "IBAN, spaces allowed."
    }
  },
  "required": [
    "iban"
  ],
  "additionalProperties": false
}
🟢lei_lookup(lei, name, country, limit)

Look up a Legal Entity Identifier (LEI) record by 20-character LEI, or search legal entities by name and country. Returns legal name, registry number, legal form, addresses and LEI registration status. Company-level data only.

输入模式

{
  "type": "object",
  "properties": {
    "lei": {
      "type": "string",
      "pattern": "^[A-Za-z0-9]{20}$",
      "description": "Exact 20-character LEI. If set, name and country are ignored."
    },
    "name": {
      "type": "string",
      "maxLength": 120,
      "description": "Legal name to search (exact match on registered legal name, e.g. \"Novo Nordisk A/S\")."
    },
    "country": {
      "type": "string",
      "pattern": "^[A-Za-z]{2}$",
      "description": "ISO 3166 country code of the legal address, e.g. DK."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 50,
      "default": 10,
      "description": "Maximum records for a name search."
    }
  },
  "additionalProperties": false
}
🟢nordic_company_lookup(country, id, name, limit)

Look up companies in the Norwegian and Finnish company registers by registration number or name: name, legal form, industry, address, registration date and status. Company-level data only, no persons.

输入模式

{
  "type": "object",
  "properties": {
    "country": {
      "type": "string",
      "enum": [
        "NO",
        "FI"
      ],
      "description": "Register to query."
    },
    "id": {
      "type": "string",
      "pattern": "^[0-9-]{7,11}$",
      "description": "Organisation number (NO, 9 digits) or business ID (FI, e.g. 0112038-9)."
    },
    "name": {
      "type": "string",
      "maxLength": 100,
      "description": "Company name to search. Used if id is not set."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 25,
      "default": 10,
      "description": "Maximum results for a name search."
    }
  },
  "required": [
    "country"
  ],
  "additionalProperties": false
}
🟢package_vulnerabilities(ecosystem, name, version)

Check an npm or PyPI package version against a public vulnerability database: advisory ids, aliases (CVE, GHSA), summary, severity label and first fixed version, plus the latest published version. Informational; not a full security audit.

输入模式

{
  "type": "object",
  "properties": {
    "ecosystem": {
      "type": "string",
      "enum": [
        "npm",
        "PyPI"
      ],
      "description": "Package ecosystem."
    },
    "name": {
      "type": "string",
      "maxLength": 214,
      "pattern": "^[@A-Za-z0-9._/-]+$",
      "description": "Package name, e.g. lodash or requests."
    },
    "version": {
      "type": "string",
      "maxLength": 64,
      "pattern": "^[A-Za-z0-9._+-]+$",
      "description": "Version to check. Default: latest published version."
    }
  },
  "required": [
    "ecosystem",
    "name"
  ],
  "additionalProperties": false
}
🟢rss_feed_normaliser(url, maxItems, summaryChars)

Turn any RSS 2.0, RSS 1.0, Atom or JSON Feed into one clean JSON schema: feed title, link and language, then items with id, title, URL, ISO published/updated dates, summary, categories and enclosure. Give a feed URL or a normal web page and the feed is discovered from its link tags. Author names are not returned.

输入模式

{
  "type": "object",
  "properties": {
    "url": {
      "type": "string",
      "maxLength": 2000,
      "description": "Feed URL, or a web page that links to a feed."
    },
    "maxItems": {
      "type": "integer",
      "minimum": 1,
      "maximum": 200,
      "default": 50,
      "description": "Maximum number of items returned (newest first as published in the feed)."
    },
    "summaryChars": {
      "type": "integer",
      "minimum": 0,
      "maximum": 2000,
      "default": 400,
      "description": "Maximum characters of the plain-text summary per item."
    }
  },
  "required": [
    "url"
  ],
  "additionalProperties": false
}
🟢sitemap_robots_doctor(site, sampleUrls)

Audit a website's robots.txt and XML sitemaps in one call: user-agent groups and blocked paths, sitemap declarations, whether each sitemap loads, URL counts (indexes followed to 10 files), lastmod coverage and age, duplicates, off-host and non-HTTPS URLs, size-limit breaches, and a sample of listed URLs checked for status. Returns a list of concrete issues.

输入模式

{
  "type": "object",
  "properties": {
    "site": {
      "type": "string",
      "maxLength": 2000,
      "description": "Domain or URL of the site, for example example.com or https://example.com/blog."
    },
    "sampleUrls": {
      "type": "integer",
      "minimum": 0,
      "maximum": 10,
      "default": 5,
      "description": "How many listed URLs to fetch and check for status (0 to skip)."
    }
  },
  "required": [
    "site"
  ],
  "additionalProperties": false
}
🟢solana_swap_quote(inputMint, outputMint, amount, slippageBps)

Get a swap quote on Solana through a DEX aggregator: expected output, minimum output after slippage, price impact, route venues and all fees in basis points. Read-only; nothing is signed or sent. Not investment advice.

输入模式

{
  "type": "object",
  "properties": {
    "inputMint": {
      "type": "string",
      "pattern": "^[1-9A-HJ-NP-Za-km-z]{32,44}$",
      "description": "Mint address of the token to sell (SOL = So11111111111111111111111111111111111111112)."
    },
    "outputMint": {
      "type": "string",
      "pattern": "^[1-9A-HJ-NP-Za-km-z]{32,44}$",
      "description": "Mint address of the token to buy (USDC = EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v)."
    },
    "amount": {
      "type": "string",
      "pattern": "^[1-9][0-9]{0,18}$",
      "description": "Amount of the input token in its smallest unit (lamports for SOL)."
    },
    "slippageBps": {
      "type": "integer",
      "minimum": 1,
      "maximum": 1000,
      "description": "Maximum slippage in basis points. Omit for the automatic estimate."
    }
  },
  "required": [
    "inputMint",
    "outputMint",
    "amount"
  ],
  "additionalProperties": false
}
🟢solana_swap_transaction(inputMint, outputMint, amount, taker, slippageBps)

Build an unsigned Solana swap transaction through a DEX aggregator for a wallet you control. The response contains the base64 transaction, the quote and every fee in basis points, including any integrator fee. Non-custodial: you sign locally, we never see keys or funds and do not send transactions. Not investment advice.

输入模式

{
  "type": "object",
  "properties": {
    "inputMint": {
      "type": "string",
      "pattern": "^[1-9A-HJ-NP-Za-km-z]{32,44}$",
      "description": "Mint address of the token to sell."
    },
    "outputMint": {
      "type": "string",
      "pattern": "^[1-9A-HJ-NP-Za-km-z]{32,44}$",
      "description": "Mint address of the token to buy."
    },
    "amount": {
      "type": "string",
      "pattern": "^[1-9][0-9]{0,18}$",
      "description": "Amount of the input token in its smallest unit."
    },
    "taker": {
      "type": "string",
      "pattern": "^[1-9A-HJ-NP-Za-km-z]{32,44}$",
      "description": "Your wallet address (public key) that will sign and pay."
    },
    "slippageBps": {
      "type": "integer",
      "minimum": 1,
      "maximum": 1000,
      "description": "Maximum slippage in basis points. Omit for the automatic estimate."
    }
  },
  "required": [
    "inputMint",
    "outputMint",
    "amount",
    "taker"
  ],
  "additionalProperties": false
}
🟢solana_token_facts(mint)

Verifiable on-chain facts about a Solana token mint: whether the mint and freeze authorities are still set, total supply, decimals, token program, and how much of the supply the largest token accounts hold, plus public market metrics from a token index. Facts only: no verdict and no recommendation. Largest accounts can be liquidity pools or exchanges, not individual holders.

输入模式

{
  "type": "object",
  "properties": {
    "mint": {
      "type": "string",
      "pattern": "^[1-9A-HJ-NP-Za-km-z]{32,44}$",
      "description": "Token mint address."
    }
  },
  "required": [
    "mint"
  ],
  "additionalProperties": false
}
🟢solana_token_price(mints)

Current USD price, 24-hour change, liquidity and decimals for up to 50 Solana token mints in one call, from an aggregated market feed. Unknown or unpriced mints are listed as null. Data only, not a recommendation.

输入模式

{
  "type": "object",
  "properties": {
    "mints": {
      "type": "array",
      "maxItems": 50,
      "items": {
        "type": "string",
        "pattern": "^[1-9A-HJ-NP-Za-km-z]{32,44}$"
      },
      "description": "Token mint addresses (1-50)."
    }
  },
  "required": [
    "mints"
  ],
  "additionalProperties": false
}
🟢solana_token_search(query, limit)

Find Solana tokens by symbol, name or mint address: mint, decimals, verification flag, organic score, liquidity, market cap and holder count. Facts and public metrics only; a high score is not a recommendation. Always check the mint address yourself because many tokens share symbols.

输入模式

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100,
      "description": "Symbol, name or mint address."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 20,
      "default": 5,
      "description": "Maximum tokens."
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false
}
🟢solana_transaction(signature)

Look up a confirmed Solana transaction by signature: success or error, time, fee, signers, programs used, and the resulting SOL and token balance changes per account. Public on-chain data; not advice.

输入模式

{
  "type": "object",
  "properties": {
    "signature": {
      "type": "string",
      "pattern": "^[1-9A-HJ-NP-Za-km-z]{64,90}$",
      "description": "Transaction signature (base58)."
    }
  },
  "required": [
    "signature"
  ],
  "additionalProperties": false
}
🟢solana_wallet_balances(address, limit)

SOL balance and token holdings of any Solana address, with symbols, USD prices and values, largest first. Sums multiple accounts of the same token and includes Token-2022 tokens. Public on-chain data and market prices; not advice. Very large wallets are limited to the most valuable holdings.

输入模式

{
  "type": "object",
  "properties": {
    "address": {
      "type": "string",
      "pattern": "^[1-9A-HJ-NP-Za-km-z]{32,44}$",
      "description": "Solana wallet address."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 50,
      "default": 20,
      "description": "Number of holdings to return, most valuable first."
    }
  },
  "required": [
    "address"
  ],
  "additionalProperties": false
}
🟢tech_stack_lookup(url, urls)

Detect the technologies a public website uses: CMS or site builder, JavaScript framework, CDN and hosting, web server, analytics and tag managers, advertising pixels, support widgets, payments, consent tools. Each result shows its evidence (header, meta tag, script URL or page source) and a confidence level. Reads one page; respects robots.txt.

输入模式

{
  "type": "object",
  "properties": {
    "url": {
      "type": "string",
      "maxLength": 2000,
      "description": "One public http(s) URL or domain. Use this or urls."
    },
    "urls": {
      "type": "array",
      "maxItems": 20,
      "items": {
        "type": "string",
        "maxLength": 2000
      },
      "description": "Up to 20 URLs or domains; each successfully checked site is one billable result."
    }
  },
  "additionalProperties": false
}
🟢ted_notices_search(country, cpv, keyword, noticeType, publishedSince, ...)

Find recent EU public procurement notices by buyer country, CPV code, keyword and notice type. Returns title, buyer organisation, CPV codes, deadline, estimated value and a link. Buyer organisations only, no contact persons. Run it on a schedule with publishedSince to get new tenders.

输入模式

{
  "type": "object",
  "properties": {
    "country": {
      "type": "string",
      "pattern": "^[A-Za-z]{3}$",
      "description": "Buyer country, ISO 3166 alpha-3 (DNK, DEU, SWE ...)."
    },
    "cpv": {
      "type": "array",
      "maxItems": 10,
      "items": {
        "type": "string",
        "pattern": "^\\d{2,8}\\*?$"
      },
      "description": "CPV codes or prefixes with a trailing * (e.g. \"72*\" for IT services)."
    },
    "keyword": {
      "type": "string",
      "maxLength": 80,
      "pattern": "^[\\p{L}\\p{N} -]+$",
      "description": "Full-text keyword or words (letters, digits, spaces, hyphens)."
    },
    "noticeType": {
      "type": "string",
      "pattern": "^[a-z0-9-]{2,30}$",
      "description": "TED notice type, e.g. cn-standard (contract notice) or can-standard (award)."
    },
    "publishedSince": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "Only notices published on or after this date (YYYY-MM-DD). Default: 7 days ago."
    },
    "deadlineAfter": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "Only notices whose tender deadline is on or after this date."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 50,
      "default": 20,
      "description": "Maximum notices to return."
    }
  },
  "additionalProperties": false
}
🟢tender_feed(sources, keyword, cpv, country, publishedSince, ...)

Search public tenders across TED (EU), Find a Tender (UK) and SAM.gov (US) in one normalised schema: title, buyer organisation, country, CPV codes, deadline, estimated value, procurement method and source link. Filter by keyword, CPV prefix, country and publication date; export as OCDS JSON. Buyer organisations only, no contact persons.

输入模式

{
  "type": "object",
  "properties": {
    "sources": {
      "type": "array",
      "maxItems": 3,
      "items": {
        "type": "string",
        "enum": [
          "ted",
          "uk-fts",
          "sam"
        ]
      },
      "description": "Which sources to search: ted (EU), uk-fts (UK Find a Tender), sam (US SAM.gov, needs samApiKey). Default: ted and uk-fts."
    },
    "keyword": {
      "type": "string",
      "maxLength": 80,
      "pattern": "^[\\p{L}\\p{N} -]+$",
      "description": "Words that must appear in the title or description (letters, digits, spaces, hyphens)."
    },
    "cpv": {
      "type": "array",
      "maxItems": 10,
      "items": {
        "type": "string",
        "pattern": "^\\d{2,8}\\*?$"
      },
      "description": "CPV codes or prefixes with a trailing * (for example 72* for IT services). Applies to TED and Find a Tender."
    },
    "country": {
      "type": "string",
      "pattern": "^[A-Za-z]{2,3}$",
      "description": "Buyer country (ISO 3166, 2 or 3 letters) for TED. Find a Tender is always GB and SAM.gov always US."
    },
    "publishedSince": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      "description": "Only notices published on or after this date (YYYY-MM-DD). Default: 7 days ago. Use the date of your last run for new tenders only."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 50,
      "default": 20,
      "description": "Maximum notices per source."
    },
    "format": {
      "type": "string",
      "enum": [
        "notices",
        "ocds"
      ],
      "default": "notices",
      "description": "notices returns the normalised list; ocds adds an OCDS 1.1 release package."
    },
    "samApiKey": {
      "type": "string",
      "maxLength": 80,
      "description": "Your own free SAM.gov API key, only needed for the sam source. Never stored."
    }
  },
  "additionalProperties": false
}
🟢url_metadata(url, urls)

Link-preview data for one or many public URLs: title, description, canonical URL, Open Graph and Twitter card fields, favicon, language, hreflang alternates, feed links and JSON-LD types. Respects robots.txt, refuses private addresses, no JavaScript rendering. Each page is one result; failed pages are listed with the reason and not charged.

输入模式

{
  "type": "object",
  "properties": {
    "url": {
      "type": "string",
      "maxLength": 2000,
      "description": "One public http(s) URL. Use this or urls."
    },
    "urls": {
      "type": "array",
      "maxItems": 20,
      "items": {
        "type": "string",
        "maxLength": 2000
      },
      "description": "Up to 20 public http(s) URLs; every page that returns metadata is one billable result."
    }
  },
  "additionalProperties": false
}
🟢url_to_markdown(url, maxChars)

Fetch a public web page and return its main text as Markdown with title, headings, lists, tables and absolute links. Respects robots.txt, refuses private and internal addresses, no JavaScript rendering. For pages that need a browser, use a rendering tool.

输入模式

{
  "type": "object",
  "properties": {
    "url": {
      "type": "string",
      "maxLength": 2000,
      "description": "Public http(s) URL."
    },
    "maxChars": {
      "type": "integer",
      "minimum": 500,
      "maximum": 100000,
      "default": 20000,
      "description": "Maximum characters of Markdown returned."
    }
  },
  "required": [
    "url"
  ],
  "additionalProperties": false
}
🟢us_treasury_rates(months)

Monthly average interest rates on US Treasury marketable securities (bills, notes, bonds, TIPS, FRNs) Latest months first. Data only, not advice.

输入模式

{
  "type": "object",
  "properties": {
    "months": {
      "type": "integer",
      "minimum": 1,
      "maximum": 24,
      "default": 3,
      "description": "Number of most recent months."
    }
  },
  "additionalProperties": false
}
🟢wikipedia_summary(title, lang)

Lead-section summary of a Wikipedia article by title and language: plain-text extract, short description, canonical URL and last-edit time. Text is CC BY-SA 4.0 from Wikipedia contributors and must be attributed.

输入模式

{
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200,
      "description": "Article title, e.g. Copenhagen."
    },
    "lang": {
      "type": "string",
      "pattern": "^[a-z]{2,3}(-[a-z]{2,4})?$",
      "default": "en",
      "description": "Wikipedia language code."
    }
  },
  "required": [
    "title"
  ],
  "additionalProperties": false
}

社区

评价此服务器

证据

最近观测

已验证未记录版本36 个工具