Skip to main content
Glama

AxonHub MCP Server

一个面向 AxonHub 管理数据的只读 MCP 服务器。AI 客户端可通过自然语言查询实例状态、项目、渠道、模型、请求和用量统计。

能力

  • axonhub_status:总请求数、失败请求、延迟、Token 汇总、渠道成功率

  • axonhub_list_projects:项目列表

  • axonhub_list_channels:渠道状态、模型、限流和配额状态,不返回凭据

  • axonhub_list_models:模型能力、价格、上下文限制和渠道关联数

  • axonhub_list_requests:请求状态、延迟、执行、Token 和成本,不返回请求/响应正文

  • axonhub_usage:按渠道、模型、API Key 或用户统计用量

  • axonhub_schema:查看当前实例的 GraphQL 类型,兼容不同 AxonHub 版本

  • axonhub_graphql_query:执行自定义只读 GraphQL 查询

所有 GraphQL 文档都会被解析并拒绝 mutationsubscription。返回数据会递归脱敏 API Key、密码、令牌、Cookie 和凭据字段。

Related MCP server: VortexIQ MCP Connector

安装

需要 Node.js 20 或更高版本。

npm install
npm run build

配置

管理端 GraphQL API 位于 <AXONHUB_URL>/admin/graphql,使用管理端登录令牌进行 Bearer 认证。不要把令牌写入仓库或 MCP 配置文件;建议通过启动环境注入。

已登录管理端时,可在该站点的浏览器开发者工具 Console 中执行下面的表达式取得当前会话令牌。令牌属于敏感凭据,不要粘贴到聊天、提交到 Git,或发送给他人;会话失效后需要重新获取。

localStorage.getItem('axonhub_access_token')
AXONHUB_URL=https://ai.neo7.cn
AXONHUB_TOKEN=<你的 AxonHub 管理端登录令牌>
AXONHUB_PROJECT_ID=<可选的默认项目 ID>

Codex/Claude Desktop 等支持 stdio MCP 的客户端可使用以下配置形式:

{
  "mcpServers": {
    "axonhub": {
      "command": "node",
      "args": ["C:/absolute/path/to/axonhub-mcp/dist/index.js"],
      "env": {
        "AXONHUB_URL": "https://ai.neo7.cn",
        "AXONHUB_TOKEN": "${AXONHUB_TOKEN}",
        "AXONHUB_PROJECT_ID": "${AXONHUB_PROJECT_ID}"
      }
    }
  }
}

不同客户端对环境变量插值的支持不同。若客户端不支持 ${...},请从一个已设置这些环境变量的 shell 启动客户端,或使用操作系统的安全凭据注入机制。

开发与验证

npm test
npm run check
npm run build

本项目依据 AxonHub unstable 分支前端使用的 /admin/graphql 契约实现。常用工具固定选择安全字段;实例升级后如字段有变化,可先调用 axonhub_schema 检查实际 schema,再使用 axonhub_graphql_query 查询新增的只读数据。

Available Tools

8 tools
axonhub_graphql_queryRun a read-only AxonHub GraphQL queryA

Run a custom query against /admin/graphql. Mutations and subscriptions are rejected; sensitive fields are redacted.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYes
projectIdNoAxonHub project ID. Uses AXONHUB_PROJECT_ID when omitted.
variablesNo

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full transparency burden. It discloses key behavioral traits: the operation is read-only, mutations and subscriptions are rejected, and sensitive fields are redacted. It could go further by mentioning error behavior or response shape, but the most important safety-related behaviors are 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, front-loads the primary action and target, and then adds the essential constraints. Every word earns its place with no filler or repetition of schema details.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is a flexible GraphQL executor with no output schema, so the description should ideally point toward how to learn valid queries, such as using the sibling axonhub_schema tool. It also omits the response format. For a well-known GraphQL pattern this is adequate, but for an agent selecting among siblings it leaves nontrivial gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 33% (only projectId is described), so the description must compensate. It adds useful meaning by clarifying that the query must be a read-only GraphQL query and by naming the endpoint, but it does not explain the variables object or the expected shape of the query string beyond 'custom query'. This is partial compensation, not full.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Run a custom query'), the specific resource ('/admin/graphql'), and the read-only nature of the operation. It also adds behavioral constraints ('Mutations and subscriptions are rejected; sensitive fields are redacted') that make the tool's purpose unambiguous and distinct from the sibling data-listing tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the tool is for custom GraphQL queries and explicitly says mutations/subscriptions are not allowed, which tells the agent when not to use it for writes. However, it never mentions alternatives or directs the agent to sibling tools like axonhub_schema for discovering valid queries, so the 'when to use vs alternatives' guidance is left mostly implicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

axonhub_list_channelsList AxonHub channelsA

List channels and their health, quota, model, and limiter status. Credentials are never returned.

ParametersJSON Schema
NameRequiredDescriptionDefault
afterNoPagination cursor returned by a previous call.
firstNo
modelNo
whereNoOptional QueryChannelInput.where filter.
hasTagNo
projectIdNoAxonHub project ID. Uses AXONHUB_PROJECT_ID when omitted.

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It adds one useful behavior: 'Credentials are never returned,' which is a meaningful security guarantee. However, it does not mention read-only semantics, pagination behavior, or filtering limits, which are relevant for a 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with no filler. The core purpose and returned attributes are front-loaded, and the security note is concise and valuable.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a six-parameter tool with no annotations and no output schema, the description is somewhat thin. It provides the basic return fields and a security guarantee, but lacks guidance on pagination, filter semantics, and when to use this tool relative to its siblings. An agent would need additional inference to use the filtering and pagination parameters correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 50%, and the description adds no parameter-level meaning. Parameters like first, model, and hasTag are left undocumented in both the schema and description, and the 'where' filter is only vaguely described. The tool description names output attributes but does not clarify how to use the input parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('List'), names the resource ('channels'), and lists the exact attributes returned (health, quota, model, limiter status). This makes the tool's purpose clear and helps distinguish it from sibling listing tools like axonhub_list_projects and axonhub_list_models.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The use case is implied: list channels to inspect their health, quota, model, and limiter status. However, there is no explicit guidance about when to choose this tool over siblings such as axonhub_status or axonhub_list_requests, nor any stated exclusions or alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

axonhub_list_modelsList AxonHub modelsA

List configured models, capabilities, costs, limits, and associated channel counts.

ParametersJSON Schema
NameRequiredDescriptionDefault
afterNoPagination cursor returned by a previous call.
firstNo
whereNoOptional ModelWhereInput filter.
projectIdNoAxonHub project ID. Uses AXONHUB_PROJECT_ID when omitted.

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The verb 'List' indicates a read-only operation, and no side effects are described. With no annotations provided, the description sufficiently conveys that this tool does not modify state, though it could be more explicit about being safe.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, direct sentence that lists the key elements without unnecessary elaboration. It is concise and well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple listing tool, the description provides sufficient context about the purpose and data returned. It does not specify the output format, but this is not critical for a list operation, and sibling context is not needed to understand its role.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema includes descriptions for three of four parameters (after, where, projectId), but 'first' lacks a description. The tool description does not add further parameter details, leaving the schema to carry the meaning for most parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action 'List' and the resource 'models', and specifies the included details (capabilities, costs, limits, channel counts). This makes the purpose unambiguous and distinct from sibling tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance is provided on when to use this tool versus alternative listing tools. The description implies usage for listing models but does not mention any conditions or contrast with siblings like list_projects or list_channels.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

axonhub_list_projectsList AxonHub projectsB

List AxonHub projects with status and pagination information.

ParametersJSON Schema
NameRequiredDescriptionDefault
afterNoPagination cursor returned by a previous call.
firstNo

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must carry the behavioral disclosure burden. 'List' implies a read operation, and 'with status and pagination information' gives some return-shape context. However, pagination mechanics, defaults, limits, and other behavior are left unsaid, so the disclosure is only partial.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single, front-loaded sentence with no filler. Every word carries signal: resource, output contents, and pagination are all named.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is simple, but with no annotations and no output schema the description needs to explain return semantics and optional parameters more fully. It only states that status and pagination info are included, leaving the meaning of 'first' and pagination behavior unexplained.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 50%: 'after' has a description, but 'first' has none. The tool description mentions pagination information but never explains that 'first' is the page size or how it interacts with the cursor, so it does not meaningfully compensate for the undocumented parameter.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names the exact verb and resource ('List AxonHub projects') and adds that results include status and pagination information. This clearly differentiates it from sibling tools like axonhub_list_channels and axonhub_list_models by resource.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given on when to use this tool versus the siblings, when not to use it, or what alternatives exist. The sibling names are present in context, but the description itself never mentions them or any selection criteria.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

axonhub_list_requestsList AxonHub requestsA

List recent requests with status, latency, executions, token usage, and cost. Request/response payloads are excluded.

ParametersJSON Schema
NameRequiredDescriptionDefault
afterNoPagination cursor returned by a previous call.
firstNo
whereNoOptional RequestWhereInput filter.
projectIdNoAxonHub project ID. Uses AXONHUB_PROJECT_ID when omitted.

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries more weight. It discloses that request/response payloads are excluded and lists the metrics returned, but it does not cover pagination behavior, ordering, time window, authentication, or failure semantics.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences with no filler: the first front-loads the action and returned fields, and the second adds an important exclusion. Every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 4-parameter tool with no output schema, the description gives a fair summary but omits practical details like pagination limits and what 'recent' means. The schema covers after/first, so this is adequate but not fully complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 75%, and the schema already documents after, where, and projectId, while first has defaults and bounds. The description adds no parameter-level detail beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('List') and resource ('recent requests'), enumerates the returned fields (status, latency, executions, token usage, cost), and explicitly excludes payloads. This clearly distinguishes it from sibling tools like axonhub_list_projects or axonhub_status.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The wording implies the tool is for retrieving recent request metrics, and the 'payloads are excluded' note gives a useful boundary. However, it does not name alternatives or explicitly state when to prefer sibling tools such as axonhub_usage or axonhub_graphql_query.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

axonhub_schemaInspect AxonHub GraphQL schemaB

Inspect one GraphQL type so an AI client can adapt to the installed AxonHub version.

ParametersJSON Schema
NameRequiredDescriptionDefault
typeNameNoQuery

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the burden of behavioral disclosure. 'Inspect' suggests a read-only operation, and the purpose adds useful context. But it does not describe the returned structure, what happens if typeName is omitted, or any other behavioral details. The read-only interpretation is reasonable but not fully transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single focused sentence with no filler. It is front-loaded with the action and resource. However, it may be slightly too terse given the missing parameter and behavior details.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is simple with only one optional parameter, so the description is not grossly incomplete. Still, it lacks mention of the default behavior and return format, which would help an agent use the tool correctly. The absence of an output schema makes these gaps more noticeable.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and the description does not mention the typeName parameter, its default value ('Query'), or how to specify a type. The description vaguely implies a type is selected, but it fails to compensate for the lack of schema-level documentation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Inspect') with a clear resource ('one GraphQL type') and explains the purpose ('so an AI client can adapt to the installed AxonHub version'). It is distinguishable from siblings like axonhub_list_projects or axonhub_graphql_query, though it does not explicitly name them.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies appropriate use: inspect a type before interacting to adapt to the installed version. However, it gives no explicit guidance on when to choose this over sibling tools, such as axonhub_graphql_query, and no exclusions or prerequisites.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

axonhub_statusAxonHub statusC

Get request totals, latency, token totals, and channel success rates from the AxonHub dashboard.

ParametersJSON Schema
NameRequiredDescriptionDefault
projectIdNoAxonHub project ID. Uses AXONHUB_PROJECT_ID when omitted.
timeWindowNoAxonHub time window, for example day, week, or month.
channelLimitNo

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It conveys that this is a metrics retrieval operation, but it does not explain aggregation behavior, data freshness, pagination, or whether channel success rates depend on channelLimit. This is thin for a tool with no annotation safety profile.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single front-loaded sentence with no wasted words. Every phrase adds information about what is retrieved, which is exactly the appropriate structure for a simple status tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple metrics lookup with all optional parameters and reasonable schema descriptions, the description is minimally viable. However, with no output schema and no annotations, it leaves return format, sibling differentiation, and parameter interplay unexplained, which are clear gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema covers projectId and timeWindow descriptions but leaves channelLimit undocumented, and the description adds no parameter-level meaning. With 67% schema coverage, the description needed to compensate for the missing channelLimit semantics and clarify how timeWindow and channelLimit shape the returned metrics, but it does not.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb and resource ('Get ... from the AxonHub dashboard') and lists the concrete metrics returned: request totals, latency, token totals, and channel success rates. However, it does not distinguish itself from the similar sibling axonhub_usage, so the differentiation criterion for a 5 is not fully met.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to use this tool versus axonhub_usage or axonhub_list_requests. The description implies an overview/status use case but never states exclusions or alternative selection conditions, leaving the agent to infer the right context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

axonhub_usageAxonHub usage breakdownA

Get token and cost usage grouped by channel, model, API key, or user.

ParametersJSON Schema
NameRequiredDescriptionDefault
dimensionYes
projectIdNoAxonHub project ID. Uses AXONHUB_PROJECT_ID when omitted.
timeWindowNo

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden. It conveys a read-only aggregation behavior through 'Get' and 'usage grouped by', but it does not disclose time window defaults, project scoping behavior, response shape, or any limitations. It adds some behavioral context beyond the schema, but not deeply.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no filler. Every word adds value by identifying the action, result, and grouping options.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, no annotations, and an undocumented timeWindow parameter, the definition leaves significant gaps. An agent would not know accepted timeWindow formats, defaults, or the exact shape of the returned usage data.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 33%, and the description mostly restates the dimension enum values already visible in the schema. It provides no additional meaning for timeWindow, which has no schema description, and only partial help for projectId, which is already documented in the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific action ('Get'), a concrete resource ('token and cost usage'), and the exact grouping dimensions ('channel, model, API key, or user'). This distinguishes it from siblings like axonhub_list_requests or axonhub_status without needing to open their schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The usage context is implied: an agent can infer this tool is for aggregated usage breakdowns rather than raw requests. However, there is no explicit statement about when to prefer this tool over alternatives, and no mention of when not to use it.

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.

  1. 8 tool updatesv0.1.0
    • First observedaxonhub_graphql_query
    • First observedaxonhub_list_channels
    • First observedaxonhub_list_models
    • First observedaxonhub_list_projects
    • First observedaxonhub_list_requests
    • First observedaxonhub_schema
    • First observedaxonhub_status
    • First observedaxonhub_usage

TDQS

A3.7/5.0

Scored across 8 tools

Disambiguation5/5

Each tool has a clear, distinct purpose: status, listing projects/channels/models/requests, schema inspection, usage analytics, and a generic query. No overlap or ambiguity.

Naming Consistency5/5

All tools follow the 'axonhub_verb_noun' pattern (e.g., list_projects, get_status, run_query). Consistent and predictable.

Tool Count5/5

8 tools cover the core monitoring and admin operations without redundancy. The count is well-scoped for the domain.

Completeness4/5

The surface covers status, listing, schema introspection, usage, and a flexible query escape hatch. It lacks per-entity detail getters, but for an admin/metrics gateway this is sufficient.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables querying your team's work (stats, overdue, workload, active members, etc.) via natural language, scoped to your department with read-only signed-token access.
    5 npm
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Gives AI agents read-only access to any QuestDB instance, enabling schema discovery, time-series querying, and monitoring of partitions, WAL state, symbols, and ingestion health through MCP.
    Apache 2.0
  • F
    license
    Not graded
    quality
    C
    maintenance
    Enables natural-language querying of Postgres and MongoDB databases in read-only mode, with PII masking and row/timeout guardrails, from any MCP client.
    -