Metadata-Version: 2.4
Name: ta-lib-mcp-server
Version: 0.1.1
Summary: Read-only Python MCP server for TA-Lib indicator discovery and computation.
Project-URL: Homepage, https://github.com/yalcin/ta-lib-mcp
Project-URL: Repository, https://github.com/yalcin/ta-lib-mcp
Project-URL: Issues, https://github.com/yalcin/ta-lib-mcp/issues
Author: Yalcin Acikyildiz
License-Expression: MIT
Keywords: llm,mcp,ta-lib,technical-analysis
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.13
Requires-Python: >=3.13
Requires-Dist: mcp[cli]>=1.26.0
Provides-Extra: dev
Requires-Dist: mypy>=1.15; extra == 'dev'
Requires-Dist: pre-commit>=4.0; extra == 'dev'
Requires-Dist: pytest-asyncio>=0.25; extra == 'dev'
Requires-Dist: pytest-cov>=6.0; extra == 'dev'
Requires-Dist: pytest>=8.0; extra == 'dev'
Requires-Dist: ruff>=0.11; extra == 'dev'
Provides-Extra: talib
Requires-Dist: ta-lib>=0.4.28; extra == 'talib'
Description-Content-Type: text/markdown

# ta-lib-mcp

Read-only Python MCP server for TA-Lib indicator discovery and computation.

## What It Exposes

- `talib_list_indicators`: list available indicators with group, category, and search filters.
- `talib_get_indicator_info`: inspect one indicator's inputs, outputs, parameters, and category.
- `talib_compute_indicator`: compute an indicator from numeric OHLCV-like arrays.
- `talib_list_categories`: list indicator categories (Trend, Momentum, Volume, etc.) with descriptions.
- `talib_get_version_info`: report MCP, Python, and TA-Lib versions.

## Requirements

- Python 3.13+
- `mcp[cli]`
- Optional: `TA-Lib` (`pip install "ta-lib-mcp-server[talib]"`)

If TA-Lib is missing, the server still starts and returns actionable errors for TA-Lib tools.

## Install

```bash
pip install -e ".[dev,talib]"
```

## Run

```bash
ta-lib-mcp
```

## MCP Client Configuration

### Claude Desktop

```json
{
  "mcpServers": {
    "ta-lib": {
      "command": "ta-lib-mcp",
      "env": {
        "TALIB_MCP_LOG_LEVEL": "INFO"
      }
    }
  }
}
```

### Codex

```toml
[mcp_servers.talib]
command = "ta-lib-mcp"
args = []

[mcp_servers.talib.env]
TALIB_MCP_LOG_LEVEL = "INFO"
```

### Gemini CLI

```json
{
  "mcpServers": {
    "ta-lib": {
      "command": "ta-lib-mcp",
      "env": {
        "TALIB_MCP_LOG_LEVEL": "INFO"
      }
    }
  }
}
```

## Development

```bash
pip install -e ".[dev,talib]"
pytest
ruff check src tests
ruff format src tests
mypy src
```

## Engineering Rules

- Read-only server behavior only; no stateful or exchange-connected operations.
- External MCP tool inputs are validated in `src/ta_lib_mcp/validators.py`.
- Do not use `eval` or `exec`.
