Skip to main content
Glama
infino-ai

Infino MCP server

Official
by infino-ai

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
INFINO_MCP_URINoData to serve: a local path or a bucket URI. Defaults to ~/.infino/mcp (persistent).~/.infino/mcp
INFINO_MCP_VALIDATENoWhen set (e.g., '1', 'true', 'yes'), validates storage credentials at startup.off
INFINO_MCP_EMBED_MODELNoEmbedding model name. Default is 'Xenova/all-MiniLM-L6-v2' for local, 'text-embedding-3-small' for openai.Xenova/all-MiniLM-L6-v2 (local) / text-embedding-3-small (openai)
INFINO_MCP_EMBED_API_KEYNoAPI key for the 'openai' provider. Optional for unauthenticated endpoints.
INFINO_MCP_ENABLE_WRITESNoWhen set (e.g., '1', 'true', 'yes'), enables write tools and DDL/DML. Omit for read-only.off
INFINO_MCP_EMBED_BASE_URLNoBase URL of the OpenAI-compatible embeddings API (e.g., https://api.openai.com/v1). Required if provider is 'openai'.
INFINO_MCP_EMBED_PROVIDERNoEmbedding provider: 'local' (default, no key) or 'openai'. Inferred as 'openai' when INFINO_MCP_EMBED_BASE_URL is set.local

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
infino_list_tablesA

List the tables in the connected catalog. Call this first to discover what is available to search or query.

infino_describe_tableA

Return a table's column names and types — call before searching so you know which column to target and what fields each result row carries.

infino_semantic_searchA

Use when searching for a concept by meaning and the exact wording is unknown — this retrieves paraphrases and synonyms, not just literal matches. Embeds the query with a local model (no API key) and ranks a table's embedding column by vector similarity, each hit with a score. Optional 'filter' restricts the ranking to rows whose keyword column matches a predicate first (a pushdown pre-filter, e.g. semantic search only within rows tagged 'billing'). For exact terms use infino_keyword_search; when the query has both literal terms and an intent use infino_hybrid_search.

infino_keyword_searchA

Use when the query is literal terms — identifiers, error codes, product names, exact phrases — and you want results ranked by relevance. BM25 full-text search over a text column: ranks rows by how well the query's tokens (and their stems) match, each with a relevance score. Matches exact tokens, not synonyms or paraphrases. Prefer this over SQL LIKE for known literal terms. For meaning-based search use infino_semantic_search; for both at once use infino_hybrid_search.

infino_hybrid_searchA

Use when a query carries both specific terms and an intent — you want exact-term precision without giving up paraphrase recall. Fuses BM25 over a text column with vector similarity over the embedding column in a single ranking pass, so rows matching the literal terms AND the meaning rank highest. Embeds the query with a local model (no API key). Sits between infino_keyword_search (literal only) and infino_semantic_search (meaning only).

infino_token_matchA

Use when you need the SET of rows containing a keyword, not a ranked order — a fast unranked keyword filter. Returns rows whose text column contains the token(s), matching indexed tokens and their stems. For ranked results use infino_keyword_search; for analytical filtering across columns use infino_sql.

infino_exact_matchA

Use to fetch rows whose column exactly equals a value — a tag, status, or id string. Unranked exact-equality filter over an indexed column. For ranked text relevance use infino_keyword_search; for multi-column analytical filtering use infino_sql.

infino_countA

Use when you only need HOW MANY rows match a keyword query, not the rows themselves — a fast tally over a text column, without fetching or ranking. Cheaper than infino_keyword_search when a number is all you need (e.g. 'how many docs mention X'). For the matching rows use infino_keyword_search or infino_token_match.

infino_sqlA

Use for structural or analytical questions — counts, GROUP BY, joins, aggregates, filtering by column value — returning result rows. The engine's search functions are callable as table-valued relations, so a single query can rank AND aggregate: bm25_search('table','text_col','terms', k) — also bm25_search_prefix / token_match / exact_match — need no embedding. vector_search('table','vec_col', {{q}}, k) and hybrid_search('table','text_col','terms','vec_col', {{q}}, k) need a query vector: put a {{name}} placeholder where the vector goes and pass embed:{"name":"query text"} — the server embeds the text and substitutes the vector in. Example: SELECT path, SUM(end_line - start_line + 1) AS lines FROM bm25_search('docs','body','error timeout', 300) GROUP BY path ORDER BY lines DESC. Read-only: a single SELECT / WITH statement; DDL/DML is rejected.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/infino-ai/infino-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server