Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Unofficial, self-hosted MCP server for the documented OpenSolar API.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
OPENSOLAR_API_TOKEN, OPENSOLAR_ORG_ID, OPENSOLAR_PROFILE, OPENSOLAR_READ_ONLY, OPENSOLAR_PLAN, OPENSOLAR_TOOLSETS, OPENSOLAR_UPLOAD_ROOTค่าที่ติดป้ายความลับคือกุญแจของบัญชีคุณ อย่าส่งให้ใคร และอย่าวางในแชต
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"opensolar": {
"command": "npx",
"args": [
"-y",
"@alignco/opensolar-mcp"
],
"env": {
"OPENSOLAR_API_TOKEN": "ใส่ค่าของคุณ",
"OPENSOLAR_ORG_ID": "ใส่ค่าของคุณ",
"OPENSOLAR_PROFILE": "ใส่ค่าของคุณ",
"OPENSOLAR_READ_ONLY": "ใส่ค่าของคุณ",
"OPENSOLAR_PLAN": "ใส่ค่าของคุณ",
"OPENSOLAR_TOOLSETS": "ใส่ค่าของคุณ",
"OPENSOLAR_UPLOAD_ROOT": "ใส่ค่าของคุณ"
}
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add opensolar --env OPENSOLAR_API_TOKEN='ใส่ค่าของคุณ' --env OPENSOLAR_ORG_ID='ใส่ค่าของคุณ' --env OPENSOLAR_PROFILE='ใส่ค่าของคุณ' --env OPENSOLAR_READ_ONLY='ใส่ค่าของคุณ' --env OPENSOLAR_PLAN='ใส่ค่าของคุณ' --env OPENSOLAR_TOOLSETS='ใส่ค่าของคุณ' --env OPENSOLAR_UPLOAD_ROOT='ใส่ค่าของคุณ' -- npx -y @alignco/opensolar-mcpเติมค่าที่เว้นว่างไว้ก่อนรัน
วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"opensolar": {
"command": "npx",
"args": [
"-y",
"@alignco/opensolar-mcp"
],
"env": {
"OPENSOLAR_API_TOKEN": "ใส่ค่าของคุณ",
"OPENSOLAR_ORG_ID": "ใส่ค่าของคุณ",
"OPENSOLAR_PROFILE": "ใส่ค่าของคุณ",
"OPENSOLAR_READ_ONLY": "ใส่ค่าของคุณ",
"OPENSOLAR_PLAN": "ใส่ค่าของคุณ",
"OPENSOLAR_TOOLSETS": "ใส่ค่าของคุณ",
"OPENSOLAR_UPLOAD_ROOT": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"opensolar": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@alignco/opensolar-mcp"
],
"env": {
"OPENSOLAR_API_TOKEN": "ใส่ค่าของคุณ",
"OPENSOLAR_ORG_ID": "ใส่ค่าของคุณ",
"OPENSOLAR_PROFILE": "ใส่ค่าของคุณ",
"OPENSOLAR_READ_ONLY": "ใส่ค่าของคุณ",
"OPENSOLAR_PLAN": "ใส่ค่าของคุณ",
"OPENSOLAR_TOOLSETS": "ใส่ค่าของคุณ",
"OPENSOLAR_UPLOAD_ROOT": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
OPENSOLAR_PROFILE envOPENSOLAR_READ_ONLY envOPENSOLAR_PLAN envOPENSOLAR_TOOLSETS envOPENSOLAR_UPLOAD_ROOT envค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 7 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub Align-Software-Company ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
ต้องใส่ค่าเหล่านี้: OPENSOLAR_API_TOKEN, OPENSOLAR_ORG_ID
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.1.3) เข้า registry 39 วันที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Node.js, Docker ในเครื่องด้วย
ในหมวดเดียวกันมี Spec Driven Development, Remote Desktop Commander, Zendesk
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Zendesk MCP Pack — tickets, users, organizations via OAuth.
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
Give Claude, Cursor, VS Code, and any other MCP client safe, structured access to your OpenSolar organisation.
Unofficial · Self-hosted · Bring your own OpenSolar API token
Quick start · Connect a client · Tools · Configuration · Remote deployment · Security · Troubleshooting
OpenSolar MCP is a Model Context Protocol server for the documented OpenSolar API. It runs on your machine or your infrastructure, uses your own OpenSolar credentials, and gives AI agents a curated set of tools for projects, contacts, systems, files, commercial settings, and Teams sharing.
flowchart LR
client["MCP client Claude · Cursor · VS Code · Codex"] server["OpenSolar MCP runs where you run it"] api[("OpenSolar API api.opensolar.com")] client -- "stdio or Streamable HTTP" --> server server -- "HTTPS with your bearer token" --> api
[!IMPORTANT]
This project is not affiliated with, endorsed by, or maintained by OpenSolar Pty Ltd. It calls only the public, documented OpenSolar API and does not operate a shared or hosted OpenSolar service.
unique, ambiguous, or incomplete, and agents are told not to guess. Writes are never retried automatically, and read-only mode removes every mutation.| Ask your agent… | What happens |
|---|---|
| "Find the Harbour Street project and summarise where it's at." | search_projects finds the project, then get_project_snapshot reads its workflow stage, systems, and files. |
| "Compare the system options on that project." | compare_project_systems lines up size, annual output, price, price per watt, and hardware without ranking them. |
| "Move it to Installing." | update_project_stage resolves the stage name on the project's workflow and refuses ambiguous or archived matches. |
| "What's the payback and NPV on the proposal?" | get_proposal_data returns payback year, NPV, IRR, and ROI. Requires Raw Data API Access. |
| "Add Jordan Lee as a contact, unless they already exist." | search_contacts checks for existing matches first, then create_contact adds the person. |
| "Generate the proposal PDF for that project." | generate_project_document has OpenSolar save the document as a private file and returns the file ID. |
| "Can we share this project with our installer partner?" | preflight_project_share checks the connection and shared entities without changing anything. |
Requirements
get_proposal_data or get_project_design[!TIP]
Standard OpenSolar user tokens expire after seven days. For a long-running setup, create a dedicated OpenSolar user for API work and make it a machine user, whose token does not expire. This server never changes that setting for you.
1. See the tools you'll get (no credentials needed):
npx -y @alignco/opensolar-mcp --list-tools
2. Check your configuration and token:
OPENSOLAR_API_TOKEN=your_token OPENSOLAR_ORG_ID=12345 \
npx -y @alignco/opensolar-mcp --check
--check makes one read of your organisation. Add --no-probe to validate the configuration without contacting OpenSolar.
3. Add it to your MCP client using one of the options below.
Every client needs the same two settings: OPENSOLAR_API_TOKEN and OPENSOLAR_ORG_ID. Replace your_token and 12345 below with your own values.
Claude Code
claude mcp add opensolar \
-e OPENSOLAR_API_TOKEN=your_token \ -e OPENSOLAR_ORG_ID=12345 \ -- npx -y @alignco/opensolar-mcp
Add --scope user to make it available in every project.
Claude Desktop
Open Settings → Developer → Edit Config and add:
{
"mcpServers": { "opensolar": { "command": "npx", "args": ["-y", "@alignco/opensolar-mcp"], "env": { "OPENSOLAR_API_TOKEN": "your_token", "OPENSOLAR_ORG_ID": "12345" } } } }
Restart Claude Desktop after saving.
Cursor
Use the Add to Cursor button above, or add this to ~/.cursor/mcp.json (all projects) or .cursor/mcp.json (one project):
{
"mcpServers": { "opensolar": { "command": "npx", "args": ["-y", "@alignco/opensolar-mcp"], "env": { "OPENSOLAR_API_TOKEN": "your_token", "OPENSOLAR_ORG_ID": "12345" } } } }
VS Code
Use the Install in VS Code button above, or add this to .vscode/mcp.json. VS Code prompts for the token and stores it securely:
{
"inputs": [ { "type": "promptString", "id": "opensolar_api_token", "description": "OpenSolar API token", "password": true }, { "type": "promptString", "id": "opensolar_org_id", "description": "OpenSolar organisation ID" } ], "servers": { "opensolar": { "type": "stdio", "command": "npx", "args": ["-y", "@alignco/opensolar-mcp"], "env": { "OPENSOLAR_API_TOKEN": "${input:opensolar_api_token}", "OPENSOLAR_ORG_ID": "${input:opensolar_org_id}" } } } }
Windsurf
Add this to ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": { "opensolar": { "command": "npx", "args": ["-y", "@alignco/opensolar-mcp"], "env": { "OPENSOLAR_API_TOKEN": "your_token", "OPENSOLAR_ORG_ID": "12345" } } } }
OpenAI Codex
Add this to ~/.codex/config.toml:
[mcp_servers.opensolar]
command = "npx" args = ["-y", "@alignco/opensolar-mcp"] env = { OPENSOLAR_API_TOKEN = "your_token", OPENSOLAR_ORG_ID = "12345" }
Gemini CLI
Add this to ~/.gemini/settings.json:
{
"mcpServers": { "opensolar": { "command": "npx", "args": ["-y", "@alignco/opensolar-mcp"], "env": { "OPENSOLAR_API_TOKEN": "your_token", "OPENSOLAR_ORG_ID": "12345" } } } }
Any other MCP client
Run npx -y @alignco/opensolar-mcp as a stdio server with OPENSOLAR_API_TOKEN and OPENSOLAR_ORG_ID in its environment. For a client that connects over HTTP, see Remote deployment.
To install the command once instead of through npx:
npm install -g @alignco/opensolar-mcp
opensolar-mcp --version
[!TIP]
Start with
OPENSOLAR_READ_ONLY=1in theenvblock while you get comfortable. It removes every tool that can change OpenSolar data.
A profile is a curated operating surface. Toolsets are functional areas you can select directly. Read-only mode and the access-plan filter apply on top of either.
| Surface | Tools | Use it for |
|---|---|---|
agent (default) | 31 | Everyday project, contact, system, file, and sharing work |
agent + OPENSOLAR_READ_ONLY=1 | 22 | Research, reporting, and trying things out safely |
agent + OPENSOLAR_PLAN=api_access | 29 | Organisations without Raw Data API Access |
full | 75 | Administration: component catalogs, workflows, webhooks, deletes, and Teams setup |
--list-tools always prints the exact surface your settings produce:
npx -y @alignco/opensolar-mcp --list-tools
OPENSOLAR_PROFILE=full npx -y @alignco/opensolar-mcp --list-tools OPENSOLAR_TOOLSETS=webhooks npx -y @alignco/opensolar-mcp --list-tools
agent tools✏️ marks tools that change OpenSolar data. 🔒 marks tools that need Raw Data API Access.
| Area | Tools |
|---|---|
| Projects | search_projects · list_projects · get_project · get_project_snapshot · create_project ✏️ · update_project ✏️ · update_project_stage ✏️ · update_project_usage ✏️ |
| Contacts | search_contacts · list_contacts · get_contact · create_contact ✏️ · update_contact ✏️ |
| Organisation | get_org · list_roles |
| Systems | compare_project_systems · get_system_details |
| Commercial | list_payment_options · list_pricing_schemes · list_costings |
| Files & documents | list_private_files · get_private_file · create_private_file ✏️ · `
ตัดมาแค่ช่วงต้น อ่านต่อใน repo