tradingview-mcp 1.0.0__tar.gz → 1.1.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {tradingview_mcp-1.0.0 → tradingview_mcp-1.1.0}/PKG-INFO +131 -5
- {tradingview_mcp-1.0.0 → tradingview_mcp-1.1.0}/README.md +122 -3
- {tradingview_mcp-1.0.0 → tradingview_mcp-1.1.0}/pyproject.toml +19 -3
- tradingview_mcp-1.1.0/src/tradingview_mcp/data/__init__.py +9 -0
- tradingview_mcp-1.1.0/src/tradingview_mcp/data/column_display_names.json +827 -0
- tradingview_mcp-1.1.0/src/tradingview_mcp/data/extracted/__init__.py +1 -0
- tradingview_mcp-1.1.0/src/tradingview_mcp/data/extracted/ai_quick_reference.json +212 -0
- tradingview_mcp-1.1.0/src/tradingview_mcp/data/extracted/common_fields.json +3627 -0
- tradingview_mcp-1.1.0/src/tradingview_mcp/data/extracted/fields_by_market.json +23299 -0
- tradingview_mcp-1.1.0/src/tradingview_mcp/data/extracted/screener_code_examples.json +9 -0
- tradingview_mcp-1.1.0/src/tradingview_mcp/data/markets.json +83 -0
- tradingview_mcp-1.1.0/src/tradingview_mcp/data/metainfo/bond.json +17406 -0
- tradingview_mcp-1.1.0/src/tradingview_mcp/data/metainfo/bonds.json +1303 -0
- tradingview_mcp-1.1.0/src/tradingview_mcp/data/metainfo/cfd.json +21603 -0
- tradingview_mcp-1.1.0/src/tradingview_mcp/data/metainfo/coin.json +21111 -0
- tradingview_mcp-1.1.0/src/tradingview_mcp/data/metainfo/crypto.json +23078 -0
- tradingview_mcp-1.1.0/src/tradingview_mcp/data/metainfo/economics2.json +1026 -0
- tradingview_mcp-1.1.0/src/tradingview_mcp/data/metainfo/forex.json +21003 -0
- tradingview_mcp-1.1.0/src/tradingview_mcp/data/metainfo/futures.json +2972 -0
- tradingview_mcp-1.1.0/src/tradingview_mcp/data/metainfo/ireland.json +22517 -0
- tradingview_mcp-1.1.0/src/tradingview_mcp/data/metainfo/options.json +499 -0
- tradingview_mcp-1.1.0/src/tradingview_mcp/data/metainfo/stocks.json +29808 -0
- tradingview_mcp-1.1.0/src/tradingview_mcp/data/screeners/main_screeners.json +540 -0
- tradingview_mcp-1.1.0/src/tradingview_mcp/data/screeners/markets.json +70 -0
- tradingview_mcp-1.1.0/src/tradingview_mcp/data/screeners/stocks.json +416 -0
- tradingview_mcp-1.1.0/src/tradingview_mcp/data/screeners/stocks_failed.json +36081 -0
- tradingview_mcp-1.1.0/src/tradingview_mcp/docs_data.py +297 -0
- {tradingview_mcp-1.0.0 → tradingview_mcp-1.1.0}/src/tradingview_mcp/server.py +471 -1
- {tradingview_mcp-1.0.0 → tradingview_mcp-1.1.0}/.gitignore +0 -0
- {tradingview_mcp-1.0.0 → tradingview_mcp-1.1.0}/LICENSE +0 -0
- {tradingview_mcp-1.0.0 → tradingview_mcp-1.1.0}/src/tradingview_mcp/__init__.py +0 -0
- {tradingview_mcp-1.0.0 → tradingview_mcp-1.1.0}/src/tradingview_mcp/column.py +0 -0
- {tradingview_mcp-1.0.0 → tradingview_mcp-1.1.0}/src/tradingview_mcp/constants.py +0 -0
- {tradingview_mcp-1.0.0 → tradingview_mcp-1.1.0}/src/tradingview_mcp/models.py +0 -0
- {tradingview_mcp-1.0.0 → tradingview_mcp-1.1.0}/src/tradingview_mcp/query.py +0 -0
- {tradingview_mcp-1.0.0 → tradingview_mcp-1.1.0}/src/tradingview_mcp/scanner.py +0 -0
- {tradingview_mcp-1.0.0 → tradingview_mcp-1.1.0}/src/tradingview_mcp/utils.py +0 -0
|
@@ -1,11 +1,16 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: tradingview-mcp
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.1.0
|
|
4
4
|
Summary: A comprehensive MCP server for TradingView market screening with integrated screener functionality
|
|
5
|
+
Project-URL: Homepage, https://github.com/yourusername/tradingview-mcp
|
|
6
|
+
Project-URL: Documentation, https://github.com/yourusername/tradingview-mcp#readme
|
|
7
|
+
Project-URL: Repository, https://github.com/yourusername/tradingview-mcp
|
|
8
|
+
Project-URL: Issues, https://github.com/yourusername/tradingview-mcp/issues
|
|
9
|
+
Project-URL: Changelog, https://github.com/yourusername/tradingview-mcp/blob/main/CHANGELOG.md
|
|
5
10
|
Author: TradingView MCP Team
|
|
6
11
|
License: MIT
|
|
7
12
|
License-File: LICENSE
|
|
8
|
-
Keywords: crypto,mcp,screener,stocks,technical-analysis,trading,tradingview
|
|
13
|
+
Keywords: crypto,mcp,model-context-protocol,screener,stocks,technical-analysis,trading,tradingview
|
|
9
14
|
Classifier: Development Status :: 4 - Beta
|
|
10
15
|
Classifier: Intended Audience :: Developers
|
|
11
16
|
Classifier: Intended Audience :: Financial and Insurance Industry
|
|
@@ -15,6 +20,7 @@ Classifier: Programming Language :: Python :: 3.10
|
|
|
15
20
|
Classifier: Programming Language :: Python :: 3.11
|
|
16
21
|
Classifier: Programming Language :: Python :: 3.12
|
|
17
22
|
Classifier: Topic :: Office/Business :: Financial :: Investment
|
|
23
|
+
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
18
24
|
Requires-Python: >=3.10
|
|
19
25
|
Requires-Dist: httpx>=0.24.0
|
|
20
26
|
Requires-Dist: mcp>=1.0.0
|
|
@@ -23,14 +29,35 @@ Requires-Dist: requests>=2.28.0
|
|
|
23
29
|
Provides-Extra: dev
|
|
24
30
|
Requires-Dist: pyright>=1.1.0; extra == 'dev'
|
|
25
31
|
Requires-Dist: pytest-asyncio>=0.21.0; extra == 'dev'
|
|
32
|
+
Requires-Dist: pytest-cov>=4.0.0; extra == 'dev'
|
|
26
33
|
Requires-Dist: pytest>=7.0.0; extra == 'dev'
|
|
27
34
|
Requires-Dist: ruff>=0.1.0; extra == 'dev'
|
|
28
35
|
Description-Content-Type: text/markdown
|
|
29
36
|
|
|
30
37
|
# TradingView MCP Server
|
|
31
38
|
|
|
39
|
+
[](https://badge.fury.io/py/tradingview-mcp)
|
|
40
|
+
[](https://pypi.org/project/tradingview-mcp/)
|
|
41
|
+
[](https://opensource.org/licenses/MIT)
|
|
42
|
+
[](https://github.com/yourusername/tradingview-mcp/actions)
|
|
43
|
+
|
|
32
44
|
A comprehensive Model Context Protocol (MCP) server for TradingView market screening with fully integrated screener functionality. This server provides powerful tools for cryptocurrency and stock market analysis directly through the MCP interface.
|
|
33
45
|
|
|
46
|
+
## Quick Start (No Installation Required)
|
|
47
|
+
|
|
48
|
+
Use `uvx` to run directly without installing:
|
|
49
|
+
|
|
50
|
+
```json
|
|
51
|
+
{
|
|
52
|
+
"mcpServers": {
|
|
53
|
+
"tradingview": {
|
|
54
|
+
"command": "uvx",
|
|
55
|
+
"args": ["tradingview-mcp"]
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
```
|
|
60
|
+
|
|
34
61
|
## Features
|
|
35
62
|
|
|
36
63
|
### Core Screener Functionality
|
|
@@ -38,8 +65,11 @@ A comprehensive Model Context Protocol (MCP) server for TradingView market scree
|
|
|
38
65
|
- **Multi-Market Support**: 76+ markets including crypto, stocks, forex, futures, and bonds
|
|
39
66
|
- **SQL-like Query Interface**: Build complex queries with filtering, sorting, and pagination
|
|
40
67
|
- **250+ Technical Indicators**: Access a comprehensive set of technical analysis columns
|
|
68
|
+
- **AI-Friendly Design**: Token-saving output limits, paginated responses, and quick reference tools
|
|
41
69
|
|
|
42
70
|
### MCP Tools
|
|
71
|
+
|
|
72
|
+
#### Screening Tools
|
|
43
73
|
- `screen_market`: Execute custom market screening queries
|
|
44
74
|
- `get_top_gainers`: Find top gaining assets in any market
|
|
45
75
|
- `get_top_losers`: Find top losing assets in any market
|
|
@@ -53,15 +83,43 @@ A comprehensive Model Context Protocol (MCP) server for TradingView market scree
|
|
|
53
83
|
- `get_all_symbols`: Retrieve all symbols for a market
|
|
54
84
|
- `advanced_query`: Execute advanced queries with AND/OR logic
|
|
55
85
|
|
|
86
|
+
#### AI-Friendly Reference Tools
|
|
87
|
+
- `ai_get_reference`: **Start here!** Get quick reference guide with markets, columns, filters
|
|
88
|
+
- `search_available_fields`: Search for fields/columns by name or description
|
|
89
|
+
- `get_field_info`: Get display name and type for a specific field
|
|
90
|
+
- `get_code_example`: Get Python code examples for screener types
|
|
91
|
+
- `list_fields_for_market`: List available fields with pagination
|
|
92
|
+
- `get_common_fields_summary`: Get commonly used fields by category
|
|
93
|
+
- `get_screener_preset`: Retrieve predefined screener presets
|
|
94
|
+
- `get_market_metainfo`: Field definitions and allowed values per market
|
|
95
|
+
|
|
56
96
|
### MCP Resources
|
|
57
97
|
- `markets://list`: List all available markets
|
|
58
98
|
- `columns://list`: List all available technical indicator columns
|
|
59
99
|
- `exchanges://crypto`: List cryptocurrency exchanges
|
|
60
100
|
- `presets://list`: List predefined screening presets
|
|
101
|
+
- `docs://params`: Screener params format and schema
|
|
102
|
+
- `docs://screeners`: Predefined screener presets overview
|
|
103
|
+
- `docs://fields`: Field display names (paginated)
|
|
104
|
+
- `docs://markets`: Markets metadata
|
|
105
|
+
- `docs://ai-reference`: AI quick reference guide
|
|
106
|
+
- `docs://code-examples`: Python code examples for screeners
|
|
61
107
|
|
|
62
108
|
## Installation
|
|
63
109
|
|
|
64
|
-
### Using
|
|
110
|
+
### Using uvx (Recommended - No Install)
|
|
111
|
+
```json
|
|
112
|
+
{
|
|
113
|
+
"mcpServers": {
|
|
114
|
+
"tradingview": {
|
|
115
|
+
"command": "uvx",
|
|
116
|
+
"args": ["tradingview-mcp"]
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
### Using uv
|
|
65
123
|
```bash
|
|
66
124
|
uv add tradingview-mcp
|
|
67
125
|
```
|
|
@@ -94,8 +152,19 @@ tradingview-mcp streamable-http --host 127.0.0.1 --port 8000
|
|
|
94
152
|
|
|
95
153
|
### MCP Client Configuration
|
|
96
154
|
|
|
97
|
-
|
|
155
|
+
#### Using uvx (Recommended)
|
|
156
|
+
```json
|
|
157
|
+
{
|
|
158
|
+
"mcpServers": {
|
|
159
|
+
"tradingview": {
|
|
160
|
+
"command": "uvx",
|
|
161
|
+
"args": ["tradingview-mcp"]
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
```
|
|
98
166
|
|
|
167
|
+
#### Using installed package
|
|
99
168
|
```json
|
|
100
169
|
{
|
|
101
170
|
"mcpServers": {
|
|
@@ -107,6 +176,13 @@ Add to your MCP client configuration:
|
|
|
107
176
|
}
|
|
108
177
|
```
|
|
109
178
|
|
|
179
|
+
### For AI Agents: Getting Started
|
|
180
|
+
|
|
181
|
+
1. **First, call `ai_get_reference()`** to understand available markets, columns, and filters
|
|
182
|
+
2. Use `search_available_fields("your query")` to find specific columns
|
|
183
|
+
3. Use `get_code_example("Stocks (legacy)")` to see query patterns
|
|
184
|
+
4. Build queries using `screen_market()` or `advanced_query()`
|
|
185
|
+
|
|
110
186
|
### Example Queries
|
|
111
187
|
|
|
112
188
|
#### Basic Market Screening
|
|
@@ -161,9 +237,16 @@ See `columns://list` resource for the complete list.
|
|
|
161
237
|
|
|
162
238
|
## Development
|
|
163
239
|
|
|
240
|
+
### Setup Development Environment
|
|
241
|
+
```bash
|
|
242
|
+
git clone https://github.com/yourusername/tradingview-mcp.git
|
|
243
|
+
cd tradingview-mcp
|
|
244
|
+
uv sync --all-extras
|
|
245
|
+
```
|
|
246
|
+
|
|
164
247
|
### Running Tests
|
|
165
248
|
```bash
|
|
166
|
-
uv run pytest tests/
|
|
249
|
+
uv run pytest tests/ -v
|
|
167
250
|
```
|
|
168
251
|
|
|
169
252
|
### Code Formatting
|
|
@@ -177,6 +260,49 @@ uv run ruff check . --fix
|
|
|
177
260
|
uv run pyright
|
|
178
261
|
```
|
|
179
262
|
|
|
263
|
+
### Debug Mode
|
|
264
|
+
|
|
265
|
+
Enable structured debug responses from tools by setting:
|
|
266
|
+
|
|
267
|
+
```bash
|
|
268
|
+
export TRADINGVIEW_MCP_DEBUG=1
|
|
269
|
+
```
|
|
270
|
+
|
|
271
|
+
### Docs Data Path (Optional)
|
|
272
|
+
|
|
273
|
+
If you want the full TradingView Screener docs datasets (e.g., large metainfo files),
|
|
274
|
+
point the loader to your docs data directory:
|
|
275
|
+
|
|
276
|
+
```bash
|
|
277
|
+
export TRADINGVIEW_SCREENER_DOCS_DATA=/path/to/TradingView-Screener-docs/data
|
|
278
|
+
```
|
|
279
|
+
|
|
280
|
+
## Publishing & Releases
|
|
281
|
+
|
|
282
|
+
This project uses GitHub Actions for automated publishing to PyPI:
|
|
283
|
+
|
|
284
|
+
### Automatic Updates
|
|
285
|
+
- **Weekly auto-update**: Every Monday, the workflow checks for dependency updates, runs tests, and publishes a new version if there are changes
|
|
286
|
+
- **Manual trigger**: You can manually trigger updates from the GitHub Actions tab
|
|
287
|
+
|
|
288
|
+
### Manual Release
|
|
289
|
+
To create a manual release:
|
|
290
|
+
|
|
291
|
+
1. Update version in `pyproject.toml`
|
|
292
|
+
2. Commit and create a tag:
|
|
293
|
+
```bash
|
|
294
|
+
git commit -am "Bump version to x.y.z"
|
|
295
|
+
git tag vx.y.z
|
|
296
|
+
git push origin main --tags
|
|
297
|
+
```
|
|
298
|
+
3. GitHub Actions will automatically build and publish to PyPI
|
|
299
|
+
|
|
300
|
+
See [CONTRIBUTING.md](CONTRIBUTING.md) for detailed release instructions.
|
|
301
|
+
|
|
302
|
+
## Contributing
|
|
303
|
+
|
|
304
|
+
Contributions are welcome! Please see [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines.
|
|
305
|
+
|
|
180
306
|
## License
|
|
181
307
|
|
|
182
308
|
MIT License - see [LICENSE](LICENSE) for details.
|
|
@@ -1,7 +1,27 @@
|
|
|
1
1
|
# TradingView MCP Server
|
|
2
2
|
|
|
3
|
+
[](https://badge.fury.io/py/tradingview-mcp)
|
|
4
|
+
[](https://pypi.org/project/tradingview-mcp/)
|
|
5
|
+
[](https://opensource.org/licenses/MIT)
|
|
6
|
+
[](https://github.com/yourusername/tradingview-mcp/actions)
|
|
7
|
+
|
|
3
8
|
A comprehensive Model Context Protocol (MCP) server for TradingView market screening with fully integrated screener functionality. This server provides powerful tools for cryptocurrency and stock market analysis directly through the MCP interface.
|
|
4
9
|
|
|
10
|
+
## Quick Start (No Installation Required)
|
|
11
|
+
|
|
12
|
+
Use `uvx` to run directly without installing:
|
|
13
|
+
|
|
14
|
+
```json
|
|
15
|
+
{
|
|
16
|
+
"mcpServers": {
|
|
17
|
+
"tradingview": {
|
|
18
|
+
"command": "uvx",
|
|
19
|
+
"args": ["tradingview-mcp"]
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
```
|
|
24
|
+
|
|
5
25
|
## Features
|
|
6
26
|
|
|
7
27
|
### Core Screener Functionality
|
|
@@ -9,8 +29,11 @@ A comprehensive Model Context Protocol (MCP) server for TradingView market scree
|
|
|
9
29
|
- **Multi-Market Support**: 76+ markets including crypto, stocks, forex, futures, and bonds
|
|
10
30
|
- **SQL-like Query Interface**: Build complex queries with filtering, sorting, and pagination
|
|
11
31
|
- **250+ Technical Indicators**: Access a comprehensive set of technical analysis columns
|
|
32
|
+
- **AI-Friendly Design**: Token-saving output limits, paginated responses, and quick reference tools
|
|
12
33
|
|
|
13
34
|
### MCP Tools
|
|
35
|
+
|
|
36
|
+
#### Screening Tools
|
|
14
37
|
- `screen_market`: Execute custom market screening queries
|
|
15
38
|
- `get_top_gainers`: Find top gaining assets in any market
|
|
16
39
|
- `get_top_losers`: Find top losing assets in any market
|
|
@@ -24,15 +47,43 @@ A comprehensive Model Context Protocol (MCP) server for TradingView market scree
|
|
|
24
47
|
- `get_all_symbols`: Retrieve all symbols for a market
|
|
25
48
|
- `advanced_query`: Execute advanced queries with AND/OR logic
|
|
26
49
|
|
|
50
|
+
#### AI-Friendly Reference Tools
|
|
51
|
+
- `ai_get_reference`: **Start here!** Get quick reference guide with markets, columns, filters
|
|
52
|
+
- `search_available_fields`: Search for fields/columns by name or description
|
|
53
|
+
- `get_field_info`: Get display name and type for a specific field
|
|
54
|
+
- `get_code_example`: Get Python code examples for screener types
|
|
55
|
+
- `list_fields_for_market`: List available fields with pagination
|
|
56
|
+
- `get_common_fields_summary`: Get commonly used fields by category
|
|
57
|
+
- `get_screener_preset`: Retrieve predefined screener presets
|
|
58
|
+
- `get_market_metainfo`: Field definitions and allowed values per market
|
|
59
|
+
|
|
27
60
|
### MCP Resources
|
|
28
61
|
- `markets://list`: List all available markets
|
|
29
62
|
- `columns://list`: List all available technical indicator columns
|
|
30
63
|
- `exchanges://crypto`: List cryptocurrency exchanges
|
|
31
64
|
- `presets://list`: List predefined screening presets
|
|
65
|
+
- `docs://params`: Screener params format and schema
|
|
66
|
+
- `docs://screeners`: Predefined screener presets overview
|
|
67
|
+
- `docs://fields`: Field display names (paginated)
|
|
68
|
+
- `docs://markets`: Markets metadata
|
|
69
|
+
- `docs://ai-reference`: AI quick reference guide
|
|
70
|
+
- `docs://code-examples`: Python code examples for screeners
|
|
32
71
|
|
|
33
72
|
## Installation
|
|
34
73
|
|
|
35
|
-
### Using
|
|
74
|
+
### Using uvx (Recommended - No Install)
|
|
75
|
+
```json
|
|
76
|
+
{
|
|
77
|
+
"mcpServers": {
|
|
78
|
+
"tradingview": {
|
|
79
|
+
"command": "uvx",
|
|
80
|
+
"args": ["tradingview-mcp"]
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
### Using uv
|
|
36
87
|
```bash
|
|
37
88
|
uv add tradingview-mcp
|
|
38
89
|
```
|
|
@@ -65,8 +116,19 @@ tradingview-mcp streamable-http --host 127.0.0.1 --port 8000
|
|
|
65
116
|
|
|
66
117
|
### MCP Client Configuration
|
|
67
118
|
|
|
68
|
-
|
|
119
|
+
#### Using uvx (Recommended)
|
|
120
|
+
```json
|
|
121
|
+
{
|
|
122
|
+
"mcpServers": {
|
|
123
|
+
"tradingview": {
|
|
124
|
+
"command": "uvx",
|
|
125
|
+
"args": ["tradingview-mcp"]
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
```
|
|
69
130
|
|
|
131
|
+
#### Using installed package
|
|
70
132
|
```json
|
|
71
133
|
{
|
|
72
134
|
"mcpServers": {
|
|
@@ -78,6 +140,13 @@ Add to your MCP client configuration:
|
|
|
78
140
|
}
|
|
79
141
|
```
|
|
80
142
|
|
|
143
|
+
### For AI Agents: Getting Started
|
|
144
|
+
|
|
145
|
+
1. **First, call `ai_get_reference()`** to understand available markets, columns, and filters
|
|
146
|
+
2. Use `search_available_fields("your query")` to find specific columns
|
|
147
|
+
3. Use `get_code_example("Stocks (legacy)")` to see query patterns
|
|
148
|
+
4. Build queries using `screen_market()` or `advanced_query()`
|
|
149
|
+
|
|
81
150
|
### Example Queries
|
|
82
151
|
|
|
83
152
|
#### Basic Market Screening
|
|
@@ -132,9 +201,16 @@ See `columns://list` resource for the complete list.
|
|
|
132
201
|
|
|
133
202
|
## Development
|
|
134
203
|
|
|
204
|
+
### Setup Development Environment
|
|
205
|
+
```bash
|
|
206
|
+
git clone https://github.com/yourusername/tradingview-mcp.git
|
|
207
|
+
cd tradingview-mcp
|
|
208
|
+
uv sync --all-extras
|
|
209
|
+
```
|
|
210
|
+
|
|
135
211
|
### Running Tests
|
|
136
212
|
```bash
|
|
137
|
-
uv run pytest tests/
|
|
213
|
+
uv run pytest tests/ -v
|
|
138
214
|
```
|
|
139
215
|
|
|
140
216
|
### Code Formatting
|
|
@@ -148,6 +224,49 @@ uv run ruff check . --fix
|
|
|
148
224
|
uv run pyright
|
|
149
225
|
```
|
|
150
226
|
|
|
227
|
+
### Debug Mode
|
|
228
|
+
|
|
229
|
+
Enable structured debug responses from tools by setting:
|
|
230
|
+
|
|
231
|
+
```bash
|
|
232
|
+
export TRADINGVIEW_MCP_DEBUG=1
|
|
233
|
+
```
|
|
234
|
+
|
|
235
|
+
### Docs Data Path (Optional)
|
|
236
|
+
|
|
237
|
+
If you want the full TradingView Screener docs datasets (e.g., large metainfo files),
|
|
238
|
+
point the loader to your docs data directory:
|
|
239
|
+
|
|
240
|
+
```bash
|
|
241
|
+
export TRADINGVIEW_SCREENER_DOCS_DATA=/path/to/TradingView-Screener-docs/data
|
|
242
|
+
```
|
|
243
|
+
|
|
244
|
+
## Publishing & Releases
|
|
245
|
+
|
|
246
|
+
This project uses GitHub Actions for automated publishing to PyPI:
|
|
247
|
+
|
|
248
|
+
### Automatic Updates
|
|
249
|
+
- **Weekly auto-update**: Every Monday, the workflow checks for dependency updates, runs tests, and publishes a new version if there are changes
|
|
250
|
+
- **Manual trigger**: You can manually trigger updates from the GitHub Actions tab
|
|
251
|
+
|
|
252
|
+
### Manual Release
|
|
253
|
+
To create a manual release:
|
|
254
|
+
|
|
255
|
+
1. Update version in `pyproject.toml`
|
|
256
|
+
2. Commit and create a tag:
|
|
257
|
+
```bash
|
|
258
|
+
git commit -am "Bump version to x.y.z"
|
|
259
|
+
git tag vx.y.z
|
|
260
|
+
git push origin main --tags
|
|
261
|
+
```
|
|
262
|
+
3. GitHub Actions will automatically build and publish to PyPI
|
|
263
|
+
|
|
264
|
+
See [CONTRIBUTING.md](CONTRIBUTING.md) for detailed release instructions.
|
|
265
|
+
|
|
266
|
+
## Contributing
|
|
267
|
+
|
|
268
|
+
Contributions are welcome! Please see [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines.
|
|
269
|
+
|
|
151
270
|
## License
|
|
152
271
|
|
|
153
272
|
MIT License - see [LICENSE](LICENSE) for details.
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "tradingview-mcp"
|
|
3
|
-
version = "1.
|
|
3
|
+
version = "1.1.0"
|
|
4
4
|
description = "A comprehensive MCP server for TradingView market screening with integrated screener functionality"
|
|
5
5
|
readme = "README.md"
|
|
6
6
|
license = { text = "MIT" }
|
|
7
7
|
requires-python = ">=3.10"
|
|
8
8
|
authors = [{ name = "TradingView MCP Team" }]
|
|
9
|
-
keywords = ["mcp", "tradingview", "screener", "crypto", "stocks", "trading", "technical-analysis"]
|
|
9
|
+
keywords = ["mcp", "tradingview", "screener", "crypto", "stocks", "trading", "technical-analysis", "model-context-protocol"]
|
|
10
10
|
classifiers = [
|
|
11
11
|
"Development Status :: 4 - Beta",
|
|
12
12
|
"Intended Audience :: Developers",
|
|
@@ -17,6 +17,7 @@ classifiers = [
|
|
|
17
17
|
"Programming Language :: Python :: 3.11",
|
|
18
18
|
"Programming Language :: Python :: 3.12",
|
|
19
19
|
"Topic :: Office/Business :: Financial :: Investment",
|
|
20
|
+
"Topic :: Software Development :: Libraries :: Python Modules",
|
|
20
21
|
]
|
|
21
22
|
|
|
22
23
|
dependencies = [
|
|
@@ -26,10 +27,18 @@ dependencies = [
|
|
|
26
27
|
"httpx>=0.24.0",
|
|
27
28
|
]
|
|
28
29
|
|
|
30
|
+
[project.urls]
|
|
31
|
+
Homepage = "https://github.com/yourusername/tradingview-mcp"
|
|
32
|
+
Documentation = "https://github.com/yourusername/tradingview-mcp#readme"
|
|
33
|
+
Repository = "https://github.com/yourusername/tradingview-mcp"
|
|
34
|
+
Issues = "https://github.com/yourusername/tradingview-mcp/issues"
|
|
35
|
+
Changelog = "https://github.com/yourusername/tradingview-mcp/blob/main/CHANGELOG.md"
|
|
36
|
+
|
|
29
37
|
[project.optional-dependencies]
|
|
30
38
|
dev = [
|
|
31
39
|
"pytest>=7.0.0",
|
|
32
40
|
"pytest-asyncio>=0.21.0",
|
|
41
|
+
"pytest-cov>=4.0.0",
|
|
33
42
|
"ruff>=0.1.0",
|
|
34
43
|
"pyright>=1.1.0",
|
|
35
44
|
]
|
|
@@ -44,8 +53,15 @@ build-backend = "hatchling.build"
|
|
|
44
53
|
[tool.hatch.build.targets.wheel]
|
|
45
54
|
packages = ["src/tradingview_mcp"]
|
|
46
55
|
|
|
56
|
+
[tool.hatch.build.targets.wheel.sources]
|
|
57
|
+
"src" = ""
|
|
58
|
+
|
|
47
59
|
[tool.hatch.build.targets.sdist]
|
|
48
|
-
include = [
|
|
60
|
+
include = [
|
|
61
|
+
"src/tradingview_mcp/**/*.py",
|
|
62
|
+
"src/tradingview_mcp/**/*.json",
|
|
63
|
+
"src/tradingview_mcp/data/**",
|
|
64
|
+
]
|
|
49
65
|
|
|
50
66
|
[tool.pytest.ini_options]
|
|
51
67
|
pythonpath = ["src"]
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"""TradingView MCP packaged data files.
|
|
2
|
+
|
|
3
|
+
This package contains:
|
|
4
|
+
- markets.json: Market metadata
|
|
5
|
+
- column_display_names.json: Field display names
|
|
6
|
+
- metainfo/: Field definitions by market type
|
|
7
|
+
- screeners/: Screener presets and configurations
|
|
8
|
+
- extracted/: AI-friendly data extracted from docs
|
|
9
|
+
"""
|