Skip to main content
Glama
slb-cn

CyberQuant MCP Server

by slb-cn

CyberQuant MCP Server

Node.js >= 20 License: MIT MCP Protocol

CyberQuant 数据共享平台的 MCP(Model Context Protocol)服务器,让 AI 助手(Claude Desktop、ChatGPT 等)能够直接查询和分析金融数据。

工作方式:AI 客户端通过 stdio 与 MCP Server 通信,MCP Server 再向 API Gateway 拉取数据,以 AI 友好的 CSV 格式返回。

功能特性

MCP Tools(7 个)

工具

说明

configure

配置 API Key,首次使用时调用

list_routes

列出当前用户可用的数据路由目录(仅元信息,不含入参/返回字段)

get_route_detail

查询单个路由的入参/返回字段详情,由大模型据此自行组织 query_data 参数

query_data

查询指定数据路由的数据,返回 CSV 格式(节省 token)

get_routes_metadata

查询当前用户可访问的数据路由元数据列表,返回压缩 JSON

get_user_profile

查询当前 API Key 对应用户的账户与权限信息,返回压缩 JSON

clear_routes_cache

清除本地路由元数据按日缓存,当日权限/路由变动后强制下次查询重新拉取最新元数据

MCP Resources(2 个)

资源 URI

说明

cyberquant://user/profile

当前用户信息(等级、市场权限、速率限制)

cyberquant://routes

当前用户可用的数据路由列表

设计亮点

  • CSV 输出:相比 JSON 节省 40–60% token,表格结构天然适合 AI 分析

  • 路由目录 + 按需详情list_routes 仅输出目录级元信息,get_route_detail 按需取详情,避免上百路由全量入参一次性占满上下文(路由元数据按账号按日文件缓存,减少重复拉取)

  • Resource 兼容工具get_routes_metadataget_user_profile 让无法稳定读取 MCP Resources 的 AI 助手也能主动获取完整上下文

  • 自然语言引导:数据返回附带提示,引导 AI 缩小查询范围而非暴力翻页

  • pageSize 上限保护:超过 1000 条自动拦截,避免 AI 处理超大数据集

  • 运行时配置:通过 configure 工具动态更新 API Key,无需重启

Related MCP server: FinClaw

快速开始

环境要求

  • Node.js >= 20.0.0

1. 接入 MCP 客户端

在 Claude Desktop(或任意 MCP 客户端)的配置文件中添加:

  • macOS~/Library/Application Support/Claude/claude_desktop_config.json

  • Windows%APPDATA%/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "cyberquant": {
      "command": "npx",
      "args": ["-y", "cyberquant-mcp"]
    }
  }
}

保存后重启客户端即可。> 从源码本地构建运行的方式见 CONTRIBUTING.md

2. 配置 API Key

MCP Server 与 cyberquant-cli 共用配置文件 ~/.cyberquant/config.json

{
  "endpoint": "https://api.cyberspace2077.com",
  "apiKey": "sk_live_your_api_key_here",
  "mcp": {
    "pageSize": 200,
    "timeout": 30000
  }
}

💡 也可不手动编辑文件——启动后在对话中直接说"请配置我的 API Key",AI 会调用 configure 工具完成配置;pageSize 同样可在对话中通过 configure 设置(省略则保留现有值)。

完整字段说明见 配置文档

3. 开始使用

在对话中直接提问,例如:

帮我查一下平安银行最近一周的日K线数据

AI 会依次调用 list_routesget_route_detailquery_data,并以表格形式返回分析结果。更多场景见 使用示例

文档

文档

说明

配置说明

配置文件格式与字段说明

工具说明

MCP Tools 的详细文档

Resources 说明

MCP Resources 介绍

故障排查

常见问题与解决方案

使用示例

典型对话场景

贡献

参与开发、构建或发布请参考 CONTRIBUTING.md

License

MIT

Available Tools

7 tools
clear_routes_cacheA

清除本地路由元数据按日缓存(~/.cyberquant/cache/routes-.json)。仅当用户当日权限/可访问路由发生变动、当日缓存未自动刷新时使用,强制下次查询重新从 API 拉取最新元数据。不发起网络请求。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.6/5.0
Behavior5/5

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

With no annotations, the description fully discloses behavior: it clears a local file, does not make network requests, and forces a refresh on next query. This is comprehensive and transparent.

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 concise sentences in Chinese, front-loading the action and file path, then usage conditions and effect. Every sentence adds value without redundancy.

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 cache-clearing tool with no output schema, the description adequately covers purpose, usage, and behavior. It could mention return status, but the core information is present.

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

Parameters4/5

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

The input schema has zero parameters, so schema coverage is 100% by default. The description adds no parameter information as none are needed, achieving the baseline for a parameterless tool.

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 tool clears local route metadata daily cache, specifying the exact file path. It distinguishes from siblings like list_routes and get_route_detail which serve different purposes.

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

Usage Guidelines4/5

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

The description explicitly states when to use: when user permissions/accessible routes change and daily cache hasn't auto-refreshed. It doesn't list alternatives or when not to use, but the context is clear for a maintenance tool.

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

configureA

配置 API Key 以访问数据服务,配置文件位于 /.cyberquant/config.json。不传任何参数时为「查询配置状态」(只读,返回是否已配置/endpoint/pageSize,不回显密钥、不写文件);传入任意参数则为「写入配置」——apiKey 首次必填,配置文件已有 apiKey 时可省略(保留现有值);endpoint 默认 https://api.cyberspace2077.com,通常无需传入;pageSize 可选(11000),省略则保留现有配置值。

ParametersJSON Schema
NameRequiredDescriptionDefault
apiKeyNoAPI Key,格式为 sk_live_xxx。首次配置必填;配置文件已有 apiKey 时可省略,保留现有值。
endpointNoAPI Gateway 地址,默认 https://api.cyberspace2077.com
pageSizeNo单次查询返回条数,默认 200,上限 1000。省略则保留现有配置值。

TDQS

A5/5.0
Behavior5/5

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

Despite no annotations, the description fully discloses behaviors: query mode is read-only, does not write file, does not echo secret; write mode updates config file. It covers all parameter behaviors and side effects.

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, well-structured paragraph that front-loads purpose, then explains modes and parameters efficiently. Every sentence adds value; no redundancy.

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

Completeness5/5

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

Given moderate complexity (3 params, no output schema), the description is complete. It covers all modes, all parameters, defaults, and file location. No gaps remain for an agent to understand usage.

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

Parameters5/5

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

Schema coverage is 100%, but description adds significant context: first-required vs optional, default values, retention behavior. This goes beyond the schema descriptions, providing complete parameter semantics.

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 tool configures API Key for data service, with two distinct modes: query (no params) and write (with params). It mentions the config file location and distinguishes from sibling tools which are about routes, queries, etc.

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

Usage Guidelines5/5

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

The description provides explicit guidance on when to use query mode (no params) vs write mode (any param). It explains first-time required vs optional parameters, default values, and behavior when parameters are omitted.

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

get_route_detailA

查询单个路由的入参与返回字段详情,并附带通用传值格式说明。

ParametersJSON Schema
NameRequiredDescriptionDefault
routeSlugYes路由标识,如 "daily-stock"。通过 list_routes 获取可用 routeSlug。

TDQS

A3.9/5.0
Behavior2/5

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

No annotations provided, so the description must fully disclose behavioral traits. It implies a read operation but does not explicitly state it's read-only or mention any side effects.

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?

Single sentence, front-loaded with purpose, no superfluous words.

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?

Given no output schema, the description mentions return field details but lacks specifics about the return format or structure, leaving it incomplete.

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

Parameters4/5

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

Schema coverage is 100%, but the description adds context by explaining the parameter meaning and providing an example and a method to obtain valid values, exceeding what the schema alone 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?

Clearly states the verb (query), resource (single route), and scope (input parameters and return field details, plus value format). Distinguishes from siblings like list_routes and query_data.

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

Usage Guidelines4/5

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

Implies usage by referencing list_routes to get the routeSlug, but does not explicitly state when to use this tool over alternatives.

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

get_routes_metadataA

一次性返回所有路由的完整元数据(压缩 JSON,含 routeSlug、名称、说明、分类、市场类型、权限等级、queryParams、responseParams)。token 开销较大,仅当需要一次性拿到全部接口的完整字段定义、构建完整索引时使用。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.5/5.0
Behavior4/5

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

Without annotations, the description carries full burden. It discloses that the tool returns compressed JSON, incurs large token cost, and lists output fields. No destructive behavior is mentioned, which is appropriate for a read-only 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?

Two sentences, each serving a distinct purpose: specifying output and providing usage guidance. No unnecessary words.

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?

The description explains output content and usage scenario. For a tool with no parameters and no output schema, it is mostly complete but could add details on decompression or exact JSON structure.

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

Parameters5/5

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

With no parameters and 100% schema coverage, the description adds significant meaning by explaining the tool's purpose and output content (compressed JSON with specific fields).

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 specifies the verb '返回' (return) and resource '所有路由的完整元数据' (complete metadata of all routes), listing included fields. It clearly distinguishes from sibling tools like list_routes and get_route_detail.

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

Usage Guidelines4/5

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

The description states when to use: only when needing complete field definitions at once, citing high token cost. It implies alternatives (lighter tools) but does not explicitly name them.

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

get_user_profileA

查询当前 API Key 的账户与权限信息(压缩 JSON):邮箱、订阅等级、可用市场、到期时间、账户是否有效、速率限制配置。仅在需要核对账户状态、可用市场范围或查看限流配额时调用。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.4/5.0
Behavior4/5

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

No annotations are provided, so the description bears full burden. It mentions the output is '压缩 JSON' (compressed JSON) and lists the included fields. It implies a read-only query but does not explicitly state the absence of side effects or authentication requirements. The description is largely transparent but could mention that no modifications occur.

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 extremely concise: two sentences. The first sentence immediately states the purpose and return fields, while the second specifies usage context. No unnecessary words or repetition. It is well-structured and front-loaded.

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?

Given no output schema, the description adequately explains the return value by listing key fields (email, subscription level, available markets, expiration time, account validity, rate limit config). It also mentions compressed JSON format. However, it does not describe error responses or the exact structure, but for a simple read-only tool this is mostly complete. A minor improvement would be to note that it returns a single JSON object.

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

Parameters4/5

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

There are no parameters, so schema coverage is 100%. The description naturally cannot add parameter semantics. According to the rules, with 0 parameters the baseline score is 4, and there is no need for additional param info. The score is appropriate.

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 it queries account and permission info for the current API key, listing specific fields (email, subscription, markets, expiry, validity, rate limits). The verb '查询' (query) and resource '账户与权限信息' (account and permission info) are specific. It is clearly distinct from sibling tools like get_route_detail (routes) and configure (mutation).

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

Usage Guidelines4/5

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

The description explicitly states when to call: '仅在需要核对账户状态、可用市场范围或查看限流配额时调用' (only when needing to check account status, available markets, or rate limits). This provides clear context but does not explicitly mention when not to use or list alternatives. However, given the simple scope, the guidance is sufficient.

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

list_routesA

列出当前用户可用的数据路由目录(轻量,仅 routeSlug、名称、说明、分类,不含入参/返回字段)。

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.8/5.0
Behavior2/5

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

No annotations provided, so description must carry behavioral transparency. It states the scope ('available to current user') but does not disclose any behavioral traits such as authentication requirements, rate limits, or whether it refreshes data. For a read-like operation, it lacks detail.

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?

Single sentence efficiently conveys purpose, scope, and content without wasted words.

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 list tool with no parameters and no output schema, the description is largely complete: it specifies what fields are included, what is excluded, and the user scope. It could explicitly state it returns a list, but that is implied.

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

Parameters4/5

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

Tool has zero parameters; schema coverage is 100% (empty schema). The description adds no parameter information, which is acceptable since there are none. Baseline is 4 for zero 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?

Description clearly states it lists available data route directories, specifies it's lightweight with limited fields (routeSlug, name, description, category), and explicitly excludes input/return fields. This distinguishes it from a detailed tool like get_route_detail.

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?

Description implies usage for a quick summary view by stating 'lightweight' and listing excluded fields, but does not explicitly state when to use this versus siblings like get_route_detail or query_data.

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

query_dataA

按参数查询指定路由的数据,返回 CSV 格式。需先用 get_route_detail 获取入参/返回字段说明,再据此组织 params 调用本工具。

ParametersJSON Schema
NameRequiredDescriptionDefault
paramsNo查询参数,键值对透传给 API。具体参数与传值格式请先调用 get_route_detail(routeSlug) 获取,再据此组织本对象。
routeSlugYes路由标识,如 "daily-stock"。通过 list_routes 获取可用路由。

TDQS

A4.2/5.0
Behavior3/5

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

With no annotations, the description must disclose behavior. It states returns CSV format but omits details on rate limits, authentication, error handling, or whether it is read-only. The prerequisite step is helpful, but more behavioral context would improve transparency.

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 sentences, no unnecessary words. The first sentence states purpose, the second provides essential prerequisite. Front-loaded and efficient.

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?

Given the dynamic params object and no output schema, the description adequately tells the agent the return format (CSV) and the cross-reference to get_route_detail for parameter details. It could mention error conditions, but the core usage is covered.

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

Parameters4/5

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

The schema covers 100% of parameters with descriptions, but the description adds value by directing users to get_route_detail for understanding the dynamic 'params' object, which goes beyond the schema's generic 'key-value pass-through' explanation.

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 tool queries data of a specified route by parameters and returns CSV format. It distinguishes itself from siblings like list_routes (listing) and get_route_detail (detail) by focusing on data retrieval with dynamic parameters.

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

Usage Guidelines4/5

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

The description explicitly instructs users to first call get_route_detail to learn input/return field descriptions before organizing params. This provides a clear workflow, though it could mention when not to use (e.g., if only need route metadata).

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.

  1. 7 tool updatesv0.1.7
    • First observedclear_routes_cache
    • First observedconfigure
    • First observedget_route_detail
    • First observedget_routes_metadata
    • First observedget_user_profile
    • First observedlist_routes
    • First observedquery_data

TDQS

A4.3/5.0
Disambiguation5/5

Each tool has a clearly distinct purpose: configuration, listing routes, getting route details, querying data, bulk metadata, user profile, cache clearing. No overlapping functionality.

Naming Consistency4/5

Most tools follow verb_noun pattern (list_routes, get_route_detail, query_data, etc.), but 'configure' is a single verb without a noun, causing a slight inconsistency.

Tool Count5/5

7 tools is well within the ideal 3-15 range. The count feels appropriate for a data query API server without being too heavy or too light.

Completeness5/5

The tool set covers the full lifecycle: setup (configure), discovery (list_routes, get_route_detail, get_routes_metadata), query (query_data), account info (get_user_profile), and maintenance (clear_routes_cache). No obvious gaps.

Maintenance

ActivitySlowing
ResponsivenessSyncing

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

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    An MCP server that provides AI agents with real-time access to DEX liquidity pool data, enabling smarter trading, analytics, and automated strategies.
    10
    1
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    MCP server that provides AI agents with financial tools including real-time quotes, backtesting, technical analysis, and multi-exchange data via a simple CLI interface.
    1
    MIT
  • A
    license
    B
    quality
    D
    maintenance
    MCP server that exposes QuantXData's institutional crypto market data APIs to AI assistants, enabling natural language queries for trades, order books, OHLCV, options, and more across 120+ exchanges.
    12
    MIT

Latest Blog Posts

MCP directory API

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

curl -X GET 'https://glama.ai/api/mcp/v1/servers/slb-cn/cyberquant-mcp'

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