usb-workday-agent 1.0.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.
Files changed (115) hide show
  1. usb_workday_agent-1.0.0/.gitignore +4 -0
  2. usb_workday_agent-1.0.0/LICENSE +21 -0
  3. usb_workday_agent-1.0.0/PKG-INFO +178 -0
  4. usb_workday_agent-1.0.0/README.md +149 -0
  5. usb_workday_agent-1.0.0/pyproject.toml +66 -0
  6. usb_workday_agent-1.0.0/server.py +607 -0
  7. usb_workday_agent-1.0.0/usb_workday_agent/__init__.py +9 -0
  8. usb_workday_agent-1.0.0/usb_workday_agent/server.py +607 -0
  9. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/annotated_types-0.7.0.dist-info/licenses/LICENSE +21 -0
  10. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/anyio-4.13.0.dist-info/licenses/LICENSE +20 -0
  11. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/attrs-26.1.0.dist-info/licenses/LICENSE +21 -0
  12. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/authlib-1.7.2.dist-info/licenses/LICENSE +29 -0
  13. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/beartype-0.22.9.dist-info/licenses/LICENSE +21 -0
  14. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/build-1.5.0.dist-info/licenses/LICENSE +20 -0
  15. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/cachetools-7.1.1.dist-info/licenses/LICENSE +20 -0
  16. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/caio/src/threadpool/README.md +24 -0
  17. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/certifi-2026.4.22.dist-info/licenses/LICENSE +20 -0
  18. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/cffi-2.0.0.dist-info/licenses/LICENSE +23 -0
  19. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/charset_normalizer-3.4.7.dist-info/licenses/LICENSE +21 -0
  20. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/cryptography-48.0.0.dist-info/licenses/LICENSE +3 -0
  21. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/cyclopts-4.11.2.dist-info/licenses/LICENSE +201 -0
  22. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/dnspython-2.8.0.dist-info/licenses/LICENSE +35 -0
  23. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/email_validator-2.3.0.dist-info/licenses/LICENSE +27 -0
  24. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/exceptiongroup-1.3.1.dist-info/licenses/LICENSE +73 -0
  25. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/fastmcp/contrib/README.md +19 -0
  26. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/fastmcp/contrib/bulk_tool_caller/README.md +35 -0
  27. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/fastmcp/contrib/component_manager/README.md +164 -0
  28. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/fastmcp/contrib/mcp_mixin/README.md +147 -0
  29. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/fastmcp/server/openapi/server.py +125 -0
  30. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/fastmcp/server/providers/openapi/README.md +266 -0
  31. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/fastmcp/server/server.py +2410 -0
  32. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/fastmcp/utilities/openapi/README.md +211 -0
  33. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/fastmcp-3.2.4.dist-info/licenses/LICENSE +201 -0
  34. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/griffelib-2.0.2.dist-info/licenses/LICENSE +15 -0
  35. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/httpx_sse-0.4.3.dist-info/licenses/LICENSE +21 -0
  36. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/id-1.6.1.dist-info/licenses/LICENSE +202 -0
  37. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/importlib_metadata-8.7.1.dist-info/licenses/LICENSE +73 -0
  38. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/jaraco.classes-3.4.0.dist-info/LICENSE +17 -0
  39. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/jaraco_context-6.1.2.dist-info/licenses/LICENSE +18 -0
  40. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/jaraco_functools-4.4.0.dist-info/licenses/LICENSE +18 -0
  41. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/joserfc-1.6.5.dist-info/licenses/LICENSE +28 -0
  42. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/jsonref-1.1.0.dist-info/licenses/LICENSE +21 -0
  43. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/jsonschema_path-0.4.6.dist-info/licenses/LICENSE +201 -0
  44. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/keyring-25.7.0.dist-info/licenses/LICENSE +18 -0
  45. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/markdown_it_py-4.2.0.dist-info/licenses/LICENSE +21 -0
  46. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/mcp/server/fastmcp/server.py +1349 -0
  47. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/mcp/server/lowlevel/server.py +824 -0
  48. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/mcp-1.27.1.dist-info/licenses/LICENSE +21 -0
  49. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/mdurl-0.1.2.dist-info/LICENSE +46 -0
  50. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/more_itertools-11.0.2.dist-info/licenses/LICENSE +19 -0
  51. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/nh3-0.3.5.dist-info/licenses/LICENSE +21 -0
  52. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/openapi_pydantic/v3/v3_0/README.md +39 -0
  53. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/openapi_pydantic/v3/v3_0/server.py +67 -0
  54. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/openapi_pydantic/v3/v3_1/README.md +41 -0
  55. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/openapi_pydantic/v3/v3_1/server.py +67 -0
  56. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/openapi_pydantic-0.5.1.dist-info/LICENSE +40 -0
  57. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/opentelemetry_api-1.41.1.dist-info/licenses/LICENSE +201 -0
  58. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/packaging-26.2.dist-info/licenses/LICENSE +3 -0
  59. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/pathable-0.5.0.dist-info/licenses/LICENSE +201 -0
  60. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/pip/_vendor/certifi/LICENSE +20 -0
  61. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/pip/_vendor/distro/LICENSE +202 -0
  62. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/pip/_vendor/packaging/LICENSE +3 -0
  63. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/pip/_vendor/pkg_resources/LICENSE +17 -0
  64. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/pip/_vendor/platformdirs/LICENSE +21 -0
  65. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/pip/_vendor/pygments/LICENSE +25 -0
  66. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/pip/_vendor/pyproject_hooks/LICENSE +21 -0
  67. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/pip/_vendor/requests/LICENSE +175 -0
  68. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/pip/_vendor/resolvelib/LICENSE +13 -0
  69. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/pip/_vendor/rich/LICENSE +19 -0
  70. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/pip/_vendor/tomli/LICENSE +21 -0
  71. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/pip/_vendor/tomli_w/LICENSE +21 -0
  72. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/pip/_vendor/truststore/LICENSE +21 -0
  73. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/certifi/LICENSE +20 -0
  74. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/distro/LICENSE +202 -0
  75. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/packaging/LICENSE +3 -0
  76. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/pkg_resources/LICENSE +17 -0
  77. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/platformdirs/LICENSE +21 -0
  78. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/pygments/LICENSE +25 -0
  79. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/pyproject_hooks/LICENSE +21 -0
  80. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/requests/LICENSE +175 -0
  81. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/resolvelib/LICENSE +13 -0
  82. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/rich/LICENSE +19 -0
  83. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/tomli/LICENSE +21 -0
  84. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/tomli_w/LICENSE +21 -0
  85. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/pip-26.0.1.dist-info/licenses/src/pip/_vendor/truststore/LICENSE +21 -0
  86. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/platformdirs-4.9.6.dist-info/licenses/LICENSE +21 -0
  87. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/pycparser-3.0.dist-info/licenses/LICENSE +27 -0
  88. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/pydantic-2.13.4.dist-info/licenses/LICENSE +21 -0
  89. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/pydantic_core-2.46.4.dist-info/licenses/LICENSE +21 -0
  90. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/pydantic_settings-2.14.1.dist-info/licenses/LICENSE +21 -0
  91. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/pygments-2.20.0.dist-info/licenses/LICENSE +25 -0
  92. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/pyjwt-2.12.1.dist-info/licenses/LICENSE +21 -0
  93. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/pyproject_hooks-1.2.0.dist-info/LICENSE +21 -0
  94. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/python_dotenv-1.2.2.dist-info/licenses/LICENSE +27 -0
  95. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/pyyaml-6.0.3.dist-info/licenses/LICENSE +20 -0
  96. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/readme_renderer-44.0.dist-info/LICENSE +174 -0
  97. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/requests-2.33.1.dist-info/licenses/LICENSE +175 -0
  98. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/requests_toolbelt-1.0.0.dist-info/LICENSE +13 -0
  99. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/rfc3986-2.0.0.dist-info/LICENSE +13 -0
  100. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/rich-15.0.0.dist-info/licenses/LICENSE +19 -0
  101. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/rich_rst-1.3.2.dist-info/licenses/LICENSE +7 -0
  102. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/rpds_py-0.30.0.dist-info/licenses/LICENSE +19 -0
  103. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/sse_starlette-3.4.2.dist-info/licenses/LICENSE +27 -0
  104. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/twine-6.2.0.dist-info/licenses/LICENSE +174 -0
  105. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/typing_extensions-4.15.0.dist-info/licenses/LICENSE +279 -0
  106. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/typing_inspection-0.4.2.dist-info/licenses/LICENSE +21 -0
  107. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/uncalled_for-0.3.2.dist-info/licenses/LICENSE +9 -0
  108. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/uvicorn/server.py +346 -0
  109. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/watchfiles-1.1.1.dist-info/licenses/LICENSE +21 -0
  110. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/websockets/asyncio/server.py +997 -0
  111. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/websockets/legacy/server.py +1191 -0
  112. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/websockets/server.py +589 -0
  113. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/websockets/sync/server.py +765 -0
  114. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/websockets-16.0.dist-info/licenses/LICENSE +24 -0
  115. usb_workday_agent-1.0.0/venv/lib/python3.14/site-packages/zipp-3.23.1.dist-info/licenses/LICENSE +18 -0
@@ -0,0 +1,4 @@
1
+ .env
2
+ pyproject.toml
3
+
4
+ tools/workday-toolkit.yaml
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Amanda Winkles
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,178 @@
1
+ Metadata-Version: 2.4
2
+ Name: usb-workday-agent
3
+ Version: 1.0.0
4
+ Summary: USB Workday Agent - MCP integration for Workday automation
5
+ Project-URL: Homepage, https://github.com/amandawinkles/usb-workday-agent
6
+ Project-URL: Repository, https://github.com/amandawinkles/usb-workday-agent
7
+ Project-URL: Issues, https://github.com/amandawinkles/usb-workday-agent/issues
8
+ Author-email: Amanda Winkles <amanda.winkles@ibm.com>
9
+ License: MIT
10
+ License-File: LICENSE
11
+ Keywords: automation,fastmcp,mcp,usb,workday
12
+ Classifier: Development Status :: 4 - Beta
13
+ Classifier: Intended Audience :: Developers
14
+ Classifier: License :: OSI Approved :: MIT License
15
+ Classifier: Programming Language :: Python :: 3
16
+ Classifier: Programming Language :: Python :: 3.10
17
+ Classifier: Programming Language :: Python :: 3.11
18
+ Classifier: Programming Language :: Python :: 3.12
19
+ Classifier: Topic :: Software Development :: Libraries :: Python Modules
20
+ Requires-Python: >=3.10
21
+ Requires-Dist: fastmcp>=3.0.0
22
+ Requires-Dist: mcp>=0.9.0
23
+ Requires-Dist: requests>=2.31.0
24
+ Provides-Extra: dev
25
+ Requires-Dist: black>=23.0.0; extra == 'dev'
26
+ Requires-Dist: pytest>=7.0.0; extra == 'dev'
27
+ Requires-Dist: ruff>=0.1.0; extra == 'dev'
28
+ Description-Content-Type: text/markdown
29
+
30
+ # USB Workday Agent
31
+
32
+ MCP integration for Workday automation using the wxO-nit virtual environment.
33
+
34
+ ## Overview
35
+
36
+ This project provides an MCP (Model Context Protocol) server for automating Workday operations. It leverages the FastMCP framework to expose tools and resources for Workday integration.
37
+
38
+ ## Prerequisites
39
+
40
+ - Python 3.10 or higher
41
+ - wxO-nit virtual environment (located at `../wxO-nit`)
42
+ - MCP-compatible client (e.g., Claude Desktop, Bob)
43
+
44
+ ## Installation
45
+
46
+ ### Using the wxO-nit Virtual Environment
47
+
48
+ This project uses the existing wxO-nit virtual environment:
49
+
50
+ ```bash
51
+ # Activate the wxO-nit virtual environment
52
+ source ../wxO-nit/bin/activate
53
+
54
+ # Install this package in development mode
55
+ pip install -e .
56
+ ```
57
+
58
+ ### Standalone Installation
59
+
60
+ Alternatively, create a new virtual environment:
61
+
62
+ ```bash
63
+ # Create virtual environment
64
+ python -m venv venv
65
+
66
+ # Activate virtual environment
67
+ source venv/bin/activate # On Windows: venv\Scripts\activate
68
+
69
+ # Install dependencies
70
+ pip install -e .
71
+ ```
72
+
73
+ ## Development
74
+
75
+ ### Install Development Dependencies
76
+
77
+ ```bash
78
+ pip install -e ".[dev]"
79
+ ```
80
+
81
+ ### Code Formatting
82
+
83
+ ```bash
84
+ # Format code with black
85
+ black .
86
+
87
+ # Lint with ruff
88
+ ruff check .
89
+ ```
90
+
91
+ ### Testing
92
+
93
+ ```bash
94
+ pytest
95
+ ```
96
+
97
+ ## Project Structure
98
+
99
+ ```
100
+ usb-workday-agent/
101
+ ├── README.md
102
+ ├── pyproject.toml
103
+ ├── setup.py
104
+ └── (source files to be added)
105
+ ```
106
+
107
+ ## Dependencies
108
+
109
+ - **mcp** (>=0.9.0): Model Context Protocol core library
110
+ - **fastmcp** (>=3.0.0): FastMCP framework for building MCP servers
111
+
112
+ ## Running the MCP Server
113
+
114
+ ### Start the Server
115
+
116
+ ```bash
117
+ # Activate the wxO-nit virtual environment
118
+ source ../wxO-nit/bin/activate
119
+
120
+ # Run the server directly
121
+ python3 server.py
122
+
123
+ # Or use the installed command (after pip install -e .)
124
+ usb-workday-agent
125
+ ```
126
+
127
+ ### MCP Client Configuration
128
+
129
+ Add to your MCP client configuration (e.g., Claude Desktop):
130
+
131
+ ```json
132
+ {
133
+ "mcpServers": {
134
+ "usb-workday-agent": {
135
+ "command": "python",
136
+ "args": ["/Users/amandawinkles/bob/usb-workday-agent/server.py"],
137
+ "env": {
138
+ "PYTHONPATH": "/Users/amandawinkles/bob/wxO-nit/lib/python3.10/site-packages"
139
+ }
140
+ }
141
+ }
142
+ }
143
+ ```
144
+
145
+ ## Available Tools
146
+
147
+ The server provides the following tools for watsonx Orchestrate:
148
+
149
+ - **get_workday_status**: Check Workday integration status
150
+ - **query_workday_data**: Query data from Workday API endpoints
151
+ - **create_workday_record**: Create new records in Workday
152
+ - **update_workday_record**: Update existing Workday records
153
+ - **search_workday_records**: Search for records with criteria
154
+ - **execute_workday_report**: Run Workday reports and retrieve results
155
+
156
+ ## Available Resources
157
+
158
+ - **workday://config**: Get Workday configuration details
159
+ - **workday://status**: Check connection status to Workday
160
+
161
+ ## Configuration
162
+
163
+ Workday API credentials and configuration should be set via environment variables:
164
+
165
+ ```bash
166
+ export WORKDAY_TENANT="your-tenant"
167
+ export WORKDAY_USERNAME="your-username"
168
+ export WORKDAY_PASSWORD="your-password"
169
+ export WORKDAY_API_VERSION="v1"
170
+ ```
171
+
172
+ ## License
173
+
174
+ MIT License
175
+
176
+ ## Author
177
+
178
+ Amanda Winkles
@@ -0,0 +1,149 @@
1
+ # USB Workday Agent
2
+
3
+ MCP integration for Workday automation using the wxO-nit virtual environment.
4
+
5
+ ## Overview
6
+
7
+ This project provides an MCP (Model Context Protocol) server for automating Workday operations. It leverages the FastMCP framework to expose tools and resources for Workday integration.
8
+
9
+ ## Prerequisites
10
+
11
+ - Python 3.10 or higher
12
+ - wxO-nit virtual environment (located at `../wxO-nit`)
13
+ - MCP-compatible client (e.g., Claude Desktop, Bob)
14
+
15
+ ## Installation
16
+
17
+ ### Using the wxO-nit Virtual Environment
18
+
19
+ This project uses the existing wxO-nit virtual environment:
20
+
21
+ ```bash
22
+ # Activate the wxO-nit virtual environment
23
+ source ../wxO-nit/bin/activate
24
+
25
+ # Install this package in development mode
26
+ pip install -e .
27
+ ```
28
+
29
+ ### Standalone Installation
30
+
31
+ Alternatively, create a new virtual environment:
32
+
33
+ ```bash
34
+ # Create virtual environment
35
+ python -m venv venv
36
+
37
+ # Activate virtual environment
38
+ source venv/bin/activate # On Windows: venv\Scripts\activate
39
+
40
+ # Install dependencies
41
+ pip install -e .
42
+ ```
43
+
44
+ ## Development
45
+
46
+ ### Install Development Dependencies
47
+
48
+ ```bash
49
+ pip install -e ".[dev]"
50
+ ```
51
+
52
+ ### Code Formatting
53
+
54
+ ```bash
55
+ # Format code with black
56
+ black .
57
+
58
+ # Lint with ruff
59
+ ruff check .
60
+ ```
61
+
62
+ ### Testing
63
+
64
+ ```bash
65
+ pytest
66
+ ```
67
+
68
+ ## Project Structure
69
+
70
+ ```
71
+ usb-workday-agent/
72
+ ├── README.md
73
+ ├── pyproject.toml
74
+ ├── setup.py
75
+ └── (source files to be added)
76
+ ```
77
+
78
+ ## Dependencies
79
+
80
+ - **mcp** (>=0.9.0): Model Context Protocol core library
81
+ - **fastmcp** (>=3.0.0): FastMCP framework for building MCP servers
82
+
83
+ ## Running the MCP Server
84
+
85
+ ### Start the Server
86
+
87
+ ```bash
88
+ # Activate the wxO-nit virtual environment
89
+ source ../wxO-nit/bin/activate
90
+
91
+ # Run the server directly
92
+ python3 server.py
93
+
94
+ # Or use the installed command (after pip install -e .)
95
+ usb-workday-agent
96
+ ```
97
+
98
+ ### MCP Client Configuration
99
+
100
+ Add to your MCP client configuration (e.g., Claude Desktop):
101
+
102
+ ```json
103
+ {
104
+ "mcpServers": {
105
+ "usb-workday-agent": {
106
+ "command": "python",
107
+ "args": ["/Users/amandawinkles/bob/usb-workday-agent/server.py"],
108
+ "env": {
109
+ "PYTHONPATH": "/Users/amandawinkles/bob/wxO-nit/lib/python3.10/site-packages"
110
+ }
111
+ }
112
+ }
113
+ }
114
+ ```
115
+
116
+ ## Available Tools
117
+
118
+ The server provides the following tools for watsonx Orchestrate:
119
+
120
+ - **get_workday_status**: Check Workday integration status
121
+ - **query_workday_data**: Query data from Workday API endpoints
122
+ - **create_workday_record**: Create new records in Workday
123
+ - **update_workday_record**: Update existing Workday records
124
+ - **search_workday_records**: Search for records with criteria
125
+ - **execute_workday_report**: Run Workday reports and retrieve results
126
+
127
+ ## Available Resources
128
+
129
+ - **workday://config**: Get Workday configuration details
130
+ - **workday://status**: Check connection status to Workday
131
+
132
+ ## Configuration
133
+
134
+ Workday API credentials and configuration should be set via environment variables:
135
+
136
+ ```bash
137
+ export WORKDAY_TENANT="your-tenant"
138
+ export WORKDAY_USERNAME="your-username"
139
+ export WORKDAY_PASSWORD="your-password"
140
+ export WORKDAY_API_VERSION="v1"
141
+ ```
142
+
143
+ ## License
144
+
145
+ MIT License
146
+
147
+ ## Author
148
+
149
+ Amanda Winkles
@@ -0,0 +1,66 @@
1
+ [build-system]
2
+ requires = ["hatchling"]
3
+ build-backend = "hatchling.build"
4
+
5
+ [project]
6
+ name = "usb-workday-agent"
7
+ version = "1.0.0"
8
+ description = "USB Workday Agent - MCP integration for Workday automation"
9
+ readme = "README.md"
10
+ requires-python = ">=3.10"
11
+ license = {text = "MIT"}
12
+ authors = [
13
+ {name = "Amanda Winkles", email = "amanda.winkles@ibm.com"}
14
+ ]
15
+ keywords = ["mcp", "fastmcp", "workday", "automation", "usb"]
16
+ classifiers = [
17
+ "Development Status :: 4 - Beta",
18
+ "Intended Audience :: Developers",
19
+ "License :: OSI Approved :: MIT License",
20
+ "Programming Language :: Python :: 3",
21
+ "Programming Language :: Python :: 3.10",
22
+ "Programming Language :: Python :: 3.11",
23
+ "Programming Language :: Python :: 3.12",
24
+ "Topic :: Software Development :: Libraries :: Python Modules",
25
+ ]
26
+
27
+ dependencies = [
28
+ "mcp>=0.9.0",
29
+ "fastmcp>=3.0.0",
30
+ "requests>=2.31.0",
31
+ ]
32
+
33
+ [project.optional-dependencies]
34
+ dev = [
35
+ "pytest>=7.0.0",
36
+ "black>=23.0.0",
37
+ "ruff>=0.1.0",
38
+ ]
39
+
40
+ [project.urls]
41
+ Homepage = "https://github.com/amandawinkles/usb-workday-agent"
42
+ Repository = "https://github.com/amandawinkles/usb-workday-agent"
43
+ Issues = "https://github.com/amandawinkles/usb-workday-agent/issues"
44
+
45
+ [project.scripts]
46
+ usb-workday-agent = "usb_workday_agent.server:main"
47
+
48
+ [tool.hatch.build.targets.wheel]
49
+ packages = ["usb_workday_agent"]
50
+ include = ["server.py"]
51
+
52
+ [tool.hatch.build.targets.sdist]
53
+ include = [
54
+ "usb_workday_agent/",
55
+ "server.py",
56
+ "README.md",
57
+ "LICENSE",
58
+ ]
59
+
60
+ [tool.black]
61
+ line-length = 100
62
+ target-version = ["py310"]
63
+
64
+ [tool.ruff]
65
+ line-length = 100
66
+ target-version = "py310"