{"serverId":"mcp-registry/ai.bankee/inferventis-mcp","tools":[{"name":"currency_convert","fixed":{"name":"currency_convert","description":"Converts a monetary amount from one currency to another using live exchange rates sourced from the Frankfurter API (European Central Bank data). Returns the converted amount, the exact exchange rate applied, and the timestamp of the rate. Supports 30+ currencies including USD, EUR, GBP, JPY, CHF, AUD, CAD, SEK, NOK, DKK, SGD, HKD, and all major ISO 4217 codes. Use currency_convert when an agent needs to convert prices, invoices, salaries, payments, or any financial figure between fiat currencies","inputSchema":{"type":"object","required":["amount","from","to"],"properties":{"to":{"type":"string","description":"The target currency code in ISO 4217 format. Must be uppercase. Examples: EUR, JPY, CHF, SGD, HKD, SEK."},"from":{"type":"string","description":"The source currency code in ISO 4217 format. Must be uppercase. Examples: USD, GBP, EUR, JPY, CHF, AUD, CAD."},"amount":{"type":"number","description":"The monetary amount to convert. Must be a positive number. Decimals are supported. Example: 1500.50 to convert one thousand five hundred and fifty cents."}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":310,"tokensAfter":310},{"name":"currency_convert_lite","fixed":{"name":"currency_convert_lite","description":"Converts a monetary amount between any two fiat currencies using live exchange rates from the Frankfurter API (European Central Bank data). Returns the converted amount and the exchange rate applied. This is a lightweight variant of currency_convert — minimal response without rate timestamp or source attribution. Use currency_convert_lite when only the converted value and rate are needed and ECB/Frankfurter-sourced rates are preferred. Prefer currency_convert when the agent also needs rate times","inputSchema":{"type":"object","required":["amount","from","to"],"properties":{"to":{"type":"string","description":"ISO 4217 code of the target currency (e.g. 'EUR', 'JPY', 'CHF'). Case-insensitive."},"from":{"type":"string","description":"ISO 4217 code of the source currency (e.g. 'USD', 'GBP', 'EUR'). Case-insensitive."},"amount":{"type":"number","description":"Monetary amount to convert. Must be a positive number."}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":271,"tokensAfter":271},{"name":"currency_convert_open","fixed":{"name":"currency_convert_open","description":"Converts a monetary amount between two fiat currencies using live exchange rates from an open currency exchange API. Returns the converted amount and the rate applied. Use currency_convert_open as an alternative live-rate source when currency_convert (Frankfurter/ECB) or currency_fx_lite are unavailable or rate-limited. The underlying source is an open public exchange rate feed suitable for informational use. Prefer currency_convert or currency_rates when ECB-auditable Frankfurter rates are requ","inputSchema":{"type":"object","required":["amount","from","to"],"properties":{"to":{"type":"string","description":"ISO 4217 target currency code (e.g. 'EUR', 'JPY', 'CHF'). Case-insensitive."},"from":{"type":"string","description":"ISO 4217 source currency code (e.g. 'USD', 'GBP', 'EUR'). Case-insensitive."},"amount":{"type":"number","description":"Monetary amount to convert. Must be a positive number."}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":267,"tokensAfter":267},{"name":"platform_tool_finder","fixed":{"name":"platform_tool_finder","description":"Discovers the most relevant tools available on this MCP server for a given task using local semantic search (MiniLM-L6-v2 embeddings). Accepts a plain-English description of what needs to be accomplished and returns the best matching tools ranked by relevance, along with their input schemas, pricing tier, and exact call instructions. Use this tool first when you are connected to this server but do not know which specific tool to call — describe your goal and let platform_tool_finder identify the","inputSchema":{"type":"object","required":["intent"],"properties":{"top_k":{"type":"number","description":"How many ranked results to return. Integer between 1 and 10. Defaults to 3. Use a higher value when the best tool is ambiguous."},"intent":{"type":"string","description":"Plain-English description of what you need to accomplish. Be specific about the goal, not the tool name. Example: 'I need to convert 500 dollars to euros at the current exchange rate' or 'get the latest technology news headlines'."},"model_hint":{"type":"string","description":"Optional: the name of the calling LLM model. Examples: claude, gpt-4, gemini. Used to apply model-specific manifest variant ranking when available. Omit if unknown."}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":354,"tokensAfter":354},{"name":"stripe_payment_records","fixed":{"name":"stripe_payment_records","description":"Retrieves payment and charge records from a Stripe merchant account. Returns a list of payment records filtered by the requested query type. Use stripe_payment_records when an agent needs to review recent charges, refunds, disputes, or subscription payments from a Stripe account. This is a lightweight variant of stripe_payments — it returns a simple records array rather than the full structured Stripe response with customer details, metadata, and pagination cursors. Prefer stripe_payments when t","inputSchema":{"type":"object","required":["query_type"],"properties":{"limit":{"type":"number","description":"Maximum number of records to return. Defaults to 10. Maximum 50."},"query_type":{"type":"string","description":"Type of payment records to retrieve. Accepted values: 'recent_payments' (latest charges), 'refunds' (refund records), 'disputes' (disputed charges), 'subscriptions' (recurring subscription payments)."}}},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: false, destructiveHint: false, idempotentHint: false (inferred from the name).","verify":true}],"tokensBefore":272,"tokensAfter":272},{"name":"stripe_payments","fixed":{"name":"stripe_payments","description":"Retrieves live payment data from a Stripe account via the Stripe API. Supports four query types: recent_payments returns the latest payment intents with status, amount, and currency; failed_charges returns declined or failed charges with failure reasons and error codes; customers returns customer records with name, email, and payment method details; subscriptions returns active and cancelled subscription plans with billing interval and status. Use stripe_payments when an agent needs to investiga","inputSchema":{"type":"object","required":["query_type"],"properties":{"limit":{"type":"number","description":"Number of records to return. Integer between 1 and 25. Defaults to 10."},"query_type":{"type":"string","description":"The type of Stripe data to retrieve. Must be one of: recent_payments (latest payment intents), failed_charges (declined or failed charges with failure reasons), customers (customer records with contact and payment method info), subscriptions (billing subscriptions with status and plan details)."}}},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: false, destructiveHint: false, idempotentHint: false (inferred from the name).","verify":true}],"tokensBefore":298,"tokensAfter":298},{"name":"timezone_convert","fixed":{"name":"timezone_convert","description":"Converts time between timezones. Useful for time conversion tasks. Use when you need to convert 3:45 PM EST to Pacific Time for a meeting schedule; or find what time it will be in Tokyo when it's 9 AM in New York; or translate an event time from London timezone to Sydney timezone. Also use to find the equivalent time in Dubai for a 2 PM Central European Time appointment; or find the local time in San Francisco when it's midnight in Berlin. Accepts time, from_tz, to_tz, date. Returns the converte","inputSchema":{"type":"object","required":["time","from_tz","to_tz"],"properties":{"date":{"type":"string","description":"Calendar date string in standard formats like 'YYYY-MM-DD', 'MM/DD/YYYY', or 'DD.MM.YYYY', representing the specific day for the timezone conversion calculation."},"time":{"type":"string","description":"A string representing the time to convert, formatted in 24-hour or 12-hour notation with optional AM/PM indicator, such as '14:30' or '2:45 PM'."},"to_tz":{"type":"string","description":"Target timezone identifier where the time will be converted, supporting IANA standard timezone names like 'Europe/London' or abbreviations such as 'GMT', indicating the destination geographical region."},"from_tz":{"type":"string","description":"Timezone identifier for the source time, accepting IANA standard names like 'America/New_York' or common abbreviations such as 'EST', specifying the original time's geographical context."}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":415,"tokensAfter":415},{"name":"web_url_reader","fixed":{"name":"web_url_reader","description":"Fetches any public web page and returns clean, readable plain text stripped of HTML, navigation, scripts, advertisements, and boilerplate. Returns the page title, meta description, word count, and main body text ready for analysis or summarisation. Use this tool when an agent needs to read the content of a specific web page or article URL — for example to summarise an article, extract facts from a page, verify a claim by reading the source, or convert a web page into plain text to pass to anothe","inputSchema":{"type":"object","required":["url"],"properties":{"url":{"type":"string","description":"The full public URL to fetch and read. Must include the scheme. Examples: 'https://en.wikipedia.org/wiki/Artificial_intelligence', 'https://www.bbc.com/news/technology-12345678'. Only HTTP and HTTPS URLs are supported."},"max_chars":{"type":"number","description":"Maximum number of characters to return from the page body text. Defaults to 8000. Set higher (up to 50000) for long articles or documents. Set lower for quick headline extraction. The response indicates whether content was truncated."},"include_links":{"type":"boolean","description":"Whether to include a list of hyperlinks found on the page alongside the text content. Defaults to false. Set to true when the agent needs to discover further URLs to follow, such as when crawling a site or finding references."}}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":396,"tokensAfter":396}],"toolsChanged":8,"tokensSaved":0,"todo":[],"note":"Deterministic fixes. Changes marked verify need a human look before shipping (renames, inferred annotations, inferred types, removed text). Parameter descriptions in `todo` need to be written by someone who knows the API."}