mseep-rmcp 0.3.3__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.
Files changed (44) hide show
  1. mseep_rmcp-0.3.3/LICENSE +21 -0
  2. mseep_rmcp-0.3.3/PKG-INFO +50 -0
  3. mseep_rmcp-0.3.3/README.md +326 -0
  4. mseep_rmcp-0.3.3/pyproject.toml +184 -0
  5. mseep_rmcp-0.3.3/setup.cfg +4 -0
  6. mseep_rmcp-0.3.3/src/mseep_rmcp.egg-info/PKG-INFO +50 -0
  7. mseep_rmcp-0.3.3/src/mseep_rmcp.egg-info/SOURCES.txt +42 -0
  8. mseep_rmcp-0.3.3/src/mseep_rmcp.egg-info/dependency_links.txt +1 -0
  9. mseep_rmcp-0.3.3/src/mseep_rmcp.egg-info/entry_points.txt +2 -0
  10. mseep_rmcp-0.3.3/src/mseep_rmcp.egg-info/requires.txt +23 -0
  11. mseep_rmcp-0.3.3/src/mseep_rmcp.egg-info/top_level.txt +1 -0
  12. mseep_rmcp-0.3.3/src/rmcp/__init__.py +31 -0
  13. mseep_rmcp-0.3.3/src/rmcp/cli.py +317 -0
  14. mseep_rmcp-0.3.3/src/rmcp/core/__init__.py +14 -0
  15. mseep_rmcp-0.3.3/src/rmcp/core/context.py +150 -0
  16. mseep_rmcp-0.3.3/src/rmcp/core/schemas.py +156 -0
  17. mseep_rmcp-0.3.3/src/rmcp/core/server.py +261 -0
  18. mseep_rmcp-0.3.3/src/rmcp/r_assets/__init__.py +8 -0
  19. mseep_rmcp-0.3.3/src/rmcp/r_integration.py +112 -0
  20. mseep_rmcp-0.3.3/src/rmcp/registries/__init__.py +26 -0
  21. mseep_rmcp-0.3.3/src/rmcp/registries/prompts.py +316 -0
  22. mseep_rmcp-0.3.3/src/rmcp/registries/resources.py +266 -0
  23. mseep_rmcp-0.3.3/src/rmcp/registries/tools.py +223 -0
  24. mseep_rmcp-0.3.3/src/rmcp/scripts/__init__.py +9 -0
  25. mseep_rmcp-0.3.3/src/rmcp/security/__init__.py +15 -0
  26. mseep_rmcp-0.3.3/src/rmcp/security/vfs.py +233 -0
  27. mseep_rmcp-0.3.3/src/rmcp/tools/descriptive.py +279 -0
  28. mseep_rmcp-0.3.3/src/rmcp/tools/econometrics.py +250 -0
  29. mseep_rmcp-0.3.3/src/rmcp/tools/fileops.py +315 -0
  30. mseep_rmcp-0.3.3/src/rmcp/tools/machine_learning.py +299 -0
  31. mseep_rmcp-0.3.3/src/rmcp/tools/regression.py +287 -0
  32. mseep_rmcp-0.3.3/src/rmcp/tools/statistical_tests.py +332 -0
  33. mseep_rmcp-0.3.3/src/rmcp/tools/timeseries.py +239 -0
  34. mseep_rmcp-0.3.3/src/rmcp/tools/transforms.py +293 -0
  35. mseep_rmcp-0.3.3/src/rmcp/tools/visualization.py +590 -0
  36. mseep_rmcp-0.3.3/src/rmcp/transport/__init__.py +16 -0
  37. mseep_rmcp-0.3.3/src/rmcp/transport/base.py +130 -0
  38. mseep_rmcp-0.3.3/src/rmcp/transport/jsonrpc.py +243 -0
  39. mseep_rmcp-0.3.3/src/rmcp/transport/stdio.py +201 -0
  40. mseep_rmcp-0.3.3/tests/test_direct_capabilities.py +185 -0
  41. mseep_rmcp-0.3.3/tests/test_docker_simulation.py +164 -0
  42. mseep_rmcp-0.3.3/tests/test_docker_size.py +54 -0
  43. mseep_rmcp-0.3.3/tests/test_expanded_capabilities.py +283 -0
  44. mseep_rmcp-0.3.3/tests/test_mcp_interface.py +343 -0
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2025 goji+
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,50 @@
1
+ Metadata-Version: 2.4
2
+ Name: mseep-rmcp
3
+ Version: 0.3.3
4
+ Summary: Comprehensive Model Context Protocol server with 33 statistical analysis tools across 8 categories
5
+ Author-email: mseep <support@skydeck.ai>
6
+ License: MIT
7
+ Project-URL: Homepage, https://github.com/gojiplus/rmcp
8
+ Project-URL: Repository, https://github.com/gojiplus/rmcp
9
+ Project-URL: Documentation, https://github.com/gojiplus/rmcp#readme
10
+ Project-URL: Issues, https://github.com/gojiplus/rmcp/issues
11
+ Keywords: mcp,r,statistics,econometrics,model-context-protocol,data-analysis
12
+ Classifier: Development Status :: 4 - Beta
13
+ Classifier: Intended Audience :: Developers
14
+ Classifier: Intended Audience :: Science/Research
15
+ Classifier: License :: OSI Approved :: MIT License
16
+ Classifier: Operating System :: OS Independent
17
+ Classifier: Programming Language :: Python :: 3
18
+ Classifier: Programming Language :: Python :: 3.8
19
+ Classifier: Programming Language :: Python :: 3.9
20
+ Classifier: Programming Language :: Python :: 3.10
21
+ Classifier: Programming Language :: Python :: 3.11
22
+ Classifier: Programming Language :: Python :: 3.12
23
+ Classifier: Programming Language :: R
24
+ Classifier: Topic :: Scientific/Engineering :: Information Analysis
25
+ Classifier: Topic :: Software Development :: Libraries :: Python Modules
26
+ Classifier: Topic :: System :: Distributed Computing
27
+ Requires-Python: >=3.8
28
+ Description-Content-Type: text/plain
29
+ License-File: LICENSE
30
+ Requires-Dist: click>=8.1.0
31
+ Requires-Dist: jsonschema>=4.0.0
32
+ Provides-Extra: dev
33
+ Requires-Dist: pytest>=8.0.0; extra == "dev"
34
+ Requires-Dist: pytest-cov>=5.0.0; extra == "dev"
35
+ Requires-Dist: pytest-mock>=3.12.0; extra == "dev"
36
+ Requires-Dist: pytest-asyncio>=0.21.0; extra == "dev"
37
+ Requires-Dist: black>=23.0.0; extra == "dev"
38
+ Requires-Dist: isort>=5.12.0; extra == "dev"
39
+ Requires-Dist: flake8>=6.0.0; extra == "dev"
40
+ Requires-Dist: mypy>=1.5.0; extra == "dev"
41
+ Requires-Dist: pre-commit>=3.0.0; extra == "dev"
42
+ Provides-Extra: http
43
+ Requires-Dist: fastapi>=0.100.0; extra == "http"
44
+ Requires-Dist: uvicorn>=0.20.0; extra == "http"
45
+ Requires-Dist: sse-starlette>=1.6.0; extra == "http"
46
+ Provides-Extra: r
47
+ Requires-Dist: subprocess32>=3.5.0; python_version < "3.3" and extra == "r"
48
+ Dynamic: license-file
49
+
50
+ Package managed by MseeP.ai
@@ -0,0 +1,326 @@
1
+ # RMCP: R Model Context Protocol Server
2
+
3
+ [![PyPI version](https://img.shields.io/pypi/v/rmcp.svg)](https://pypi.org/project/rmcp/)
4
+ [![Downloads](https://pepy.tech/badge/rmcp)](https://pepy.tech/project/rmcp)
5
+ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
6
+ [![Python 3.8+](https://img.shields.io/badge/python-3.8+-blue.svg)](https://www.python.org/downloads/)
7
+
8
+ **Version 0.3.2** - A comprehensive Model Context Protocol (MCP) server with 33 statistical analysis tools across 8 categories. RMCP enables AI assistants and applications to perform sophisticated statistical modeling, econometric analysis, machine learning, time series analysis, and data science tasks seamlessly through natural conversation.
9
+
10
+ **🎉 Now with 33 statistical tools across 8 categories!**
11
+
12
+ ## 🚀 Quick Start
13
+
14
+ ```bash
15
+ pip install rmcp
16
+ ```
17
+
18
+ ```bash
19
+ # Start the MCP server
20
+ rmcp start
21
+ ```
22
+
23
+ That's it! RMCP is now ready to handle statistical analysis requests via the Model Context Protocol.
24
+
25
+ **👉 [See Working Examples →](examples/quick_start_guide.md)** - Copy-paste ready commands with real datasets!
26
+
27
+ ## ✨ Features
28
+
29
+ ### 📊 Comprehensive Statistical Analysis (33 Tools)
30
+
31
+ #### **Regression & Correlation** ✅
32
+ - **Linear Regression** (`linear_model`): OLS with robust standard errors, R², p-values
33
+ - **Logistic Regression** (`logistic_regression`): Binary classification with odds ratios and accuracy
34
+ - **Correlation Analysis** (`correlation_analysis`): Pearson, Spearman, and Kendall correlations
35
+
36
+ #### **Time Series Analysis** ✅
37
+ - **ARIMA Modeling** (`arima_model`): Autoregressive integrated moving average with forecasting
38
+ - **Time Series Decomposition** (`decompose_timeseries`): Trend, seasonal, remainder components
39
+ - **Stationarity Testing** (`stationarity_test`): ADF, KPSS, Phillips-Perron tests
40
+
41
+ #### **Data Transformation** ✅
42
+ - **Lag/Lead Variables** (`lag_lead`): Create time-shifted variables for analysis
43
+ - **Winsorization** (`winsorize`): Handle outliers by capping extreme values
44
+ - **Differencing** (`difference`): Create stationary series for time series analysis
45
+ - **Standardization** (`standardize`): Z-score, min-max, robust scaling
46
+
47
+ #### **Statistical Testing** ✅
48
+ - **T-Tests** (`t_test`): One-sample, two-sample, paired t-tests
49
+ - **ANOVA** (`anova`): Analysis of variance with Types I/II/III
50
+ - **Chi-Square Tests** (`chi_square_test`): Independence and goodness-of-fit
51
+ - **Normality Tests** (`normality_test`): Shapiro-Wilk, Jarque-Bera, Anderson-Darling
52
+
53
+ #### **Descriptive Statistics** ✅
54
+ - **Summary Statistics** (`summary_stats`): Comprehensive descriptives with grouping
55
+ - **Outlier Detection** (`outlier_detection`): IQR, Z-score, Modified Z-score methods
56
+ - **Frequency Tables** (`frequency_table`): Counts and percentages with sorting
57
+
58
+ #### **Advanced Econometrics** ✅
59
+ - **Panel Regression** (`panel_regression`): Fixed/random effects for longitudinal data
60
+ - **Instrumental Variables** (`instrumental_variables`): 2SLS with endogeneity testing
61
+ - **Vector Autoregression** (`var_model`): Multivariate time series modeling
62
+
63
+ #### **Machine Learning** ✅
64
+ - **K-Means Clustering** (`kmeans_clustering`): Unsupervised clustering with validation
65
+ - **Decision Trees** (`decision_tree`): Classification and regression trees
66
+ - **Random Forest** (`random_forest`): Ensemble methods with variable importance
67
+
68
+ #### **Data Visualization** ✅
69
+ - **Scatter Plots** (`scatter_plot`): Correlation plots with trend lines
70
+ - **Histograms** (`histogram`): Distribution analysis with density overlay
71
+ - **Box Plots** (`boxplot`): Quartile analysis with outlier detection
72
+ - **Time Series Plots** (`time_series_plot`): Temporal data visualization
73
+ - **Correlation Heatmaps** (`correlation_heatmap`): Matrix visualization
74
+ - **Regression Diagnostics** (`regression_plot`): Model validation plots
75
+
76
+ #### **File Operations** ✅
77
+ - **CSV Import** (`read_csv`): Flexible data loading with parsing options
78
+ - **CSV Export** (`write_csv`): Data export with formatting control
79
+ - **Dataset Information** (`data_info`): Comprehensive data structure analysis
80
+ - **Data Filtering** (`filter_data`): Complex conditional data selection
81
+
82
+ ### Production Ready
83
+ - **MCP Protocol**: Full JSON-RPC 2.0 compliance
84
+ - **Transport Agnostic**: stdio, HTTP, WebSocket support
85
+ - **Error Handling**: Comprehensive error reporting and validation
86
+ - **Security**: Safe R execution with controlled environment
87
+
88
+ ## 🎯 Real-World Usage
89
+
90
+ RMCP works through natural conversation with AI assistants. Here's how users actually interact with it:
91
+
92
+ ### Business Analysis
93
+ **You ask Claude:**
94
+ > *"I have sales data and marketing spend. Can you analyze the ROI and tell me how effective our marketing is?"*
95
+
96
+ **Claude responds:**
97
+ > *"Based on the regression analysis, every $1 spent on marketing generates $4.70 in additional sales. The relationship is highly significant (p < 0.001) and explains 97.9% of sales variation."*
98
+
99
+ ### Economic Research
100
+ **You ask Claude:**
101
+ > *"I have GDP growth and unemployment data for several countries. Can you test if this supports Okun's Law?"*
102
+
103
+ **Claude responds:**
104
+ > *"The correlation analysis shows strong support for Okun's Law with r = -0.944. Higher GDP growth is strongly associated with lower unemployment across your dataset."*
105
+
106
+ ### Data Science
107
+ **You ask Claude:**
108
+ > *"Help me build a customer churn prediction model using tenure and monthly charges."*
109
+
110
+ **Claude responds:**
111
+ > *"I've built a logistic regression model that achieves 100% accuracy. Longer tenure significantly reduces churn risk (11.3% less likely per month), while higher charges increase churn risk (3% more likely per dollar)."*
112
+
113
+ ## 📊 Validated User Scenarios
114
+
115
+ RMCP has been tested with real-world scenarios achieving **100% success rate**:
116
+
117
+ - ✅ **Business Analysts**: Sales forecasting with 97.9% R², $4.70 ROI per marketing dollar
118
+ - ✅ **Economists**: Macroeconomic analysis showing Okun's Law (r=-0.944)
119
+ - ✅ **Data Scientists**: Customer churn prediction with 100% accuracy
120
+ - ✅ **Researchers**: Treatment effect analysis with significant results (p<0.001)
121
+
122
+ ## 🔧 Installation & Setup
123
+
124
+ ### Prerequisites
125
+ - Python 3.8+
126
+ - R 4.0+ (automatically configured)
127
+
128
+ ### Install via pip
129
+ ```bash
130
+ pip install rmcp
131
+ ```
132
+
133
+ ### Development Installation
134
+ ```bash
135
+ git clone https://github.com/gojiplus/rmcp.git
136
+ cd rmcp
137
+ pip install -e ".[dev]"
138
+ ```
139
+
140
+ ### With Claude Desktop
141
+
142
+ Add to your Claude Desktop MCP configuration:
143
+
144
+ ```json
145
+ {
146
+ "mcpServers": {
147
+ "rmcp": {
148
+ "command": "rmcp",
149
+ "args": ["start"],
150
+ "env": {}
151
+ }
152
+ }
153
+ }
154
+ ```
155
+
156
+ ## 📚 Usage
157
+
158
+ ### Command Line Interface
159
+
160
+ ```bash
161
+ # Start MCP server (stdio transport)
162
+ rmcp start
163
+
164
+ # Check version
165
+ rmcp --version
166
+
167
+ # Advanced server configuration
168
+ rmcp serve --log-level DEBUG --read-only
169
+
170
+ # List available tools and capabilities
171
+ rmcp list-capabilities
172
+ ```
173
+
174
+ ### Programmatic Usage
175
+
176
+ ```python
177
+ # RMCP is primarily designed as a CLI MCP server
178
+ # For programmatic R analysis, use the MCP protocol:
179
+
180
+ import json
181
+ import subprocess
182
+
183
+ # Send analysis request to RMCP server
184
+ request = {
185
+ "tool": "linear_model",
186
+ "args": {
187
+ "formula": "y ~ x",
188
+ "data": {"x": [1, 2, 3], "y": [2, 4, 6]}
189
+ }
190
+ }
191
+
192
+ # Start server and send request via stdin
193
+ proc = subprocess.Popen(['rmcp', 'start'],
194
+ stdin=subprocess.PIPE,
195
+ stdout=subprocess.PIPE,
196
+ stderr=subprocess.PIPE,
197
+ text=True)
198
+ result, _ = proc.communicate(json.dumps(request))
199
+ print(result)
200
+ ```
201
+
202
+ ### API Examples
203
+
204
+ #### Linear Regression
205
+ ```python
206
+ {
207
+ "tool": "linear_model",
208
+ "args": {
209
+ "formula": "outcome ~ treatment + age + baseline",
210
+ "data": {
211
+ "outcome": [4.2, 6.8, 3.8, 7.1],
212
+ "treatment": [0, 1, 0, 1],
213
+ "age": [25, 30, 22, 35],
214
+ "baseline": [3.8, 4.2, 3.5, 4.8]
215
+ }
216
+ }
217
+ }
218
+ ```
219
+
220
+ #### Correlation Analysis
221
+ ```python
222
+ {
223
+ "tool": "correlation_analysis",
224
+ "args": {
225
+ "data": {
226
+ "x": [1, 2, 3, 4, 5],
227
+ "y": [2, 4, 6, 8, 10]
228
+ },
229
+ "variables": ["x", "y"],
230
+ "method": "pearson"
231
+ }
232
+ }
233
+ ```
234
+
235
+ #### Logistic Regression
236
+ ```python
237
+ {
238
+ "tool": "logistic_regression",
239
+ "args": {
240
+ "formula": "churn ~ tenure_months + monthly_charges",
241
+ "data": {
242
+ "churn": [0, 1, 0, 1],
243
+ "tenure_months": [24, 6, 36, 3],
244
+ "monthly_charges": [70, 85, 65, 90]
245
+ },
246
+ "family": "binomial",
247
+ "link": "logit"
248
+ }
249
+ }
250
+ ```
251
+
252
+ ## 🧪 Testing & Validation
253
+
254
+ RMCP includes comprehensive testing with realistic scenarios:
255
+
256
+ ```bash
257
+ # Run all user scenarios (should show 100% pass rate)
258
+ python tests/realistic_scenarios.py
259
+
260
+ # Run development test script
261
+ bash src/rmcp/scripts/test.sh
262
+ ```
263
+
264
+ **Current Test Coverage**:
265
+ - ✅ **MCP Interface**: 100% success rate (5/5 tests) - Validates actual Claude Desktop integration
266
+ - ✅ **User Scenarios**: 100% success rate (4/4 tests) - Validates real-world usage patterns
267
+ - ✅ **Conversational Examples**: All documented examples tested and verified working
268
+
269
+ ## 🏗️ Architecture
270
+
271
+ RMCP is built with production best practices:
272
+
273
+ - **Clean Architecture**: Modular design with clear separation of concerns
274
+ - **MCP Compliance**: Full Model Context Protocol specification support
275
+ - **Transport Layer**: Pluggable transports (stdio, HTTP, WebSocket)
276
+ - **R Integration**: Safe subprocess execution with JSON serialization
277
+ - **Error Handling**: Comprehensive error reporting and recovery
278
+ - **Security**: Controlled R execution environment
279
+
280
+ ```
281
+ src/rmcp/
282
+ ├── core/ # MCP server core
283
+ ├── tools/ # Statistical analysis tools
284
+ ├── transport/ # Communication layers
285
+ ├── registries/ # Tool and resource management
286
+ └── security/ # Safe execution environment
287
+ ```
288
+
289
+ ## 🤝 Contributing
290
+
291
+ We welcome contributions! Please see our [contributing guidelines](CONTRIBUTING.md).
292
+
293
+ ### Development Setup
294
+ ```bash
295
+ git clone https://github.com/gojiplus/rmcp.git
296
+ cd rmcp
297
+ pip install -e ".[dev]"
298
+ pre-commit install
299
+ ```
300
+
301
+ ### Running Tests
302
+ ```bash
303
+ python tests/realistic_scenarios.py # User scenarios
304
+ pytest tests/ # Unit tests (if any)
305
+ ```
306
+
307
+ ## 📄 License
308
+
309
+ MIT License - see [LICENSE](LICENSE) file for details.
310
+
311
+ ## 🙋 Support
312
+
313
+ - 📖 **Documentation**: See [Quick Start Guide](examples/quick_start_guide.md) for working examples
314
+ - 🐛 **Issues**: [GitHub Issues](https://github.com/gojiplus/rmcp/issues)
315
+ - 💬 **Discussions**: [GitHub Discussions](https://github.com/gojiplus/rmcp/discussions)
316
+
317
+ ## 🎉 Acknowledgments
318
+
319
+ RMCP builds on the excellent work of:
320
+ - [Model Context Protocol](https://modelcontextprotocol.io/) specification
321
+ - [R Project](https://www.r-project.org/) statistical computing environment
322
+ - The broader open-source statistical computing community
323
+
324
+ ---
325
+
326
+ **Ready to analyze data like never before?** Install RMCP and start running sophisticated statistical analyses through AI assistants today! 🚀
@@ -0,0 +1,184 @@
1
+ [build-system]
2
+ requires = [
3
+ "setuptools>=61.0",
4
+ "wheel",
5
+ ]
6
+ build-backend = "setuptools.build_meta"
7
+
8
+ [project]
9
+ name = "mseep-rmcp"
10
+ version = "0.3.3"
11
+ description = "Comprehensive Model Context Protocol server with 33 statistical analysis tools across 8 categories"
12
+ authors = [
13
+ { name = "mseep", email = "support@skydeck.ai" },
14
+ ]
15
+ keywords = [
16
+ "mcp",
17
+ "r",
18
+ "statistics",
19
+ "econometrics",
20
+ "model-context-protocol",
21
+ "data-analysis",
22
+ ]
23
+ classifiers = [
24
+ "Development Status :: 4 - Beta",
25
+ "Intended Audience :: Developers",
26
+ "Intended Audience :: Science/Research",
27
+ "License :: OSI Approved :: MIT License",
28
+ "Operating System :: OS Independent",
29
+ "Programming Language :: Python :: 3",
30
+ "Programming Language :: Python :: 3.8",
31
+ "Programming Language :: Python :: 3.9",
32
+ "Programming Language :: Python :: 3.10",
33
+ "Programming Language :: Python :: 3.11",
34
+ "Programming Language :: Python :: 3.12",
35
+ "Programming Language :: R",
36
+ "Topic :: Scientific/Engineering :: Information Analysis",
37
+ "Topic :: Software Development :: Libraries :: Python Modules",
38
+ "Topic :: System :: Distributed Computing",
39
+ ]
40
+ requires-python = ">=3.8"
41
+ dependencies = [
42
+ "click>=8.1.0",
43
+ "jsonschema>=4.0.0",
44
+ ]
45
+
46
+ [project.readme]
47
+ content-type = "text/plain"
48
+ text = "Package managed by MseeP.ai"
49
+
50
+ [project.license]
51
+ text = "MIT"
52
+
53
+ [project.urls]
54
+ Homepage = "https://github.com/gojiplus/rmcp"
55
+ Repository = "https://github.com/gojiplus/rmcp"
56
+ Documentation = "https://github.com/gojiplus/rmcp#readme"
57
+ Issues = "https://github.com/gojiplus/rmcp/issues"
58
+
59
+ [project.optional-dependencies]
60
+ dev = [
61
+ "pytest>=8.0.0",
62
+ "pytest-cov>=5.0.0",
63
+ "pytest-mock>=3.12.0",
64
+ "pytest-asyncio>=0.21.0",
65
+ "black>=23.0.0",
66
+ "isort>=5.12.0",
67
+ "flake8>=6.0.0",
68
+ "mypy>=1.5.0",
69
+ "pre-commit>=3.0.0",
70
+ ]
71
+ http = [
72
+ "fastapi>=0.100.0",
73
+ "uvicorn>=0.20.0",
74
+ "sse-starlette>=1.6.0",
75
+ ]
76
+ r = [
77
+ "subprocess32>=3.5.0; python_version<'3.3'",
78
+ ]
79
+
80
+ [project.scripts]
81
+ rmcp = "rmcp.cli:cli"
82
+
83
+ [tool.setuptools.packages.find]
84
+ where = [
85
+ "src",
86
+ ]
87
+
88
+ [tool.setuptools.package-dir]
89
+ "" = "src"
90
+
91
+ [tool.pytest.ini_options]
92
+ testpaths = [
93
+ "tests",
94
+ ]
95
+ python_files = [
96
+ "test_*.py",
97
+ ]
98
+ python_classes = [
99
+ "Test*",
100
+ ]
101
+ python_functions = [
102
+ "test_*",
103
+ ]
104
+ addopts = [
105
+ "-v",
106
+ "--strict-markers",
107
+ "--strict-config",
108
+ "--cov=rmcp",
109
+ "--cov-report=term-missing",
110
+ "--cov-report=html",
111
+ "--cov-fail-under=80",
112
+ ]
113
+
114
+ [tool.black]
115
+ line-length = 88
116
+ target-version = [
117
+ "py38",
118
+ "py39",
119
+ "py310",
120
+ "py311",
121
+ "py312",
122
+ ]
123
+ include = "\\.pyi?$"
124
+ extend-exclude = "/(\n # directories\n \\.eggs\n | \\.git\n | \\.hg \n | \\.mypy_cache\n | \\.tox\n | \\.venv\n | build\n | dist\n)/\n"
125
+
126
+ [tool.isort]
127
+ profile = "black"
128
+ multi_line_output = 3
129
+ include_trailing_comma = true
130
+ force_grid_wrap = 0
131
+ use_parentheses = true
132
+ ensure_newline_before_comments = true
133
+ line_length = 88
134
+ src_paths = [
135
+ "src",
136
+ "tests",
137
+ ]
138
+
139
+ [tool.mypy]
140
+ python_version = "3.8"
141
+ warn_return_any = true
142
+ warn_unused_configs = true
143
+ disallow_untyped_defs = true
144
+ disallow_incomplete_defs = true
145
+ check_untyped_defs = true
146
+ disallow_untyped_decorators = true
147
+ no_implicit_optional = true
148
+ warn_redundant_casts = true
149
+ warn_unused_ignores = true
150
+ warn_no_return = true
151
+ warn_unreachable = true
152
+ strict_equality = true
153
+ packages = [
154
+ "src",
155
+ ]
156
+
157
+ [[tool.mypy.overrides]]
158
+ module = [
159
+ "tests.*",
160
+ ]
161
+ disallow_untyped_defs = false
162
+
163
+ [tool.coverage.run]
164
+ source = [
165
+ "src",
166
+ ]
167
+ omit = [
168
+ "*/tests/*",
169
+ "*/test_*.py",
170
+ ]
171
+
172
+ [tool.coverage.report]
173
+ exclude_lines = [
174
+ "pragma: no cover",
175
+ "def __repr__",
176
+ "if self.debug:",
177
+ "if settings.DEBUG",
178
+ "raise AssertionError",
179
+ "raise NotImplementedError",
180
+ "if 0:",
181
+ "if __name__ == .__main__.:",
182
+ "class .*\\bProtocol\\):",
183
+ "@(abc\\.)?abstractmethod",
184
+ ]
@@ -0,0 +1,4 @@
1
+ [egg_info]
2
+ tag_build =
3
+ tag_date = 0
4
+
@@ -0,0 +1,50 @@
1
+ Metadata-Version: 2.4
2
+ Name: mseep-rmcp
3
+ Version: 0.3.3
4
+ Summary: Comprehensive Model Context Protocol server with 33 statistical analysis tools across 8 categories
5
+ Author-email: mseep <support@skydeck.ai>
6
+ License: MIT
7
+ Project-URL: Homepage, https://github.com/gojiplus/rmcp
8
+ Project-URL: Repository, https://github.com/gojiplus/rmcp
9
+ Project-URL: Documentation, https://github.com/gojiplus/rmcp#readme
10
+ Project-URL: Issues, https://github.com/gojiplus/rmcp/issues
11
+ Keywords: mcp,r,statistics,econometrics,model-context-protocol,data-analysis
12
+ Classifier: Development Status :: 4 - Beta
13
+ Classifier: Intended Audience :: Developers
14
+ Classifier: Intended Audience :: Science/Research
15
+ Classifier: License :: OSI Approved :: MIT License
16
+ Classifier: Operating System :: OS Independent
17
+ Classifier: Programming Language :: Python :: 3
18
+ Classifier: Programming Language :: Python :: 3.8
19
+ Classifier: Programming Language :: Python :: 3.9
20
+ Classifier: Programming Language :: Python :: 3.10
21
+ Classifier: Programming Language :: Python :: 3.11
22
+ Classifier: Programming Language :: Python :: 3.12
23
+ Classifier: Programming Language :: R
24
+ Classifier: Topic :: Scientific/Engineering :: Information Analysis
25
+ Classifier: Topic :: Software Development :: Libraries :: Python Modules
26
+ Classifier: Topic :: System :: Distributed Computing
27
+ Requires-Python: >=3.8
28
+ Description-Content-Type: text/plain
29
+ License-File: LICENSE
30
+ Requires-Dist: click>=8.1.0
31
+ Requires-Dist: jsonschema>=4.0.0
32
+ Provides-Extra: dev
33
+ Requires-Dist: pytest>=8.0.0; extra == "dev"
34
+ Requires-Dist: pytest-cov>=5.0.0; extra == "dev"
35
+ Requires-Dist: pytest-mock>=3.12.0; extra == "dev"
36
+ Requires-Dist: pytest-asyncio>=0.21.0; extra == "dev"
37
+ Requires-Dist: black>=23.0.0; extra == "dev"
38
+ Requires-Dist: isort>=5.12.0; extra == "dev"
39
+ Requires-Dist: flake8>=6.0.0; extra == "dev"
40
+ Requires-Dist: mypy>=1.5.0; extra == "dev"
41
+ Requires-Dist: pre-commit>=3.0.0; extra == "dev"
42
+ Provides-Extra: http
43
+ Requires-Dist: fastapi>=0.100.0; extra == "http"
44
+ Requires-Dist: uvicorn>=0.20.0; extra == "http"
45
+ Requires-Dist: sse-starlette>=1.6.0; extra == "http"
46
+ Provides-Extra: r
47
+ Requires-Dist: subprocess32>=3.5.0; python_version < "3.3" and extra == "r"
48
+ Dynamic: license-file
49
+
50
+ Package managed by MseeP.ai
@@ -0,0 +1,42 @@
1
+ LICENSE
2
+ README.md
3
+ pyproject.toml
4
+ src/mseep_rmcp.egg-info/PKG-INFO
5
+ src/mseep_rmcp.egg-info/SOURCES.txt
6
+ src/mseep_rmcp.egg-info/dependency_links.txt
7
+ src/mseep_rmcp.egg-info/entry_points.txt
8
+ src/mseep_rmcp.egg-info/requires.txt
9
+ src/mseep_rmcp.egg-info/top_level.txt
10
+ src/rmcp/__init__.py
11
+ src/rmcp/cli.py
12
+ src/rmcp/r_integration.py
13
+ src/rmcp/core/__init__.py
14
+ src/rmcp/core/context.py
15
+ src/rmcp/core/schemas.py
16
+ src/rmcp/core/server.py
17
+ src/rmcp/r_assets/__init__.py
18
+ src/rmcp/registries/__init__.py
19
+ src/rmcp/registries/prompts.py
20
+ src/rmcp/registries/resources.py
21
+ src/rmcp/registries/tools.py
22
+ src/rmcp/scripts/__init__.py
23
+ src/rmcp/security/__init__.py
24
+ src/rmcp/security/vfs.py
25
+ src/rmcp/tools/descriptive.py
26
+ src/rmcp/tools/econometrics.py
27
+ src/rmcp/tools/fileops.py
28
+ src/rmcp/tools/machine_learning.py
29
+ src/rmcp/tools/regression.py
30
+ src/rmcp/tools/statistical_tests.py
31
+ src/rmcp/tools/timeseries.py
32
+ src/rmcp/tools/transforms.py
33
+ src/rmcp/tools/visualization.py
34
+ src/rmcp/transport/__init__.py
35
+ src/rmcp/transport/base.py
36
+ src/rmcp/transport/jsonrpc.py
37
+ src/rmcp/transport/stdio.py
38
+ tests/test_direct_capabilities.py
39
+ tests/test_docker_simulation.py
40
+ tests/test_docker_size.py
41
+ tests/test_expanded_capabilities.py
42
+ tests/test_mcp_interface.py
@@ -0,0 +1,2 @@
1
+ [console_scripts]
2
+ rmcp = rmcp.cli:cli