Gadget MCP Server
@stronger-ecommerce/gadget-mcp
모든 Gadget 앱을 위한 범용 읽기 전용 MCP 서버입니다. 생성된 클라이언트 없이도 GraphQL 인트로스펙션을 통해 모든 모델을 쿼리할 수 있습니다.
Stronger eCommerce에서 제작했습니다.
빠른 설정 (권장)
Gadget 프로젝트 디렉토리 내에서 대화형 설정 마법사를 실행하세요.
.gadget/sync.json에서 앱 슬러그를 자동으로 감지하고 설정을 자동으로 작성합니다.
npx @stronger-ecommerce/gadget-mcp setup마법사는 다음을 수행합니다:
.gadget/sync.json에서 앱 슬러그를 감지합니다(있는 경우).API 키와 환경을 입력하라는 메시지를 표시합니다.
Claude Code를 위한 실행 준비가 완료된
claude mcp add명령어를 출력합니다.Cursor를 위해
~/.cursor/mcp.json을 자동으로 작성합니다.
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에게 다음과 같이 질문하세요:
"내 Gadget 앱의 모델을 나열해 줘"
"shopifyOrder 모델의 필드를 보여줘"
"이메일이 customer@example.com인 주문을 찾아줘"
"오류가 있는 모든 레코드를 가져와"
향후 기능
계획된 아이디어 및 연구 노트(에이전트를 위한 로그 / ggt 통합 포함)는 FUTURE_FEATURES.md에서 확인할 수 있습니다.
기여하기
버그 리포트와 풀 리퀘스트를 환영합니다!
버그를 발견하셨나요? 이슈를 열어주세요
수정 사항이나 기능이 있나요? 리포지토리를 포크하고 변경 사항을 적용한 뒤
main브랜치로 PR을 열어주세요.중요한 변경 사항의 경우, 접근 방식을 맞추기 위해 먼저 이슈를 열어주세요.
로컬에서 실행하기
git clone https://github.com/Stronger-eCommerce/gadget-mcp
cd gadget-mcp
npm install
npm run build
npm test정보
Stronger eCommerce에서 ♥를 담아 제작했습니다 — Shopify 개발 및 이커머스 운영.
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