File size: 2,078 Bytes
24ff0bb
b601143
22a2ec5
b601143
 
 
 
24ff0bb
22a2ec5
 
 
 
 
 
 
 
 
 
 
24ff0bb
 
b3f7564
39e0261
d7eea95
24ff0bb
 
cbf475c
4d52063
dc20d40
 
 
 
 
 
 
 
 
 
 
 
cbf475c
dc20d40
 
 
 
 
 
 
eb436de
dc20d40
eb436de
dc20d40
24ff0bb
dc20d40
24ff0bb
dc20d40
 
 
24ff0bb
 
b601143
 
24ff0bb
 
 
 
 
 
 
 
 
d7eea95
 
 
 
 
 
24ff0bb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
from setuptools import setup, find_packages
from pathlib import Path


# Read the README file
this_directory = Path(__file__).parent
long_description = (this_directory / "README.md").read_text()

def read_version():
    version_path = Path(__file__).parent / "scribe_python_client" / "version.py"
    with open(version_path) as f:
        for line in f:
            if line.startswith("__version__"):
                delim = '"' if '"' in line else "'"
                return line.split(delim)[1]
    raise RuntimeError("Unable to find version string.")

__version__ = read_version()

setup(
    name='scribe-python-client',
    version=__version__,
    packages=find_packages(include=['scribe_python_client', 'scribe_python_client.*']),
    include_package_data=True,
    install_requires=[
        'requests',
        'PyJWT',
        'python-dotenv',
        # ONLY base/core dependencies here
    ],
    extras_require={
    'mcp': [
        'fastapi',
        'uvicorn',
        'fastapi_mcp',
        'python-dotenv',
    ],
    'graph': [
        'plotly',
        'numpy',
        'networkx',
        'pyvis',
    ],
    'all': [
        'fastapi',
        'uvicorn',
        'fastapi_mcp',
        'plotly',
        'numpy',
        'networkx',
        'pyvis',
        'python-dotenv',
    ],
},
    entry_points={
    "console_scripts": [
        "scribe-client = scribe_python_client.cli:main"
        ]
    },
    description='A Python client for interacting with ScribeHub.',
    long_description=long_description,
    long_description_content_type="text/markdown",
    author='Daniel Nebenzahl',
    author_email='dn@scribesecurity.com',
    url='https://github.com/scribe-security/scribe-python-client',
    classifiers=[
        'Programming Language :: Python :: 3',
        'License :: OSI Approved :: MIT License',
        'Operating System :: OS Independent',
    ],
    python_requires='>=3.6',
    package_data={
        'scribe_python_client.mcp_app.toolsDescriptions': [
            '*.json', '*.py',
            'fullToolDocs/*.json'
        ]
    },
)