Finance Toolkit
500+ transparent financial methods calculated from raw statements, not third-party endpoints.
作者提供的说明(英文原文)
US open solar data for agents: PVWatts production, tariffs & ROI, market data, forecasts. 18 tools.
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
NREL_API_KEY, OPENEI_API_KEY, EIA_API_KEY, AHJ_REGISTRY_TOKEN标为机密的值是你账户的钥匙。千万不要分享给别人,也不要粘贴到聊天里。
你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json
{
"mcpServers": {
"solar-data": {
"command": "uvx",
"args": [
"solar-data-mcp"
],
"env": {
"NREL_API_KEY": "your-value",
"OPENEI_API_KEY": "your-value",
"EIA_API_KEY": "your-value",
"AHJ_REGISTRY_TOKEN": "your-value"
}
}
}
}在终端中运行这条命令
claude mcp add solar-data --env NREL_API_KEY=your-value --env OPENEI_API_KEY=your-value --env EIA_API_KEY=your-value --env AHJ_REGISTRY_TOKEN=your-value -- uvx solar-data-mcp运行前请先填写空着的值。
粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"solar-data": {
"command": "uvx",
"args": [
"solar-data-mcp"
],
"env": {
"NREL_API_KEY": "your-value",
"OPENEI_API_KEY": "your-value",
"EIA_API_KEY": "your-value",
"AHJ_REGISTRY_TOKEN": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"solar-data": {
"type": "stdio",
"command": "uvx",
"args": [
"solar-data-mcp"
],
"env": {
"NREL_API_KEY": "your-value",
"OPENEI_API_KEY": "your-value",
"EIA_API_KEY": "your-value",
"AHJ_REGISTRY_TOKEN": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。
你的选择通过 Cookie 保存在这台设备上,无需账户。
这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月8日
注册名称已通过 GitHub 账户 hoodsy 验证,该账户拥有此仓库
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
它在你的电脑上运行,没有互联网端点
在你的电脑上运行,改用本地设置
它在你的电脑上运行;我们只能读取互联网端点的工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
你需要填写:NREL_API_KEY, OPENEI_API_KEY, EIA_API_KEY, AHJ_REGISTRY_TOKEN
它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。
GitHub 仓库最后更新于–,最新版本(0.1.1)于4个月前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 Python (uv)。
同一分类中有:Finance Toolkit, SolidInvoice, Korea Tax Calculator
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:↓ 每周下载量i★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
500+ transparent financial methods calculated from raw statements, not third-party endpoints.
Create and send invoices and quotes, manage clients, and track payments in SolidInvoice.
Korean tax calculation and tax-audit judgment MCP: 96 tools with statutory citations.
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
US solar data, agent-accessible.
One MCP server that brings US open solar data to Claude, ChatGPT, and anything else that speaks MCP.
Install one server — uvx solar-data-mcp — and your agent gets all 18 tools, 11 skills that teach it how to use them, and 4 ready-made report prompts, across four data domains: production modeling, economics, market data, and forecasts. Every tool returns the same envelope — data + units + source + assumptions + warnings — so the agent always knows what a number means, where it came from, and which defaults were injected on its behalf.
Behind each question the agent picks the right tools (or a skill routes it), and every number comes back with units, a source, and the assumptions made on your behalf.
DEMO_KEY to try it out — 10 requests/hour).claude_desktop_config.json (full example in examples/): {
"mcpServers": { "solar-data": { "command": "uvx", "args": ["solar-data-mcp"], "env": { "NREL_API_KEY": "YOUR_KEY_HERE", "OPENEI_API_KEY": "YOUR_KEY_HERE", "EIA_API_KEY": "YOUR_KEY_HERE" } } } }
Only NREL_API_KEY is needed to start: the server runs with any subset of keys, and a tool missing its key returns setup instructions instead of failing silently.
Verify keys and connectivity anytime:
$ uvx solar-data-mcp doctor
Claude Code
$ claude mcp add solar-data \
--env NREL_API_KEY=YOUR_KEY --env OPENEI_API_KEY=YOUR_KEY --env EIA_API_KEY=YOUR_KEY \ -- uvx solar-data-mcp
(or commit the quickstart JSON to your project's .mcp.json)
Codex CLI — ~/.codex/config.toml:
[mcp_servers.solar-data]
command = "uvx" args = ["solar-data-mcp"]
[mcp_servers.solar-data.env] NREL_API_KEY = "YOUR_KEY_HERE" OPENEI_API_KEY = "YOUR_KEY_HERE" EIA_API_KEY = "YOUR_KEY_HERE"
(or codex mcp add solar-data --env NREL_API_KEY=YOUR_KEY -- uvx solar-data-mcp; use env_vars = ["NREL_API_KEY"] to forward keys from your shell instead of hardcoding them)
OpenCode — opencode.json in your project (or ~/.config/opencode/opencode.json):
{
"$schema": "https://opencode.ai/config.json", "mcp": { "solar-data": { "type": "local", "command": ["uvx", "solar-data-mcp"], "enabled": true, "environment": { "NREL_API_KEY": "YOUR_KEY_HERE", "OPENEI_API_KEY": "YOUR_KEY_HERE", "EIA_API_KEY": "YOUR_KEY_HERE" } } } }
Hermes — ~/.hermes/config.yaml, then /reload-mcp:
mcp_servers:
solar-data: command: "uvx" args: ["solar-data-mcp"] env: NREL_API_KEY: "YOUR_KEY_HERE" OPENEI_API_KEY: "YOUR_KEY_HERE" EIA_API_KEY: "YOUR_KEY_HERE"
Claude Desktop — the quickstart JSON above.
Anything else that speaks MCP (stdio) — command uvx, args ["solar-data-mcp"], keys in the env block.
All free, and every one optional — the server starts with none set.
| Env var | Unlocks | Get one |
|---|---|---|
NREL_API_KEY | estimate_production, get_solar_resource, compare_orientations, size_system_for_target, estimate_roi, compare_forecast_to_model | https://developer.nlr.gov/signup/ |
OPENEI_API_KEY | lookup_tariffs | https://openei.org/services/api/signup/ |
EIA_API_KEY | get_electricity_prices | https://www.eia.gov/opendata/register.php |
AHJ_REGISTRY_TOKEN (optional) | identify_ahj |
Market tools (USPVDB, Tracking the Sun, SolarTRACE) and forecasts need no key. Full forecast output additionally needs the Quartz model installed into a persistent environment (see packages/solar-forecast/); without it the forecast tools return install instructions.
uvx solar-data-mcp — the install above — serves all four domains on one stdio entry. Each domain also ships as a standalone server:
| Domain | Data | Standalone server |
|---|---|---|
| Production | PVWatts v8 modeling, NSRDB irradiance | uvx --from solar-data-mcp-nrel nrel-solar-mcp |
| Economics | URDB tariffs, EIA prices, federal ITC + DSIRE | uvx --from solar-data-mcp-economics solar-economics-mcp |
| Market | SolarTRACE, Tracking the Sun, USPVDB, AHJ lookup | uvx --from solar-data-mcp-market solar-market-mcp |
| Forecast | Quartz open-source forecasts (OCF) | uvx --from solar-data-mcp-forecast solar-forecast-mcp |
Per-server config: examples/claude_desktop_config.per-server.json.
⚠️ Run the combined
solar-dataserver or the per-domain servers, not both — and
never
solar-economicsandsolar-marketside by side. Both open the same local
DuckDB bulk store, which allows only one process at a time.
Eighteen tools across four domains; parameter details live in each tool's docstring and each domain package's README.
| Domain | Ask it about | Tools |
|---|---|---|
| Production | output, sunniness, sizing, roof orientation | estimate_production, get_solar_resource, compare_orientations, size_system_for_target |
| Economics | tariffs, electricity prices, incentives, payback | lookup_tariffs, get_electricity_prices, get_incentives, estimate_roi, sync_incentives |
| Market | installed $/W, permitting times, utility-scale plants | query_installed_systems, get_permitting_timelines, find_utility_scale_projects, identify_ahj, market_snapshot, sync_* |
| Forecast | tomorrow's output, "is today unusual?" | forecast_generation, compare_forecast_to_model |
Skills are procedures shipped inside the combined server that teach an agent to chain the tools correctly — ordering, sync prerequisites, honest reporting. They're MCP resources: skill://solar/index routes by question shape, skill://solar/ is the procedure. Grouped by who's asking:
Four of these render reports with a fixed document shape and are also exposed as MCP prompts your host surfaces natively — market_brief, site_assessment, quote_review, proposal_builder (in Claude Code: /mcp__solar-data__market_brief).
Full catalog, routing design, and report templates: docs/skills.md.
$ git clone https://github.com/hoodsy/solar-data-mcp && cd solar-data-mcp
$ uv sync # install the workspace $ uv run pytest # fixture replay only, no network
Layout: packages/core (shared HTTP client, cache, envelope), one package per domain server, and packages/solar-data-mcp (the umbrella that mounts all four on one stdio entry). Smallest possible client: examples/example_client.py.
MIT. Per-source data licensing/attribution is exposed as MCP resources (source:// /license).