Gemina

Extract, search and tag any document — invoices, receipts, contracts, forms, or your own templates.

От сообщества: Добавлен пользователем или импортирован; проверьте владельца перед подключениемРаботаетБез входаГлобальныйБесплатноТолько чтение

Что умеет

  • Files Create Upload: Reserve a pre-signed PUT slot for a forthcoming file upload. Returns the upload URL, an ``upload.headers`` dict (the agent MUST echo every header in this dict on the PUT -- today
  • Files Create Extraction Upload: Reserve a pre-signed PUT slot for Core-OCR extraction. After PUTing the bytes to the returned URL, follow the ``next_tool_call`` recipe and provide one or more ``extrac
  • Tag File: Run the FileTag pipeline against a previously uploaded slot. The ``file_id`` comes from a prior ``files_create_upload`` call. The server validates the uploaded blob (size, content-type, opti

Какие данные видит

Нужен ли аккаунт

Не нужен: сервер работает без входа

Extract, search and tag any document — invoices, receipts, contracts, forms, or your own templates. 13 tools, one sign-in, free FileTag tier, data residency in the EU, US, Israel or Asia.

Как подключить

Как подключить Gemina к Claude

Адрес сервера, который нужно вставить в настройках Claude:

https://gemina--tomer1024.run.tools

  1. Откройте Claude (сайт claude.ai или приложение для компьютера).
  2. Перейдите в Настройки → Коннекторы (в английском интерфейсе: Settings → Connectors).
  3. Нажмите Добавить пользовательский коннектор (Add custom connector).
  4. Вставьте адрес сервера, скопированный ниже, в поле URL удалённого MCP-сервера и нажмите Добавить.
  5. В чате нажмите + → Коннекторы и включите новый коннектор.

Пользовательские коннекторы доступны на тарифах Free, Pro, Max, Team и Enterprise. На Free можно добавить только один. В Team и Enterprise коннектор сначала добавляет владелец организации в Настройки организации → Коннекторы.

Авторизация

После нажатия Добавить откроется окно входа в сервис. Войдите под своим аккаунтом и подтвердите доступ. Пароль Claude не видит.

Как подключить Gemina к ChatGPT

Адрес сервера, который нужно вставить в настройках ChatGPT:

https://gemina--tomer1024.run.tools

  1. Откройте ChatGPT в браузере (chatgpt.com). Нужен тариф Plus, Pro, Business, Enterprise или Edu.
  2. Один раз включите режим разработчика: Настройки → Приложения → Дополнительные настройки → Режим разработчика (Settings → Apps → Advanced settings → Developer mode).
  3. Откройте Настройки → Коннекторы и нажмите Создать (Create).
  4. Заполните форму: Название (любое), Описание (одна фраза, что делает сервис), URL MCP-сервера (скопируйте ниже).
  5. В поле Аутентификация выберите OAuth, если сервис требует вход, иначе Нет. Нажмите Создать.
  6. В новом чате откройте + → Приложения/Коннекторы и включите коннектор.

Название раздела у OpenAI менялось (Connectors → Apps/Plugins). Если пункт называется иначе, ищите «режим разработчика» в настройках. В рабочих пространствах Business/Enterprise администратор должен разрешить пользовательские коннекторы.

Авторизация

При первом использовании ChatGPT откроет окно входа в сервис. Войдите и подтвердите доступ.

Как подключить Gemina к Cursor

Адрес сервера, который нужно вставить в настройках Cursor:

https://gemina--tomer1024.run.tools

Быстрый способ: нажмите кнопку Открыть в Cursor ниже, Cursor сам предложит добавить сервер.

Вручную:

  1. В Cursor откройте Settings → Cursor Settings → MCP и нажмите Add new global MCP server.
  2. Вставьте JSON, скопированный ниже, в открывшийся файл ~/.cursor/mcp.json (для одного проекта: .cursor/mcp.json в корне проекта).
  3. Сохраните файл. Сервер появится в списке MCP; при необходимости пройдите авторизацию по кнопке рядом с ним.

Авторизация

Если сервис требует вход, рядом с сервером в списке MCP появится кнопка авторизации.

Список инструментов сервера (13)

Технические названия из tools/list. Нужны только разработчикам.

files_create_uploadReserve a pre-signed PUT slot for a forthcoming file upload. Returns the upload URL, an ``upload.headers`` dict (the agent MUST echo every header in this dict on the PUT -- today that is just ``Content-Type``), the slot expiry (5 minutes), and a ``next_tool_call`` recipe pointing at ``tag_file`` -- copy-paste the ``file_id`` to run the FileTag pipeline against the uploaded bytes. This is the canonical path for any file the agent holds locally; bytes never traverse the LLM context (they go directly from the agent host to GCS). Allowed types: PDF, PNG, JPEG, GIF, WebP, HEIC/HEIF, AVIF. Max size 50 MB.
files_create_extraction_uploadReserve a pre-signed PUT slot for Core-OCR extraction. After PUTing the bytes to the returned URL, follow the ``next_tool_call`` recipe and provide one or more ``extraction_types`` to ``extract_document``. This is distinct from ``files_create_upload``, which is the FileTag upload flow. Allowed types: PDF, PNG, JPEG, GIF, WebP, HEIC/HEIF, AVIF. Max size 50 MB.
tag_fileRun the FileTag pipeline against a previously uploaded slot. The ``file_id`` comes from a prior ``files_create_upload`` call. The server validates the uploaded blob (size, content-type, optional SHA-256), atomically consumes the slot, runs the FileTag extraction (renaming + metadata embedding), and returns the structured result with the extracted metadata, the suggested filename, the ``enriched_file_url`` (short-lived signed URL to the renamed copy with metadata embedded into document properties), and a ``next_action`` recipe (``http_get_and_save``) telling the agent to download that URL and save it as the suggested filename -- act on it unless the user explicitly asked for metadata only. Each slot is single-use; reserve a new slot with ``files_create_upload`` to retry.
tag_urlFetch a remote URL server-side and run the FileTag pipeline. The bytes never traverse the LLM context -- the agent supplies the URL, the server fetches under strict SSRF guards (HTTPS only, no private IP ranges, 30-second timeout, 50 MB cap, redirects disabled), and returns the structured tag result with metadata, suggested filename, ``enriched_file_url`` (short-lived signed URL to the renamed copy with metadata embedded into document properties), and a ``next_action`` recipe (``http_get_and_save``) telling the agent to download that URL and save it as the suggested filename -- act on it unless the user explicitly asked for metadata only. Use this when the file already lives at a public URL.
query_documentsSearch the tenant's indexed document collection. Modes: 'structured' (exact filters over extracted fields: vendorName, docNumber, documentType, currency, issueDateFrom/To, totalAmountMin/Max, endUserId, ...), 'semantic' (natural-language similarity over document summaries), 'hybrid' (keyword + semantic fused with Reciprocal Rank Fusion — best default for free-text questions). Returns matched documents with their extracted fields and scores. Only documents of tenants that enabled document indexing appear.
aggregate_documentsCompute sums/averages/min/max/counts over the tenant's indexed documents, optionally grouped (vendor_name, currency, document_type, expense_type, payment_method, end_user_id, month, year) and filtered (same filters as query_documents). Example: total spent per vendor in Q3 = metrics [{'op':'sum','field':'total_amount'}], group_by ['vendor_name'], filters {issueDateFrom, issueDateTo}. NOTE: money metrics are always split per currency unless a currency filter is given (mixed-currency totals would be meaningless); the response meta flags when that grouping was added automatically.
index_document(Re)index one of the tenant's documents into the searchable index — use after corrections, or to backfill a document processed before indexing was enabled. Indexing normally happens automatically on every extraction once the tenant enables document indexing; this tool is the manual trigger. Returns per-outcome counts (indexed / skipped_opt_out / skipped_state / skipped_no_fields / skipped_not_in_plan / skipped_no_credits).
extract_documentRun Core-OCR extraction on a previously uploaded file slot. The ``file_id`` comes from a prior ``files_create_extraction_upload`` call (upload the bytes to the returned signed URL first; each slot is single-use). Choose one or more ``extraction_types``: 'ocr' (full text), 'invoice_headers', 'invoice_line_items', 'document_details_hebrew', 'document_line_items_hebrew', or 'custom_template' (requires a READY ``template_id``). Extraction is asynchronous: the call returns within seconds with either the completed result (fast documents) or an IN_PROCESS status carrying ``meta.correlationId`` — poll ``get_extraction_result`` with that id until complete. Duplicate protection is opt-in: pass an ``external_id`` of your own to enable it (re-submitting the same external_id within the dedup window idempotently returns the prior result, or errors if the file or extraction types differ; ``allow_duplicate=true`` overrides). Without an external_id every extraction is billed as new. Optional advanced knobs mirror the REST API: ``model_type`` selects the extraction model, and ``thinking`` / ``evaluation`` / ``correction`` / ``include_coordinates`` toggle accuracy passes and coordinate output.
get_extraction_resultPoll for the result of an asynchronous ``extract_document`` call. Pass the ``meta.correlationId`` from the extract response. Returns the completed extraction result once processing finishes, or an IN_PROCESS status while it is still running — poll again after a few seconds. Only correlations created by the calling API key are visible.
list_extractionsList the tenant's past document extractions, newest first. Filter by ``external_id`` (the idempotency key passed to extract_document), ``end_user_id``, and/or an ISO date window (``from_date``/``to_date``, YYYY-MM-DD). Paginate with ``skip``/``limit``. Returns extraction summaries — fetch full extracted data for one item with ``get_extraction``.
get_extractionFetch one extraction by its id (from list_extractions or a completed extract_document result), including the full extracted data. Only extractions created by the calling API key are visible.
get_documentFetch one document by its id, including all of its extractions. Only documents created by the calling API key are visible.
submit_extraction_feedbackSubmit verified/corrected field values for a completed extraction — the extraction-quality feedback loop. ``data`` keys use the ``label:<human label>|ptr:/<json pointer>`` format addressing fields of the extraction result, e.g. {"label:Total Amount|ptr:/totalAmount": "118.00", "label:Vendor Name|ptr:/vendorName": "ACME Ltd"}. Returns a per-field comparison summary (correct/incorrect/missing counts). Each extraction accepts feedback once.