Skip to main content
Glama
narumiruna

Taiwan Legislative Yuan MCP Server

ly-mcp

PyPI version Python CI Docker License: MIT

一个用于台湾立法院 API v2 的模型上下文协议 (MCP) 服务器,提供对议案、委员会、公报、会议记录及相关文档的全面访问。

功能

此 MCP 服务器在 9 个类别中提供了 36 个工具:

统计 (Statistics)

  • get_stat: 获取立法院 API 统计数据和概览信息

议案 (Bills)

  • list_bills: 列出议案,支持按届期、会期、类别、提案人及其他条件进行筛选

  • get_bill: 获取特定议案的全面信息(返回完整 JSON)

  • get_bill_related_bills: 查询相关议案及其关联

  • get_bill_meets: 访问各类会议中的议案审议记录

  • get_bill_doc_html: 获取特定议案的 HTML 文档内容

委员会 (Committees)

  • list_committees: 列出立法院委员会,支持可选筛选

  • get_committee: 获取特定委员会的详细信息

  • get_committee_meets: 访问委员会会议记录和议事录

公报 (Gazettes)

  • list_gazettes: 列出立法院公报,支持按卷号和公报 ID 进行筛选

  • get_gazette: 获取特定公报的详细信息

  • get_gazette_agendas: 获取特定公报中的议程/内容

  • list_gazette_agendas: 列出所有公报议程,支持按届期、会议日期等进行筛选

  • get_gazette_agenda: 获取特定公报议程项目的详细信息

质询 (Interpellations)

  • list_interpellations: 列出质询,支持按委员、届期、会期和会议代码进行筛选

  • get_interpellation: 获取特定质询的详细信息

  • get_legislator_interpellations: 获取特定立法委员作为质询人的质询记录

影音 (IVODs)

  • list_ivods: 列出 IVOD(网络电视)录影,支持按届期、会期、委员会、委员和视频类型进行筛选

  • get_ivod: 获取特定 IVOD 录影的详细信息,包括视频 URL、逐字稿和公报内容

  • get_meet_ivods: 获取与特定会议相关的 IVOD 录影

法律 (Laws)

  • list_laws: 列出法律,支持按法律编号、类别(母法/子法)、母法编号、状态和主管机关进行筛选

  • get_law: 获取特定法律的全面信息,包括基础数据、条文和版本信息

  • get_law_progress: 获取特定法律的未决进度列表

  • get_law_bills: 获取与特定法律相关的议案,支持可选筛选

  • get_law_versions: 获取特定法律的历史版本记录,包括变更、提案人和进度

  • list_law_contents: 列出法律条文/内容,支持按法律编号、版本 ID、条号、当前版本状态和版本追踪进行筛选

  • get_law_content: 使用法律内容 ID 获取特定法律条文/内容的详细信息

会议 (Meets)

  • list_meets: 列出立法院会议,支持按届期、会期、会议类型、出席者、日期、委员会代码和会议 ID 进行筛选

  • get_meet: 使用会议 ID/代码获取特定会议的详细信息

  • get_meet_ivods: 获取与特定会议相关的 IVOD(网络电视)录影,支持可选筛选

  • get_meet_bills: 获取特定会议中讨论的议案,支持按议案条件进行筛选

  • get_meet_interpellations: 获取特定会议中发生的质询,支持可选筛选

立法委员 (Legislators)

  • list_legislators: 列出立法委员,支持按届期、党籍、选区名称、委员 ID 和姓名进行筛选

  • get_legislator: 按届期和姓名获取特定立法委员的详细信息

  • get_legislator_propose_bills: 获取特定立法委员提出的议案,支持按议案条件进行筛选

  • get_legislator_cosign_bills: 获取特定立法委员连署的议案,支持按议案条件进行筛选

  • get_legislator_meets: 获取特定立法委员出席的会议,支持按会议条件进行筛选

  • get_legislator_interpellations: 获取特定立法委员进行的质询,支持可选筛选

API 来源

此 MCP 服务器使用 立法院 API v2 作为数据源,提供有关台湾立法院议案和议事程序的信息。

安装与使用

快速开始

使用 uvx 安装并运行服务器:

uvx lymcp@latest

MCP 客户端配置

将服务器添加到您的 MCP 客户端配置中(例如 Claude Desktop):

PyPI

{
  "mcpServers": {
    "lymcp": {
      "command": "uvx",
      "args": ["lymcp@latest"]
    }
  }
}

GitHub

{
  "mcpServers": {
    "lymcp": {
      "command": "uvx",
      "args": [
        "--from",
        "git+https://github.com/narumiruna/ly-mcp",
        "lymcp"
      ]
    }
  }
}

本地开发

{
  "mcpServers": {
    "lymcp": {
      "command": "uv",
      "args": [
        "run",
        "--directory",
        "/path/to/ly-mcp",
        "lymcp"
      ]
    }
  }
}

Docker

{
  "mcpServers": {
    "lymcp": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "narumi/ly-mcp:latest"
      ]
    }
  }
}

示例提示词

连接到 MCP 服务器后,您可以向 LLM 询问如下问题:

  • "列出第11届的所有法律提案"

  • "查询立法委员王美花的提案纪录"

  • "最近一次院会讨论了哪些议案?"

  • "查询劳动基准法的修法历程"

  • "第11届第1会期有哪些委员会会议?"

开发

前置要求

  • Python 3.12+

  • uv 包管理器

  • just 命令运行器

设置

git clone https://github.com/narumiruna/ly-mcp
cd ly-mcp
uv sync

运行 MCP Inspector

just dev

运行测试

# Run full test suite with coverage
just test

# Run tests with verbose output
uv run pytest -v -s

代码质量

# Run linter
just lint

# Run type checker
just type

许可证

MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/narumiruna/ly-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server