Gadget MCP Server
@stronger-ecommerce/gadget-mcp
Универсальный MCP-сервер с правами только на чтение для любого приложения Gadget. Запрашивайте любую модель через интроспекцию GraphQL — создание клиента не требуется.
Создано Stronger eCommerce.
Быстрая настройка (рекомендуется)
Запустите интерактивный мастер настройки из директории вашего проекта Gadget.
Он автоматически определяет слаг вашего приложения из .gadget/sync.json и записывает конфигурацию.
npx @stronger-ecommerce/gadget-mcp setupМастер выполнит следующие действия:
Определит слаг вашего приложения из
.gadget/sync.json(если он есть)Запросит ваш API-ключ и окружение
Выведет готовую команду
claude mcp addдля Claude CodeАвтоматически запишет ваш
~/.cursor/mcp.jsonдля Cursor
Related MCP server: mcp-graphql-bridge
Ручная настройка
1. Получите API-ключ для продакшена
Перейдите по адресу https://<your-app>.gadget.app/edit/settings/api-keys и создайте ключ с доступом на чтение.
2. Регистрация в Claude Code
claude mcp add my-app-gadget \
-e GADGET_APP=my-app \
-e GADGET_API_KEY=your_key_here \
-- npx @stronger-ecommerce/gadget-mcpРегистрируйте несколько приложений под разными именами:
claude mcp add app-one-gadget \
-e GADGET_APP=my-first-app \
-e GADGET_API_KEY=key1 \
-- npx @stronger-ecommerce/gadget-mcp
claude mcp add app-two-gadget \
-e GADGET_APP=my-second-app \
-e GADGET_API_KEY=key2 \
-- npx @stronger-ecommerce/gadget-mcp3. Регистрация в Cursor
Добавьте в ~/.cursor/mcp.json:
{
"mcpServers": {
"app-one-gadget": {
"command": "npx",
"args": ["@stronger-ecommerce/gadget-mcp"],
"env": {
"GADGET_APP": "my-first-app",
"GADGET_API_KEY": "key1"
}
},
"app-two-gadget": {
"command": "npx",
"args": ["@stronger-ecommerce/gadget-mcp"],
"env": {
"GADGET_APP": "my-second-app",
"GADGET_API_KEY": "key2"
}
}
}
}Переменные окружения
Переменная | Обязательно | По умолчанию | Описание |
| Да | — | Слаг приложения, например |
| Да | — | API-ключ для продакшена |
| Нет |
|
|
Инструменты
Инструмент | Описание |
| Список всех моделей, доступных в приложении |
| Показать поля и типы для модели |
| Запрос к любой модели с фильтрами и выбором полей |
| Получить одну запись по ID |
| Выполнить произвольный GraphQL-запрос (мутации заблокированы) |
Пример использования
После подключения спросите Claude:
"List the models in my Gadget app"
"Show me the fields on the shopifyOrder model"
"Find orders where email is customer@example.com"
"Get all records with errors"
Будущие функции
Идеи и заметки об исследованиях (включая логи / интеграцию ggt для агентов) находятся в FUTURE_FEATURES.md.
Участие в разработке
Сообщения об ошибках и пулл-реквесты приветствуются!
Нашли ошибку? Откройте issue
Есть исправление или новая функция? Сделайте форк репозитория, внесите изменения и откройте PR в ветку
mainДля значительных изменений сначала откройте issue, чтобы мы могли согласовать подход
Локальный запуск
git clone https://github.com/Stronger-eCommerce/gadget-mcp
cd gadget-mcp
npm install
npm run build
npm testО проекте
Сделано с ♥ компанией Stronger eCommerce — разработка на Shopify и eCommerce-операции.
Available Tools
9 toolscount_recordsA
Return the total number of records for a Gadget model, with optional filtering.
| Name | Required | Description | Default |
|---|---|---|---|
| model | Yes | Model name in singular camelCase, e.g. shopifyOrder, label | |
| filter | No | Optional filter to count only matching records. Use introspect_filters to discover valid filter shapes. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. Only states it returns a count; does not disclose return format (e.g., integer), side effects, permissions, or limitations like maximum count.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence that is front-loaded and to the point. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Lacks output schema and annotations; does not clarify return format or possible constraints. Adequate for a simple count but could be more complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers both parameters with descriptions (100% coverage). Description adds cross-reference to introspect_filters for filter shape, which is helpful beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Describes exactly what the tool does: returns total number of records for a model, with optional filtering. Clearly distinct from sibling tools like get_record (single record) or query_records (list).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives (e.g., query_records for full records, get_record for single record). Agent must infer usage from description alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_recordA
Get a single Gadget record by ID. Specify the model name, record ID, and fields to return.
| Name | Required | Description | Default |
|---|---|---|---|
| model | Yes | Model name in camelCase, e.g. shopifyOrder, label | |
| id | Yes | Record ID | |
| fields | Yes | GraphQL field selection, e.g. "id name email createdAt" |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavior. It indicates a read operation ('Get'), but does not mention idempotency, data limits, or error handling. The description is adequate for a simple read but lacks depth.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences long with no extraneous words. Every sentence is useful, and the structure is focused.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has no output schema, so the description should hint at the return format. It does not. However, given it is a simple single-record getter, the description is minimally complete. It could mention that the response is a JSON object with the requested fields.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All three parameters have descriptions in the schema (100% coverage), so the baseline is 3. The description merely restates the parameter names without adding new semantic information beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get', the resource 'Gadget record', and the key parameters (model name, record ID, fields). It distinguishes itself from siblings like 'query_records' or 'list_models' by focusing on a single record retrieval.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for fetching a single record by ID, which contrasts with listing or querying tools. However, it does not explicitly state when to use it versus alternatives like 'query_records', nor does it provide when-not conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_schema_overviewA
Return all models with their fields and types in a single call. Use this for a broad understanding of the app schema before diving into specific models.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations, but description transparently reveals the tool's output (all models with fields/types) and scope (single call). A simple read operation, well explained.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences, front-loaded with purpose followed by usage guidance. No extraneous words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter tool returning schema overview, description fully covers purpose and usage. No missing details.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist, so description adds no param info. Baseline 4 per guidelines for zero-param tools.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states 'Return all models with their fields and types in a single call', specifying verb, resource, and scope. It distinguishes from siblings like 'introspect_model' (specific model) and 'list_models' (names only).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Text advises using this for 'broad understanding before diving into specific models', providing context and implying alternatives. Explicit when-not or named alternatives would push to 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
introspect_actionsA
List all actions (mutations) available in this Gadget app, including their arguments. Useful for understanding what write operations are available, even though this server is read-only.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description bears the full burden. It adds important context that the server is read-only, which informs the agent about the nature of the listed actions. However, it does not disclose other behavioral aspects like authentication requirements or whether the list is exhaustive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, with the main purpose in the first sentence and useful context in the second. Every sentence adds value, and there is no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple nature of the tool (no parameters, no output schema), the description provides sufficient information for an agent to understand and use it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has no parameters, and schema description coverage is 100%. As per guidelines, a tool with zero parameters gets a baseline of 4. The description does not need to add parameter semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it lists all actions (mutations) in the Gadget app, including their arguments. This distinguishes it from sibling introspection tools like 'introspect_filters' or 'introspect_model', which focus on other aspects.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly mentions the tool is useful for understanding write operations despite the server being read-only, providing clear context for when to use it. However, it does not explicitly state when not to use it or name alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
introspect_filtersA
Show all available filter fields and their types for a Gadget model. Use this to construct valid filter arguments for query_records and count_records.
| Name | Required | Description | Default |
|---|---|---|---|
| model | Yes | Model name in singular camelCase, e.g. shopifyOrder, label |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It accurately describes a read-only introspection tool without side effects, but could be improved by noting any authentication requirements or potential performance impact.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no filler. Every sentence provides essential information: what it does and how to use it.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple single-parameter input and no output schema, the description adequately covers purpose and usage. It could briefly mention what the output contains (e.g., list of fields with types), but it's still sufficient for an introspection tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description does not add extra meaning beyond the schema's 'Model name in singular camelCase' example; it simply restates the parameter role.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool shows all available filter fields and their types for a Gadget model, using specific verb 'show' and resource. It distinguishes from siblings like query_records and count_records by explicitly linking to filter argument construction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states to use this tool for constructing valid filter arguments for query_records and count_records, providing clear context. However, it does not mention when not to use it or alternatives like introspect_model.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
introspect_modelA
List all fields and their types for a Gadget model. Run this first when you're unsure what fields exist on a model.
| Name | Required | Description | Default |
|---|---|---|---|
| model | Yes | Model name in camelCase, e.g. shopifyOrder, label, shopifyShop |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. Only states listing action with no disclosure of read-only nature, error handling, or performance implications. Minimal behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with purpose and usage. No redundant or missing words. Highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Simple tool with one parameter and no output schema. Description covers purpose and usage. Could mention return format but not essential. Adequate for the context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with clear parameter description. The tool description adds little beyond stating 'for a Gadget model', which is already implicit. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states 'List all fields and their types for a Gadget model' with a specific verb and resource. Distinct from sibling tools like list_models, introspect_actions, etc.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly recommends running this tool 'first when you're unsure what fields exist on a model.' Provides a usage context but does not name alternatives or exclusions explicitly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_modelsA
List all models (types) available in this Gadget app via GraphQL introspection.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses the method (GraphQL introspection) and implies a read-only operation. With no annotations, it provides sufficient behavioral context for a simple list operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, well-structured sentence that is front-loaded and contains no unnecessary information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter tool with no output schema, the description is complete. It explains the purpose and method, and there is no missing context given the tool's simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters, so baseline is 4. The description does not need to add parameter meaning, and schema coverage is 100% (none).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists all models (types) via GraphQL introspection. It uses a specific verb and resource, distinguishing it from sibling tools like introspect_model which focus on a single model.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives. Usage is implied from the description, but exclusions or comparisons to siblings like introspect_actions are not provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
query_recordsA
Query records from any Gadget model. Supports filtering, sorting, pagination cursors, and field selection. Use introspect_model first to discover available fields, and introspect_filters to see valid filter shapes.
| Name | Required | Description | Default |
|---|---|---|---|
| model | Yes | Model name in singular camelCase, e.g. shopifyOrder, label | |
| fields | Yes | GraphQL field selection, e.g. "id name email createdAt" | |
| filter | No | Filter value — use introspect_filters to discover valid filter fields and shapes. | |
| sort | No | Sort value — array of sort objects, e.g. [{ createdAt: { sortOrder: "Descending" } }] | |
| limit | No | Max records to return (default 10, max 50) | |
| after | No | Pagination cursor — pass the endCursor from a previous response to fetch the next page |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; description conveys read query nature and supported operations (filtering, sorting, pagination) but lacks details on response format, error handling, or performance implications.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences with front-loaded main purpose and no unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers main features and references introspect tools for prerequisites; missing details on return format and pagination behavior, but acceptable given complexity and no output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%; description adds context by grouping parameters under 'filtering, sorting, pagination cursors, and field selection', but does not provide syntax details beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Query records from any Gadget model', a specific verb+resource, and distinguishes from siblings like count_records and get_record by listing capabilities (filtering, sorting, pagination, field selection).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly advises using introspect_model and introspect_filters first, providing usage context but not explicitly excluding alternatives (e.g., get_record for single records).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
run_graphqlA
Run an arbitrary read-only GraphQL query against the Gadget app. Use this for complex queries with nested relations or custom filtering that query_records can't express.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | GraphQL query string | |
| variables | No | GraphQL variables |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description carries full burden. It clearly declares read-only behavior. While it doesn't detail error handling or rate limits, the key behavioral trait (read-only) is explicitly stated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences: first defines purpose, second provides usage guidance. No redundant or extraneous information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema and no annotations, the description adequately covers purpose, usage, and parameter context. It doesn't detail return format, but GraphQL responses are self-explanatory. Slight gap: no mention of authentication or scope.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions. The description adds context beyond schema by explaining the tool is for complex, nested, or custom-filtering queries, which guides parameter use.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool executes a read-only GraphQL query against the Gadget app. It distinguishes from sibling tool query_records by noting it handles 'complex queries with nested relations or custom filtering that query_records can't express.'
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicit usage guidance: 'Use this for complex queries...' implies when not to use (simpler queries should use query_records). The description also clarifies it is read-only.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
5 tool updates
v1.0.1- Added
count_records - Added
get_schema_overview - Added
introspect_actions - Added
introspect_filters - Changed
query_records5 fields changed- added
Input schema / properties / afterAdded value: +{ + "description": "Pagination cursor — pass the endCursor from a previous response to fetch the next page", + "type": "string" +} - changed
Input schema / properties / filter / descriptionPrevious value: -"Gadget filter object, e.g. { \"name\": { \"equals\": \"#59389\" } }"New value: +"Filter value — use introspect_filters to discover valid filter fields and shapes." - removed
Input schema / properties / filter / typeRemoved value: -"object" - changed
Input schema / properties / model / descriptionPrevious value: -"Model name in camelCase, e.g. shopifyOrder, label"New value: +"Model name in singular camelCase, e.g. shopifyOrder, label" - added
Input schema / properties / sortAdded value: +{ + "description": "Sort value — array of sort objects, e.g. [{ createdAt: { sortOrder: \"Descending\" } }]" +}
5 tool updates
v1.0.6- First observed
get_record - First observed
introspect_model - First observed
list_models - First observed
query_records - First observed
run_graphql
TDQS
Each tool has a unique and clear purpose: counting records, fetching single record, schema overview, action/filter/model introspection, listing models, querying records, and running arbitrary GraphQL. No overlap in functionality.
All tool names follow a consistent verb_noun pattern in snake_case (e.g., count_records, introspect_model, run_graphql). Verbs are uniform and descriptive.
9 tools is well-scoped for a read-only Gadget server, covering schema discovery, record retrieval, counting, and custom queries without being excessive or insufficient.
For a read-only server, the tool surface is thorough: schema introspection, record CRUD (get, query, count), filter discovery, and arbitrary GraphQL queries. No obvious gaps for typical read operations.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
The Grafbase MCP server sits in front of a GraphQL API and exposes an MCP protocol-compliant interface that allows AI agents and LLMs to explore and query GraphQL APIs using natural language. It provides tools to search schemas, introspect types and fields, and execute GraphQL queries while minimizing context bloat by returning only relevant schema subsets, with built-in support for authentication, authorization, and configurable access control.
The HubSpot MCP Server acts as a bridge that enables AI assistants and Large Language Models to securely interact with HubSpot CRM data through natural conversation, without requiring users to understand complex API structures. It provides read-only access to standard CRM objects (contacts, companies, deals, tickets, products, invoices, and more) and their associations, secured via OAuth 2.0, allowing AI agents to perform tasks like summarizing deals, fetching company updates, and looking up record changes.
Query 40 databases from Claude, ChatGPT, or Cursor — on any device. Read-only, encrypted, audited.
The Cortex MCP server provides read-only access to real-time engineering context from the Cortex developer portal, allowing AI coding assistants to answer natural language questions about your organization's catalog (microservices, libraries, domains, teams, infrastructure), scorecards (engineering standards and best practices), initiatives (goals and deadlines), and Engineering Intelligence metrics. It includes tools for querying documentation, tracking personal entities, and accessing AI-assisted insights across the entire Cortex ecosystem.
Related MCP Servers
- AlicenseAqualityDmaintenanceGraphQL MCP Server that acts as a bridge allowing MCP clients (like Cursor or Claude Desktop) to interact with target GraphQL APIs through standard tools for schema introspection and operation execution.2203MIT
- AlicenseAqualityAmaintenanceA generic MCP (Model Context Protocol) server that bridges any GraphQL API to Claude Code. It introspects your GraphQL schema and exposes each query and mutation as an individual tool, letting Claude interact with your API directly.2481MIT
- AlicenseNot gradedqualityDmaintenanceA generic MCP server that converts .graphql query files into tools for Claude, enabling interaction with any GraphQL API without coding.MIT
- AlicenseAqualityCmaintenanceA read-only MCP server that provides AI coding tools with database schema structure (tables, columns, keys, relationships) without exposing row data.3Apache 2.0
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/Stronger-eCommerce/gadget-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server