Marketstack MCP 服务器
模型上下文协议 (MCP) 服务器将各种 Marketstack API 端点公开为 MCP 工具,提供对金融数据的访问,包括日终数据、盘中数据、拆股数据、股息数据、股票代码、交易所数据、货币数据、时区数据、债券数据和 ETF 数据。该服务器简化了将 Marketstack 数据集成到兼容 MCP 的代理和系统中的过程。
先决条件
Node.js(建议使用 v18 或更高版本)
npm(Node.js 附带)
Marketstack API 密钥
(可选)兼容 MCP 的客户端或运行器(例如 VSCode 扩展、CLI)
Related MCP server: CoinMarketCap MCP
设置
克隆存储库或确保您位于项目目录中。
安装依赖项:
npm install配置:
从https://marketstack.com/获取 Marketstack API 密钥。
通过 MCP 运行器的设置配置
MARKETSTACK_API_KEY环境变量。这是与 MCP 客户端无缝集成的推荐方法。通过 MCP 运行器运行时,请避免为此目的使用.env文件。
构建和运行
构建服务器:
npm run build这将创建一个包含已编译 JavaScript 代码的
build目录。运行服务器:
npm run start或直接:
node build/index.js**通过 MCP 运行器:**配置您的 MCP 客户端,使用 stdio 传输运行服务器。MCP 设置条目示例(将
/path/to/mcp-marketstack调整为您的实际路径,并将YOUR_API_KEY_HERE替换为您的实际密钥):"marketstack": { "transportType": "stdio", "command": "node", "args": [ "/path/to/mcp-marketstack/build/index.js" ], "env": { "MARKETSTACK_API_KEY": "YOUR_API_KEY_HERE" } // ... other optional settings ... }
可用工具
服务器将 Marketstack API 端点公开为不同的 MCP 工具,按功能分类:
市场数据
参考数据
金融工具
通过自省连接到服务器的 MCP 代理可以自动发现每个工具的详细输入模式和描述。
项目结构
该项目采用模块化结构:
缓存
服务器在内存中实现了“最近最少使用”(LRU)缓存,用于缓存工具响应。这有助于减少对 Marketstack API 的冗余调用,从而提高性能并遵守速率限制。
**机制:**缓存根据工具名称和输入参数存储响应。
**可配置的 TTL:**每个工具的缓存数据都有一个可配置的生存时间 (TTL),定义在
src/cacheConfig.ts中。这允许根据每个 Marketstack 端点提供的数据的更新频率设置不同的缓存持续时间。
许可
本项目遵循自由软件基金会发布的 GNU 通用公共许可证,许可证版本为 3,或(根据您的选择)更高版本。详情请参阅LICENSE文件。
贡献
欢迎贡献代码!请遵循标准的 fork-and-pull 请求工作流程。
支持
如有问题或疑问,请在 GitHub 存储库上打开问题。