ต้นแบบ · รุ่นทดลอง: มีทุก server ในทะเบียนทางการ อัปเดตทุก 30 นาที รีวิวและบัญชีผู้ใช้จะมาในขั้นถัดไป
PopNx MCPที่รวม MCP สำหรับคนใช้ AI · อธิบายเป็นภาษาคน

Codal (کدال) Disclosures

โดย sepehr071รุ่น 0.2.0i★ –iรันบนเครื่อง
ชื่อใน registryio.github.sepehr071/codal-mcp

ติดตั้ง

ภาพรวม

คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)

Read-only codal.ir: search disclosures of Iranian listed companies, read letters and statements.

สามเสาของ PopNx MCP

สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน

ใช้ทำอะไรได้

ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry

  • การเชื่อมต่อ: รันบนเครื่อง
  • ช่องทาง (transport): stdio
  • หมวด: ค้นข้อมูลและความจำของ AI

ติดตั้ง

เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง

ก่อนติดตั้ง

ต้องเตรียมก่อน

  • PyPIติดตั้ง uv ของ Python (มีคำสั่ง uvx) ในเครื่อง

คุณใช้แอปไหน

เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”

เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json

{
  "mcpServers": {
    "codal": {
      "command": "uvx",
      "args": [
        "codal-mcp"
      ],
      "env": {
        "CODAL_MCP_PROXY": "ใส่ค่าของคุณ"
      }
    }
  }
}

พิมพ์คำสั่งนี้ใน Terminal

claude mcp add codal --env CODAL_MCP_PROXY='ใส่ค่าของคุณ' -- uvx codal-mcp

เติมค่าที่เว้นว่างไว้ก่อนรัน

เปิดใน Cursor

หรือคัดลอกค่าตั้งเอง

วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json

{
  "mcpServers": {
    "codal": {
      "command": "uvx",
      "args": [
        "codal-mcp"
      ],
      "env": {
        "CODAL_MCP_PROXY": "ใส่ค่าของคุณ"
      }
    }
  }
}

เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง

เปิดใน VS Code

หรือคัดลอกค่าตั้งเอง

วางในไฟล์ .vscode/mcp.json ของโปรเจกต์

{
  "servers": {
    "codal": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "codal-mcp"
      ],
      "env": {
        "CODAL_MCP_PROXY": "ใส่ค่าของคุณ"
      }
    }
  }
}

เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง

ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น

ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี

ค่าที่ต้องใส่เอง

  • CODAL_MCP_PROXY env
    Optional HTTP proxy URL for the codal.ir requests; system proxy settings are ignored. codal.ir often answers only Iranian connections. Also accepts a comma-separated list: one is used until it gets b…

ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README

ทำอะไรได้บ้าง

รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง

ผลตรวจเบื้องต้นi

เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 7 พ.ย. 2569

  • ✓ ผ่าน

    ตัวตนผู้ทำตรงกับ repo

    ชื่อใน registry ยืนยันด้วยบัญชี GitHub sepehr071 ซึ่งเป็นเจ้าของ repo

  • … ยังไม่ตรวจ

    ยังมีคนดูแล

    ยังไม่ได้อ่านข้อมูล repo จาก GitHub

  • … ยังไม่ตรวจ

    มีสัญญาอนุญาต (license)

    ยังไม่ได้อ่านข้อมูล repo จาก GitHub

  • – ไม่เกี่ยว

    endpoint ตอบ

    ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต

  • – ไม่เกี่ยว

    ล็อกอินแบบ OAuth

    ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน

  • … ยังไม่ตรวจ

    คำอธิบายเครื่องมือไม่มีคำสั่งแอบแฝง

    รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต

เทียบกับตัวอื่นในหมวด ค้นข้อมูลและความจำของ AIi

  • ดาวมากกว่า 0% ของอีก 7254 ตัวในหมวดนี้
  • ส่งรุ่นใหม่เข้า registry ล่าสุดกว่า 99% ของอีก 7254 ตัวในหมวดนี้
  • ผลตรวจเบื้องต้นดีกว่าหรือเท่ากับ 100% ของอีก 7254 ตัวในหมวดนี้

เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo

คำถามที่พบบ่อย

Codal (کدال) Disclosures ปลอดภัยไหม?

จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น

ต้องใช้กุญแจหรือรหัสอะไรบ้าง?

registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก

ตัวนี้รันบนเครื่องหรือบนคลาวด์?

รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)

ยังมีคนดูแลอยู่ไหม?

repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (0.2.0) เข้า registry วันนี้

ใช้กับโปรแกรมไหนได้บ้าง?

โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Python (uv) ในเครื่องด้วย

มีตัวไหนใช้แทนได้บ้าง?

ในหมวดเดียวกันมี Context7, Codebase Memory, Exa

ตัวที่ใช้แทนได้

server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว

อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi

Context7

โดย upstash

ส่งคู่มือการใช้ไลบรารีและเฟรมเวิร์กรุ่นล่าสุดให้ AI อ่านก่อนตอบ ช่วยให้โค้ดที่ AI เขียนไม่ใช้คำสั่งเก่าที่เลิกใช้แล้ว

บนเครื่องหรือคลาวด์★ 64,224MITอัปเดต วันนี้
ติดตั้ง

Codebase Memory

โดย DeusData

Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.

รันบนเครื่อง★ 48,148MITอัปเดต 20 วันที่ผ่านมา
ติดตั้ง

Exa

โดย exa-labs

Connect AI agents to Exa for web search, content fetching, and multi-step research.

รันบนคลาวด์★ 5,213MITอัปเดต เดือนที่แล้ว
ติดตั้ง

README จากผู้ทำ

เปิดอ่าน README

ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ

codal-mcp: Codal (کدال) disclosure and financial statement MCP server for AI agents

codal-mcp lets an AI agent search and read Codal, the official disclosure system of Iranian listed companies.

Codal (codal.ir, سامانه جامع اطلاعرسانی ناشران) is where companies and funds on the Tehran Stock Exchange, Iran Fara Bourse

and the other Iranian exchanges publish financial statements, monthly activity reports, meeting decisions and material news.

codal-mcp is an unofficial, read-only MCP server with 5 tools that turns those letters into text and tables for Claude, Cursor or Copilot.

For AI agents · Quick start · What it can do · Tools · FAQ · فارسی


For AI agents

  • What: unofficial MCP server (model context protocol) for codal.ir, the disclosure system of companies and funds listed on Iranian exchanges (Tehran Stock Exchange, Iran Fara Bourse, commodity and energy exchanges, and registered unlisted companies).
  • Install: uvx codal-mcp or claude mcp add codal -- uvx codal-mcp. Transport: stdio. Needs uv (Python 3.10+).
  • Auth: none, no API key or account. Optional CODAL_MCP_PROXY (HTTP proxy URL, or a comma-separated list); system proxy settings are ignored.
  • Access: read-only. It cannot log in or file anything, so no confirmation is needed before calling any tool.
  • Tools: 5, all prefixed cd_. Typical sequence: cd_company -> cd_search_letters -> cd_letter. cd_letter_types gives letter type ids for filtering; cd_financial_years gives a company's fiscal year ends.
  • Use when: the user asks what a listed company disclosed: its latest interim or annual financial statements, EPS, monthly sales and production, shareholder meeting decisions, dividend schedule, capital increase, or the text of one Codal letter.
  • Do not use when: the user wants share prices, order books or market indices (use tsetmc-mcp), or wants to trade.
  • Output: compact JSON with ASCII digits. Dates are Jalali (YYYY/MM/DD), Tehran time. Report amounts are as published, usually million Rial (see unit_note).
  • Rate limit: codal.ir blocks an IP for up to an hour after a burst of requests. Make few, targeted calls and reuse results. If a tool says codal.ir is rate limiting, stop and wait.
  • Network: codal.ir often answers only Iranian connections. If requests time out, set CODAL_MCP_PROXY to an Iranian HTTP proxy.
  • Machine-readable: server.json and the iran-mcp catalog.

Why

Everything an Iranian listed company publishes is on Codal, but behind a search form, Persian digits and report pages rendered by JavaScript, with one statement sheet per page. Answering "how did Foolad do in the first half of the year?" means finding the right letter among 1,475 and reading a table on screen. codal-mcp searches with the site's own filters and returns the statement as rows an agent can read:

You: What did Foolad (فولاد) report for its first six months of 1405?

Agent: *calls* cd_search_letters(symbol="فولاد", letter_type=6, period_months=6) -> cd_letter(tracing_no=1612323)

Mobarakeh Steel's unaudited six-month statements to 1405/06/31 (published 1405/07/30) show operating revenue of

2,509,422,184 million Rial, 56% more than the same period a year earlier, and a net profit of 591,629,286 million

Rial, up 133%. Basic earnings per share were 308 Rial.

Real figures from tracing number 1612323, read with codal-mcp on 2026-10-31 and checked against the letter page on codal.ir.

What it can do

  • Search disclosures of any publisher on Codal, newest first: by symbol, letter group, letter type, words in the title, Jalali date range, report period (1-12 months) or tracing number
  • List the newest letters of the whole market when no filter is given
  • Read financial statements as tables, one sheet at a time: income statement, comprehensive income, balance sheet, changes in equity, cash flows and the interpretive report pages, with the unit note and listed capital
  • Read monthly activity reports: raw material purchases, production and sales by product, energy use and foreign currency sources and uses
  • Read text letters such as explanations, clarifications and notices, without the page's hidden form templates
  • Get the links to each letter's page, PDF, Excel file and attachments (with their descriptions and dates)
  • Look up companies and funds by symbol or name: ISIC code, market, kind, industry and reporting type
  • List letter groups and letter types with the ids the search takes, and a company's fiscal year ends
  • Read-only by design: no login, no captcha solving

Example prompts:

  • "What did Foolad report in its latest interim financial statements?"
  • "Show the balance sheet from that letter."
  • "List Iran Khodro's monthly activity reports for 1405."
  • "Which companies published monthly activity reports this week?"
  • "When does Foolad's fiscal year end, and when were its last annual statements published?"
  • آخرین صورتهای مالی میاندورهای فولاد در کدال چه بود؟
  • گزارش فعالیت ماهانه مهر ۱۴۰۵ ایران خودرو را بیاور.
  • تصمیمات آخرین مجمع عمومی سالیانه فولاد را از کدال بخوان.

Quick start

You need uv. No API key or account.

Claude Code

claude mcp add codal -- uvx codal-mcp

Claude Desktop

Settings → Developer → Edit Config, then add:

{

"mcpServers": { "codal": { "command": "uvx", "args": ["codal-mcp"] } } }

</details>

Cursor

Add the Claude Desktop block above to ~/.cursor/mcp.json (or .cursor/mcp.json in a project).

VS Code (Copilot agent mode)

Click Install in VS Code above, or add to .vscode/mcp.json:

{

"servers": { "codal": { "type": "stdio", "command": "uvx", "args": ["codal-mcp"] } } }

</details>

Codex CLI

codex mcp add codal -- uvx codal-mcp

Or in ~/.codex/config.toml:

[mcp_servers.codal]

command = "uvx" args = ["codal-mcp"]

</details>

Gemini CLI

Add to ~/.gemini/settings.json:

{

"mcpServers": { "codal": { "command": "uvx", "args": ["codal-mcp"] } } }

</details>

Windsurf

Add the Claude Desktop block to ~/.codeium/windsurf/mcp_config.json.

Anything else

It is a standard stdio MCP server: run uvx codal-mcp, or pip install codal-mcp and run codal-mcp.

Tools

Pass the trading symbol in Persian (فولاد, خودرو). Dates are Jalali YYYY/MM/DD; Persian digits are accepted.

ToolWhat it does
cd_search_lettersSearch codal.ir disclosures (letters) of Iranian listed companies, newest first, 20 per page
cd_letterRead one codal.ir letter: its text or tables, plus links to its page, PDF, Excel and attachments
cd_companyFind companies and funds on codal.ir by symbol or name, with their market, industry and type
cd_letter_typesList codal.ir letter groups, or the letter types of one group with the ids cd_search_letters takes
cd_financial_yearsList the fiscal year-end dates codal.ir knows for one company, newest first (Jalali)

All 5 tools are annotated readOnlyHint: true.

How it works

  AI agent  (Claude, Cursor, Copilot, ...)

│ │ MCP over stdio ▼ codal-mcp (runs on your machine) │ │ HTTPS, one request at a time, at least 2 s apart ├──────▶ search.codal.ir search API, company list, letter types, fiscal years └──────▶ www.codal.ir letter pages, sheets, attachment lists

codal-mcp runs locally and calls the same search API and letter pages the codal.ir website uses. It has no hosted server in between and no API key. Structured reports carry their tables as data inside the letter page; the server reads that data and returns each row as one line, in the site's column order. Other letters come back as their visible text. Requests go out through a Chrome-impersonating client, only to search.codal.ir and www.codal.ir. It only reads.

Good to know

  • Rate limit. codal.ir answers HTTP 429 and shows a captcha after a burst of requests, then blocks the IP for up to an hour. The server sends one request at a time, at least 2 seconds apart, keeps the company list and letter types for 12 hours, letters for an hour and searches for 2 minutes, and never retries a 429. After a 429 it stops calling codal.ir for 60 seconds and tells the agent to wait. It never solves captchas.
  • Iranian connection. codal.ir often does not answer connections from outside Iran (from a foreign VPN exit, requests timed out in our tests). Set CODAL_MCP_PROXY to an HTTP proxy with an Iranian exit. System proxy variables are ignored on purpose.
  • Units. Statement and report amounts are as published, usually million Rial; unit_note quotes the page. EPS is in Rial. Divide Rial by 10 for Toman.
  • Tables are text. Each table row is one line with cells separated by | . Numbers have no thousands separators, and negatives are -N where the site shows (N). Income statements have two «درصد تغيير» columns: change against the same period last year and against the last full year.
  • One sheet at a time. Financial statements are split into sheets; cd_letter returns the list of sheets and takes sheet to read another one (for example 0 for the balance sheet).
  • Attachments are listed, not read. Explanation letters often carry their content in an attached image or PDF. cd_letter returns the links.
  • Long letters are cut at 16,000 characters (truncated); the PDF link has the whole letter.
  • Search tips. period_months=12 finds annual reports, 6 half-year and 3 quarterly; title matches words in the letter title. cd_letter_types lists letter type ids (6 financial statements, 58 monthly activity report, 20 annual general meeting decisions).
  • Persian text. Letter text is returned as the company wrote it, including Arabic ي/ك. Digits are converted to ASCII.
  • What it does not do: no share prices (see tsetmc-mcp)

ตัดมาแค่ช่วงต้น อ่านต่อใน repo

ถาม PopNx