Token导航 LogoToken导航TokenDH.com
Sectors MCP logo
金融服务未说明官方级别未说明来源级核验

Sectors MCP

MCP Server

一个提供金融市场数据和分析工具的Model Context Protocol服务器,专注于股票市场板块、指数和公司数据,部署在Cloudflare Workers上并使用Server-Sent Events进行实时通信。

工具数

38

提示词数

0

GitHub Stars

1

资源数

0
TypeScriptClaude金融数据Claude DesktopClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

supertypeai

提供方

supertypeai

最后核验

2026/5/17 20:19

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

扇区MCP服务器

一种模型上下文协议(MCP)服务器,提供金融市场数据和分析工具,重点关注股票市场部门、指数和公司数据。此服务器部署为Cloudflare Worker,并使用服务器发送事件(SSE)传输进行实时通信。

🚀 快速入门-使用云托管服务器

无需安装! 直接连接到我们的云托管MCP服务器。

选项1:本地SSE传输

对于本机支持SSE传输的MCP客户端:

{
  mcpServers: {
    sectors: {
      transport: {
        type: 'sse',
        url: 'https://sectors-mcp.aidityasadhakim250.workers.dev/sse',
        headers: {
          Authorization: `Bearer ${process.env.SECTORS_API_KEY}`,
        },
      },
    },
  },
}

选项2:通过mcp远程进行stdio

对于Claude Desktop、Claude Code或其他基于stdio的客户端,请使用 mcp-remote 作为一座桥梁:

{
  "mcpServers": {
    "sectors": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://sectors-mcp.aidityasadhakim250.workers.dev/sse",
        "--header",
        "Authorization:${AUTH_TOKEN}"
      ],
      "env": {
        "AUTH_TOKEN": "Bearer YOUR_API_KEY_HERE"
      }
    }
  }
}

得到你的 行业API关键 立即开始使用所有可用的工具!

特性

  • 市场指数数据:获取各种股票市场指数及其历史数据
  • 公司信息:详细的公司报告、财务和绩效指标
  • 行业分析:按部门、子部门和行业分析公司的工具
  • 新加坡交易所数据:新加坡交易所上市公司专用工具
  • IDX(印尼交易所)数据:印度尼西亚股票和指数的综合工具
  • 市场分析:用于识别领先者、交易量最大的股票和成长型公司的工具
  • 财务报告:访问季度财务、历史数据和报告日期
  • 高级指标:收益率、历史波动性等

自助托管选项

选项1:部署到Cloudflare Workers(推荐)

  1. 克隆此存储库
  2. 安装依赖项:
npm install
  1. 在Cloudflare仪表板中配置环境变量或 .dev.vars:
SECTORS_API_KEY=your_api_key
SUPABASE_URL=your_supabase_url
SUPABASE_ANON_KEY=your_supabase_key
  1. 部署到Cloudflare:
npm run deploy

选项2:在当地发展

  1. 克隆此存储库
  2. 安装依赖项:
npm install
  1. 创建 .dev.vars 包含环境变量的文件:
SECTORS_API_KEY=your_api_key
SUPABASE_URL=your_supabase_url
SUPABASE_ANON_KEY=your_supabase_key
  1. 启动开发服务器:
npm run dev

可用工具

市场指数和数据

  • fetch-index:获取特定市场指数的数据
  • fetch-index-daily:获取指数的每日交易数据
  • fetch-idx-market-cap:检索IDX的历史市值数据
  • fetch-daily-transaction:获取印尼股票的每日交易数据
  • fetch-singapore-daily-transaction:获取新加坡交易所股票的每日交易数据

公司报告和信息

印度尼西亚(IDX):

  • fetch-company-report:获取全面的公司报告,包括概述、财务、估值
  • fetch-companies-report:批量获取多个公司报告
  • fetch-company-segments:按部门划分的访问公司收入明细
  • fetch-listing-performance:查看性能指标列表(7d、30d、90d、365d变化)
  • fetch-ipo-companies:获取有关IPO公司的信息

新加坡(SGX):

  • fetch-sgx-company-report:新加坡证券交易所上市公司专业综合报告
  • fetch-singapore-companies-report:批量获取SGX公司报告

财务数据

印度尼西亚(IDX):

  • fetch-quarterly-financials:获取季度财务报表
  • fetch-quarterly-financial-dates:获取财务报告日期
  • fetch-historical-financial:获取历史财务数据
  • fetch-company-financial:获取详细的公司财务信息
  • fetch-company-dividend:获取股息信息和历史记录

新加坡(SGX):

  • fetch-singapore-company-historical-financial:获取新加坡证券交易所公司的历史财务数据
  • fetch-singapore-company-dividend:获取SGX公司股息数据

行业分析

印度尼西亚(IDX):

  • get-subsectors:列出所有可用的子部门
  • fetch-subindustries:获取子行业数据
  • fetch-industries:获取行业信息
  • fetch-companies-by-subsector:按子行业查找公司
  • fetch-companies-by-subindustry:按子行业查找公司
  • fetch-companies-by-index:将公司列入特定指数
  • fetch-subsector-report:获取全面的子行业分析
  • fetch-companies-nipe:获取NIPE(净收入与市盈率之比)数据

新加坡(SGX):

  • fetch-sgx-sectors:列出所有可用的SGX行业
  • fetch-sgx-companies-by-sector:按行业查找新加坡证券交易所上市公司
  • fetch-sgx-top-companies:获得表现最佳的SGX公司

市场分析和排名

印度尼西亚(IDX):

  • fetch-top-companies:通过各种指标获得顶级公司
  • fetch-top-companies-by-metrics:使用自定义指标进行高级过滤
  • fetch-top-company-movers:识别涨幅最大和跌幅最大的股票
  • fetch-top-growth-companies:查找增长指标最高的公司
  • fetch-most-traded-stocks:获得交易最活跃的股票

新加坡(SGX):

  • fetch-singapore-top-companies-by-metrics:按自定义指标排名的SGX顶级公司
  • fetch-singapore-earnings-yield:按收益率计算和排名
  • fetch-singapore-historical-volatility:分析历史价格波动

架构与实施

技术栈

  • 运行时:Cloudflare持久对象工人
  • MCP-SDK: @modelcontextprotocol/sdk v1.13.1
  • 代理框架: agents MCP代理管理包
  • 数据存储:持久数据的基础
  • API客户端:金融数据的部门API
  • 运输:用于实时通信的服务器发送事件(SSE)
  • 验证:Zod用于模式验证
  • 语言:TypeScript

项目结构

src/
├── index.ts                 # Main worker entry point with SSE routing
├── config.ts               # Configuration and environment variables
├── lib/
│   └── supabaseClient.ts  # Supabase client initialization
├── tools/                 # MCP tool implementations
│   ├── registerTools.ts   # Central tool registration
│   ├── companies.ts       # Company data tools
│   ├── companyReport.ts   # Company reports
│   ├── indexData.ts       # Index data tools
│   ├── topMovers.ts       # Market movers analysis
│   ├── sgx*.ts           # Singapore Exchange tools
│   ├── getSingapore*.ts  # Advanced SGX analytics
│   └── ...               # Other specialized tools
├── types/
│   └── api.ts            # TypeScript type definitions
└── utils/
    └── api.ts            # API utility functions

build/                     # Compiled JavaScript output
wrangler.jsonc            # Cloudflare Workers configuration

运作原理

  1. Cloudflare工作入口点 (src/index.ts):

- 处理传入的HTTP请求 - 通过验证API密钥 Authorization: Bearer 头球 - 将请求路由到适当的端点: - /sse -MCP通信的SSE传输 - /mcp -替代MCP端点 - 为有状态的MCP代理实例使用持久对象

  1. MCP代理 (MyMCP 类):

- 扩展 McpAgent 从代理框架 - 使用名称和版本初始化MCP服务器 - 在初始化过程中注册所有工具 - 通过适当的身份验证处理工具执行

  1. 工具注册 (src/tools/registerTools.ts):

- 40多种金融数据工具的集中注册 - 每个工具都配置了: - 名称和说明 - 用于输入验证的Zod模式 - API调用的处理程序函数 - 错误处理和响应格式

  1. API通信 (src/utils/api.ts):

- 创建带有身份验证的标准化API标头 - 处理API响应和错误案例 - 格式化MCP协议响应的数据

  1. 身份验证流程:
   Client Request → Authorization Header Check → Token Extraction →
   → Store in Context → Pass to Tools → API Calls with Token

环境变量

服务器需要这些环境变量(在Cloudflare Workers仪表板或 .dev.vars):

  • SECTORS_API_KEY:用于访问财务数据的您的行业API密钥
  • SUPABASE_URL:Supabase项目URL(用于持久存储功能)
  • SUPABASE_ANON_KEY:Supabase匿名密钥

苏格兰和南方能源公司运输

服务器使用服务器发送事件(SSE)传输,该传输提供:

  • 实时流媒体通信
  • 性能优于传统请求/响应
  • 自动重新连接处理
  • 高效地进行多个工具调用

客户端配置示例:

{
  transport: {
    type: 'sse',
    url: 'https://sectors-mcp.aidityasadhakim250.workers.dev/sse',
    headers: {
      Authorization: `Bearer ${process.env.SECTORS_API_KEY}`,
    },
  },
}

用法示例

使用克劳德桌面或克劳德代码

添加到配置文件(~/Library/Application Support/Claude/claude_desktop_config.json 在macOS上, %APPDATA%\Claude\claude_desktop_config.json 在Windows上):

{
  "mcpServers": {
    "sectors": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://sectors-mcp.aidityasadhakim250.workers.dev/sse",
        "--header",
        "Authorization:${AUTH_TOKEN}"
      ],
      "env": {
        "AUTH_TOKEN": "Bearer YOUR_API_KEY_HERE"
      }
    }
  }
}

这使用 mcp-remote 将SSE连接桥接到stdio。

使用MCP客户端(Types/JavaScript)

import { Client } from "@modelcontextprotocol/sdk/client/index.js";
import { SSEClientTransport } from "@modelcontextprotocol/sdk/client/sse.js";

const client = new Client({
  name: "sectors-client",
  version: "1.0.0"
});

const transport = new SSEClientTransport(
  new URL("https://sectors-mcp.aidityasadhakim250.workers.dev/sse"),
  {
    headers: {
      Authorization: `Bearer ${process.env.SECTORS_API_KEY}`
    }
  }
);

await client.connect(transport);

// Use tools
const result = await client.callTool({
  name: "fetch-company-report",
  arguments: {
    ticker: "BBCA",
    sections: "overview,financials,valuation"
  }
});

发展

本地开发

  1. 启动开发服务器:
npm run dev
  1. 服务器将在以下时间可用 http://localhost:8787
  1. 测试SSE端点:
curl -H "Authorization: Bearer YOUR_API_KEY" \
  http://localhost:8787/sse

添加新工具

  1. 在中创建新文件 src/tools/ (例如。, myNewTool.ts):
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
import { z } from "zod";
import { createApiHeaders, handleApiResponse } from "../utils/api.js";

export function registerMyNewTool(
  server: McpServer,
  baseUrl: string,
  apiKey: string | undefined
) {
  server.tool(
    "my-new-tool",
    "Description of what this tool does",
    {
      param1: z.string().describe("Description of param1"),
      param2: z.number().optional().describe("Optional param2"),
    },
    async ({ param1, param2 }) => {
      try {
        const response = await fetch(
          `${baseUrl}/endpoint/${param1}`,
          {
            method: "GET",
            headers: createApiHeaders(apiKey),
          }
        );
        const data = await handleApiResponse(response);
        
        return {
          content: [
            {
              type: "text",
              text: JSON.stringify(data, null, 2),
            },
          ],
        };
      } catch (error: any) {
        return {
          content: [
            {
              type: "text",
              text: `Error: ${error.message}`,
            },
          ],
        };
      }
    }
  );
}
  1. 在中注册该工具 src/tools/registerTools.ts:
import { registerMyNewTool } from "./myNewTool.js";

export function registerAllTools(server: McpServer, apiKey: string, env?: any) {
  // ... existing registrations
  registerMyNewTool(server, SECTORS_API_BASE, apiKey);
}
  1. 重建和测试:
npm run dev

部署

部署到Cloudflare Workers:

npm run deploy

这将:

  • 将TypeScript编译为JavaScript
  • 上传到Cloudflare Workers
  • 配置持久对象
  • 设置路线和可观察性

类型检查

在不构建的情况下运行TypeScript类型检查:

npm run type-check

生成Cloudflare类型

为Cloudflare Workers生成TypeScript类型:

npm run cf-typegen

API数据源

此服务器与多个数据源集成:

  1. 行业API (https://sectors.app/api)

- 印尼(IDX)市场数据的主要来源 - 新加坡(SGX)市场数据 - 实时和历史财务数据 - 需要API密钥进行身份验证

  1. Supabase

- 用于频繁访问数据的缓存层 - 自定义分析和计算指标 - 历史数据存储

依赖项

核心依赖关系

  • @modelcontextprotocol/sdk (v1.13.1):MCP服务器实现
  • agents (v0.0.100):支持持久对象的MCP代理框架
  • zod (v3.25.67):工具输入的模式验证
  • @supabase/supabase-js (v2.86.0):用于数据存储的Supabase客户端

开发依赖

  • typescript (v5.8.3):TypeScript编译器
  • wrangler (v4.24.3):Cloudflare Workers命令行界面
  • @types/node (v24.10.1):Node.js类型定义

贡献

欢迎投稿!以下是您可以提供帮助的方式:

  1. 报告问题:发现错误或有功能请求?在GitHub上打开一个问题
  2. 添加工具:按照以下模式实施新的财务数据工具 src/tools/
  3. 改进文档:帮助改进此README或添加代码注释
  4. 测试覆盖率:添加现有功能或新功能的测试

贡献指南

  1. 克隆该仓库
  2. 创建要素分支(git checkout -b feature/amazing-feature)
  3. 进行更改
  4. 本地测试 npm run dev
  5. 提交您的更改(git commit -m 'Add amazing feature')
  6. 推到您的分支(git push origin feature/amazing-feature)
  7. 打开拉取请求

许可证

该项目是部门财务数据平台的一部分。

支持

相关资源

目录标签

目录标签

TypeScriptClaude金融数据金融市场混合部署数据分析实时通信股票市场财务报告

支持客户端

Claude DesktopClaude

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

token

工具数量(toolCount,工具数)

38

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明token部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP