gateway
Governed AI actions with signed, verifiable receipts: free keyless reads, human-approved writes.
使うべきか
品質と安全性
検出事項(11)
- HIGH
- LOWdelta__boardingpass_show 内
- LOWmaps__eta_share 内
- LOWuber__fare_estimate 内
- LOWwallet__boardingpass_show 内
- LOWduvera__dev_stackoverflow_search 内
- LOWduvera__reference_public_holidays 内
- LOWgooglecalendar__availability_find 内
- INFOduvera__news_search 内
- INFOduvera__news_top_stories 内
ツール定義とプロトコルへの準拠に関する自動分析に基づいています。
コンテキストコスト
これは、サーバーのツールがモデルのコンテキストに読み込まれるたびに消費されるおおよそのトークン数です。数が多いほど、ほかのタスクに使える注意が減ります。
インストール
ワンクリックインストール
これを `claude_desktop_config.json` ファイルに追加してください:
{
"mcpServers": {
"gateway": {
"url": "https://app.duvera.ai/mcp"
}
}
}リモートエンドポイント
https://app.duvera.ai/mcpstreamable-httpできること
ツール一覧
ツール(52)
⚪amazon__package_track(order_id)
[amazon · risk:low] Look up the delivery status of an Amazon order (read-only)
入力スキーマ
{
"type": "object",
"properties": {
"order_id": {
"description": "The order or tracking id to look up (defaults to most recent)",
"type": "string"
}
},
"required": []
}🟢applehealth__heart_rate_read(end, start)
[applehealth · risk:medium] Read heart-rate data from Apple Health
入力スキーマ
{
"type": "object",
"properties": {
"end": {
"description": "ISO-8601 end of the query window (defaults to now)",
"type": "string"
},
"start": {
"description": "ISO-8601 start of the query window (defaults to today)",
"type": "string"
}
},
"required": []
}🟢applehealth__sleep_read(end, start)
[applehealth · risk:medium] Read sleep-analysis data from Apple Health
入力スキーマ
{
"type": "object",
"properties": {
"end": {
"description": "ISO-8601 end of the query window (defaults to now)",
"type": "string"
},
"start": {
"description": "ISO-8601 start of the query window (defaults to last night)",
"type": "string"
}
},
"required": []
}🟢applehealth__steps_read(end, start)
[applehealth · risk:medium] Read step-count data from Apple Health
入力スキーマ
{
"type": "object",
"properties": {
"end": {
"description": "ISO-8601 end of the query window (defaults to now)",
"type": "string"
},
"start": {
"description": "ISO-8601 start of the query window (defaults to today)",
"type": "string"
}
},
"required": []
}🟢bluesky__trending_get
[bluesky · risk:low] Fetch the current trending topics on Bluesky. Returns topic names, display labels, and links to the topic feed. No account or API key required.
入力スキーマ
{
"type": "object",
"properties": {},
"required": []
}🟢chase__balance_check(account)
[chase · risk:low] Read the current balance of a Chase account (read-only)
入力スキーマ
{
"type": "object",
"properties": {
"account": {
"description": "The Chase account to check (defaults to primary)",
"type": "string"
}
},
"required": []
}🟢datadog__logs_view(from, query, to)
[datadog · risk:low] Search and read logs from Datadog over a time range
入力スキーマ
{
"type": "object",
"properties": {
"from": {
"description": "Start of the time range (ISO 8601 or relative)",
"type": "string"
},
"query": {
"description": "Datadog log search query",
"type": "string"
},
"to": {
"description": "End of the time range (ISO 8601 or relative)",
"type": "string"
}
},
"required": [
"query"
]
}🟢delta__boardingpass_show(confirmation_code, passenger)
[delta · risk:low] Pull up the boarding pass for a Delta flight
入力スキーマ
{
"type": "object",
"properties": {
"confirmation_code": {
"description": "Booking confirmation code",
"type": "string"
},
"passenger": {
"description": "Passenger last name",
"type": "string"
}
},
"required": [
"confirmation_code"
]
}⚪duvera__dev_npm_package(package)
[duvera · risk:low] Look up the latest version, description, license, and dependencies of an npm package. Works for scoped packages too (e.g. "@types/node"). No account required.
入力スキーマ
{
"type": "object",
"properties": {
"package": {
"description": "npm package name, e.g. \"express\" or \"@types/node\".",
"type": "string"
}
},
"required": [
"package"
]
}⚪duvera__dev_pypi_package(package)
[duvera · risk:low] Look up the current version, summary, license, and homepage of a Python package on PyPI. No account required.
入力スキーマ
{
"type": "object",
"properties": {
"package": {
"description": "PyPI package name, e.g. \"requests\" or \"fastapi\".",
"type": "string"
}
},
"required": [
"package"
]
}🟢duvera__dev_stackoverflow_search(query)
[duvera · risk:low] Search Stack Overflow questions by keyword. Returns top 5 by relevance with title, link, score, and answer status. No account required.
入力スキーマ
{
"type": "object",
"properties": {
"query": {
"description": "Search terms, e.g. \"goroutine leak detection\" or \"pandas merge on index\".",
"type": "string"
}
},
"required": [
"query"
]
}🟢duvera__finance_crypto_price(ids, vs_currencies)
[duvera · risk:low] Current spot price for one or more cryptocurrencies (CoinGecko ids like "bitcoin,ethereum,solana") in a fiat currency (default USD). Read-only market data. No account required.
入力スキーマ
{
"type": "object",
"properties": {
"ids": {
"description": "Comma-separated CoinGecko coin ids, e.g. \"bitcoin\" or \"bitcoin,ethereum,solana\".",
"type": "string"
},
"vs_currencies": {
"description": "Comma-separated fiat/quote currencies (default \"usd\"), e.g. \"usd,eur\".",
"type": "string"
}
},
"required": [
"ids"
]
}🟢duvera__finance_exchange_rates
[duvera · risk:low] Live USD exchange rates against major currencies. Read-only, no account required.
入力スキーマ
{
"type": "object",
"properties": {},
"required": []
}🟢duvera__food_recipe_search(query)
[duvera · risk:low] Search recipes by dish name (e.g. "arrabiata", "pad thai"). Returns ingredients, instructions, category, and cuisine. No account required.
入力スキーマ
{
"type": "object",
"properties": {
"query": {
"description": "Dish name to search for, e.g. \"carbonara\".",
"type": "string"
}
},
"required": [
"query"
]
}🟢duvera__food_restaurant_search(query)
[duvera · risk:low] Search for restaurants and food places by name or location using OpenStreetMap. Read-only, no account required.
入力スキーマ
{
"type": "object",
"properties": {
"query": {
"description": "Search query, e.g. \"pizza in San Francisco\" or \"sushi near me\".",
"type": "string"
}
},
"required": [
"query"
]
}⚪duvera__geo_geocode(query)
[duvera · risk:low] Convert a city or place name (e.g. "Berlin", "San Francisco") to latitude/longitude, country, timezone, and population. Use this before weather.current or weather.air-quality when you only have a place name. No account required.
入力スキーマ
{
"type": "object",
"properties": {
"query": {
"description": "Place name to look up, e.g. \"Berlin\" or \"Springfield, Illinois\".",
"type": "string"
}
},
"required": [
"query"
]
}🟡duvera__github_latest_release(owner, repo)
[duvera · risk:low] Get the latest published release (tag, name, notes, date) of a public GitHub repository. Returns 404 for repos that publish no releases. No auth required.
入力スキーマ
{
"type": "object",
"properties": {
"owner": {
"description": "Repository owner, e.g. \"expressjs\".",
"type": "string"
},
"repo": {
"description": "Repository name, e.g. \"express\".",
"type": "string"
}
},
"required": [
"owner",
"repo"
]
}🟢duvera__github_read_file(owner, path, repo)
[duvera · risk:low] Read a file from a public GitHub repository. Read-only.
入力スキーマ
{
"type": "object",
"properties": {
"owner": {
"description": "Repository owner (username or org), e.g. \"octocat\".",
"type": "string"
},
"path": {
"description": "File path within the repository, e.g. \"README.md\". Defaults to README.md.",
"type": "string"
},
"repo": {
"description": "Repository name, e.g. \"Hello-World\".",
"type": "string"
}
},
"required": [
"owner",
"repo"
]
}🟢duvera__github_search_repos(query)
[duvera · risk:low] Search public GitHub repositories by keyword. Returns top 5 results by stars. No auth required.
入力スキーマ
{
"type": "object",
"properties": {
"query": {
"description": "Search query (e.g. \"machine learning python\", \"react component library\").",
"type": "string"
}
},
"required": [
"query"
]
}🟢duvera__news_search(query)
[duvera · risk:low] Search Hacker News stories by keyword, ranked by relevance. Returns title, URL, points, author, and comment count. No account required.
入力スキーマ
{
"type": "object",
"properties": {
"query": {
"description": "Search terms, e.g. \"model context protocol\" or \"postgres performance\".",
"type": "string"
}
},
"required": [
"query"
]
}🟢duvera__news_top_stories
[duvera · risk:low] Top stories from Hacker News. Read-only, no account required.
入力スキーマ
{
"type": "object",
"properties": {},
"required": []
}⚪duvera__reference_dictionary(word)
[duvera · risk:low] Definitions, phonetics, part of speech, and examples for an English word. No account required.
入力スキーマ
{
"type": "object",
"properties": {
"word": {
"description": "English word to define, e.g. \"governance\".",
"type": "string"
}
},
"required": [
"word"
]
}⚪duvera__reference_public_holidays(country, year)
[duvera · risk:low] Public holidays for a given year and ISO country code (e.g. 2026 + "US"). Includes national and regional holidays with dates and names. No account required.
入力スキーマ
{
"type": "object",
"properties": {
"country": {
"description": "ISO 3166-1 alpha-2 country code, e.g. \"US\", \"DE\", \"JP\".",
"type": "string"
},
"year": {
"description": "Calendar year, e.g. 2026.",
"type": "number"
}
},
"required": [
"year",
"country"
]
}⚪duvera__time_now(timezone)
[duvera · risk:low] Current date and time in an IANA timezone (e.g. "America/New_York", "Asia/Tokyo"). Includes day of week and DST status. No account required.
入力スキーマ
{
"type": "object",
"properties": {
"timezone": {
"description": "IANA timezone name, e.g. \"America/New_York\", \"Europe/Berlin\", \"Asia/Tokyo\".",
"type": "string"
}
},
"required": [
"timezone"
]
}🟢duvera__travel_flight_search(latitude, longitude, radius_nm)
[duvera · risk:low] List aircraft currently airborne within a radius of a point (adsb.lol ADS-B data). Use geo.geocode to get a city's coordinates first. Returns callsign, altitude, speed, and position. No account required.
入力スキーマ
{
"type": "object",
"properties": {
"latitude": {
"description": "Latitude of the search center (e.g. 40.64 for JFK).",
"type": "number"
},
"longitude": {
"description": "Longitude of the search center (e.g. -73.78 for JFK).",
"type": "number"
},
"radius_nm": {
"description": "Search radius in nautical miles (1-250), e.g. 50.",
"type": "number"
}
},
"required": [
"latitude",
"longitude",
"radius_nm"
]
}⚪duvera__weather_air_quality(latitude, longitude)
[duvera · risk:low] Current air quality (US AQI, PM2.5, PM10, ozone) for a latitude/longitude. Use geo.geocode first if you only have a place name. No account required.
入力スキーマ
{
"type": "object",
"properties": {
"latitude": {
"description": "Latitude of the location (e.g. 37.77 for San Francisco).",
"type": "number"
},
"longitude": {
"description": "Longitude of the location (e.g. -122.42 for San Francisco).",
"type": "number"
}
},
"required": [
"latitude",
"longitude"
]
}⚪duvera__weather_current(latitude, longitude)
[duvera · risk:low] Current temperature, conditions, wind, and humidity for a latitude/longitude (Open-Meteo). Use geo.geocode first if you only have a city or place name. No account required.
入力スキーマ
{
"type": "object",
"properties": {
"latitude": {
"description": "Latitude of the location (e.g. 37.77 for San Francisco).",
"type": "number"
},
"longitude": {
"description": "Longitude of the location (e.g. -122.42 for San Francisco).",
"type": "number"
}
},
"required": [
"latitude",
"longitude"
]
}🟢duvera__wiki_search(query)
[duvera · risk:low] Search Wikipedia articles by keyword. Returns matching page titles, keys, and excerpts. Pass a result's key to wiki.summary for the article summary. No account required.
入力スキーマ
{
"type": "object",
"properties": {
"query": {
"description": "Search terms, e.g. \"zero trust architecture\" or \"Ada Lovelace\".",
"type": "string"
}
},
"required": [
"query"
]
}🟢duvera__wiki_summary(title)
[duvera · risk:low] Get the lead summary of a Wikipedia article by title (e.g. "Zero_trust_architecture"). Use wiki.search first to find the exact page key. No account required.
入力スキーマ
{
"type": "object",
"properties": {
"title": {
"description": "Article title or page key, e.g. \"Ada Lovelace\" or \"Zero_trust_architecture\" (from wiki.search results).",
"type": "string"
}
},
"required": [
"title"
]
}🟢gmail__mail_read(label)
[gmail · risk:low] Read recent emails from the Gmail inbox
入力スキーマ
{
"type": "object",
"properties": {
"label": {
"description": "Optional label/folder to read from (defaults to INBOX)",
"type": "string"
}
},
"required": []
}🟢google_workspace__mail_search(query)
[google-workspace · risk:low] Search Mail via Gmail, governed by Duvera.
入力スキーマ
{
"type": "object",
"properties": {
"query": {
"description": "Search query, e.g. 'invoices from Acme last month'.",
"type": "string"
}
},
"required": [
"query"
]
}🟢googlecalendar__availability_find(duration_minutes, end, start)
[googlecalendar · risk:low] Find open time slots within a date range in Google Calendar
入力スキーマ
{
"type": "object",
"properties": {
"duration_minutes": {
"description": "Desired slot length in minutes",
"type": "number"
},
"end": {
"description": "End of the search window in ISO 8601 format",
"type": "string"
},
"start": {
"description": "Start of the search window in ISO 8601 format",
"type": "string"
}
},
"required": [
"start",
"end"
]
}🟢grubhub__order_track(order_id)
[grubhub · risk:low] Check the live status and ETA of a Grubhub order
入力スキーマ
{
"type": "object",
"properties": {
"order_id": {
"description": "Identifier of the order to track",
"type": "string"
}
},
"required": [
"order_id"
]
}🟢hackernews__stories_top
[hackernews · risk:low] Fetch the current list of top-story ids on Hacker News. Returns an array of item ids (resolve details via the item endpoint). No account or API key required; the hacker-news.firebaseio.com endpoint is open and unmetered.
入力スキーマ
{
"type": "object",
"properties": {},
"required": []
}🟢instacart__menu_search(query, store)
[instacart · risk:low] Search for grocery items and stores in the Instacart app
入力スキーマ
{
"type": "object",
"properties": {
"query": {
"description": "Search terms, e.g. \"organic bananas\"",
"type": "string"
},
"store": {
"description": "Store name or id to scope the search",
"type": "string"
}
},
"required": [
"query"
]
}⚪maps__eta_share(contact, destination)
[maps · risk:low] Share your estimated time of arrival with a contact from Apple Maps
入力スキーマ
{
"type": "object",
"properties": {
"contact": {
"description": "Contact name or number to share ETA with",
"type": "string"
},
"destination": {
"description": "Destination address or place name for the active trip",
"type": "string"
}
},
"required": [
"contact"
]
}🟢microsoft365__calendar_list(range)
[microsoft365 · risk:low] List Calendar via Outlook Calendar, governed by Duvera.
入力スキーマ
{
"type": "object",
"properties": {
"range": {
"description": "Date range, e.g. 'this week'.",
"type": "string"
}
},
"required": []
}🟢microsoft365__mail_search(query)
[microsoft365 · risk:low] Search Mail via Outlook / Exchange, governed by Duvera.
入力スキーマ
{
"type": "object",
"properties": {
"query": {
"description": "Search query, e.g. 'invoices from Acme last month'.",
"type": "string"
}
},
"required": [
"query"
]
}🟢notion__notes_search(query)
[notion · risk:low] Search pages and notes in Notion by query
入力スキーマ
{
"type": "object",
"properties": {
"query": {
"description": "Search query string",
"type": "string"
}
},
"required": [
"query"
]
}🟢obsidian__notes_search(query)
[obsidian · risk:low] Search notes in an Obsidian vault by query
入力スキーマ
{
"type": "object",
"properties": {
"query": {
"description": "Search query string",
"type": "string"
}
},
"required": [
"query"
]
}⚪open_meteo__weather_forecast(latitude, longitude)
[open-meteo · risk:low] Current temperature, conditions, humidity, and wind for a latitude/longitude, from Open-Meteo.
入力スキーマ
{
"type": "object",
"properties": {
"latitude": {
"description": "Latitude of the place (e.g. 37.77 for San Francisco).",
"type": "number"
},
"longitude": {
"description": "Longitude of the place (e.g. -122.42 for San Francisco).",
"type": "number"
}
},
"required": [
"latitude",
"longitude"
]
}🟢opensky__flights_live(lamax, lamin, lomax, lomin)
[opensky · risk:low] List aircraft currently airborne within a latitude/longitude box, from OpenSky's live ADS-B feed.
入力スキーマ
{
"type": "object",
"properties": {
"lamax": {
"description": "North edge of the box — maximum latitude (e.g. 40.9 for NYC).",
"type": "number"
},
"lamin": {
"description": "South edge of the box — minimum latitude (e.g. 40.6 for NYC).",
"type": "number"
},
"lomax": {
"description": "East edge of the box — maximum longitude (e.g. -73.7 for NYC).",
"type": "number"
},
"lomin": {
"description": "West edge of the box — minimum longitude (e.g. -74.1 for NYC).",
"type": "number"
}
},
"required": [
"lamin",
"lomin",
"lamax",
"lomax"
]
}🟢postgres__sql_read(database, query)
[postgres · risk:low] Execute a read-only SQL query against a Postgres database
入力スキーマ
{
"type": "object",
"properties": {
"database": {
"description": "Target database name",
"type": "string"
},
"query": {
"description": "Read-only SQL query (SELECT) to execute",
"type": "string"
}
},
"required": [
"database",
"query"
]
}⚪shazam__audio_identify(duration_ms)
[shazam · risk:low] Identify the song currently playing using Shazam
入力スキーマ
{
"type": "object",
"properties": {
"duration_ms": {
"description": "How long to listen before identifying, in milliseconds",
"type": "number"
}
},
"required": []
}🟢slack__message_search(query)
[slack · risk:low] Search recent messages across Slack channels
入力スキーマ
{
"type": "object",
"properties": {
"query": {
"description": "Search query string",
"type": "string"
}
},
"required": [
"query"
]
}🟢southwest__flight_status(date, flight_number)
[southwest · risk:low] Check the status of a Southwest flight
入力スキーマ
{
"type": "object",
"properties": {
"date": {
"description": "Flight date (YYYY-MM-DD)",
"type": "string"
},
"flight_number": {
"description": "Flight number, e.g. WN1234",
"type": "string"
}
},
"required": [
"flight_number"
]
}🟢telegram__message_read(chat)
[telegram · risk:low] Read recent messages from a Telegram chat
入力スキーマ
{
"type": "object",
"properties": {
"chat": {
"description": "Chat id or @username to read from",
"type": "string"
}
},
"required": [
"chat"
]
}🟢twitter__tweets_search(max_results, query)
[twitter · risk:low] Search for recent tweets matching a keyword, hashtag, or phrase using the Twitter v2 API. Pass your Twitter Bearer Token via X-Duvera-Service-Token header — Duvera never stores it. Get a free Bearer Token at developer.twitter.com.
入力スキーマ
{
"type": "object",
"properties": {
"max_results": {
"description": "Number of tweets to return (10-100, default 10).",
"type": "number"
},
"query": {
"description": "Twitter search query. Supports operators like \"from:user\", \"#hashtag\", \"-word\".",
"type": "string"
}
},
"required": [
"query"
]
}⚪uber__fare_estimate(destination, pickup, product)
[uber · risk:low] Estimate the fare for a trip in the Uber app
入力スキーマ
{
"type": "object",
"properties": {
"destination": {
"description": "Drop-off address or place name",
"type": "string"
},
"pickup": {
"description": "Pickup address (defaults to current location)",
"type": "string"
},
"product": {
"description": "Ride product, e.g. UberX, Comfort, Black",
"type": "string"
}
},
"required": [
"destination"
]
}🟢united__flight_status(date, flight_number)
[united · risk:low] Check the status of a United flight
入力スキーマ
{
"type": "object",
"properties": {
"date": {
"description": "Flight date (YYYY-MM-DD)",
"type": "string"
},
"flight_number": {
"description": "Flight number, e.g. UA123",
"type": "string"
}
},
"required": [
"flight_number"
]
}⚪venmo__payment_request(amount_cents, note, recipient)
[venmo · risk:low] Request a payment from a contact via Venmo (no money leaves your account)
入力スキーマ
{
"type": "object",
"properties": {
"amount_cents": {
"description": "Amount being requested, in cents",
"type": "number"
},
"note": {
"description": "Optional note explaining the request",
"type": "string"
},
"recipient": {
"description": "The Venmo handle, phone, or contact to request from",
"type": "string"
}
},
"required": [
"recipient",
"amount_cents"
]
}🟢wallet__boardingpass_show(flight_number, pass_name)
[wallet · risk:low] Pull up a boarding pass stored in Apple Wallet
入力スキーマ
{
"type": "object",
"properties": {
"flight_number": {
"description": "Flight number associated with the pass",
"type": "string"
},
"pass_name": {
"description": "Name or description of the pass to display",
"type": "string"
}
},
"required": []
}推奨プロンプト
duvera__dev_stackoverflow_searchduvera__dev_stackoverflow_searchapplehealth__heart_rate_readapplehealth__heart_rate_readmicrosoft365__calendar_listコミュニティ
エビデンス