@tryfinch/finch-api-mcp 6.22.1
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.
- package/LICENSE +201 -0
- package/README.md +247 -0
- package/index.d.mts +2 -0
- package/index.d.mts.map +1 -0
- package/index.d.ts +2 -0
- package/index.d.ts.map +1 -0
- package/index.js +162 -0
- package/index.js.map +1 -0
- package/index.mjs +156 -0
- package/index.mjs.map +1 -0
- package/package.json +50 -0
- package/server.d.mts +30 -0
- package/server.d.mts.map +1 -0
- package/server.d.ts +30 -0
- package/server.d.ts.map +1 -0
- package/server.js +77 -0
- package/server.js.map +1 -0
- package/server.mjs +67 -0
- package/server.mjs.map +1 -0
- package/src/index.ts +190 -0
- package/src/server.ts +89 -0
- package/src/tools/access-tokens/create-access-tokens.ts +40 -0
- package/src/tools/account/disconnect-account.ts +27 -0
- package/src/tools/account/introspect-account.ts +27 -0
- package/src/tools/connect/sessions/new-connect-sessions.ts +81 -0
- package/src/tools/connect/sessions/reauthenticate-connect-sessions.ts +58 -0
- package/src/tools/hris/benefits/create-hris-benefits.ts +67 -0
- package/src/tools/hris/benefits/individuals/enroll-many-benefits-hris-individuals.ts +101 -0
- package/src/tools/hris/benefits/individuals/enrolled-ids-benefits-hris-individuals.ts +31 -0
- package/src/tools/hris/benefits/individuals/retrieve-many-benefits-benefits-hris-individuals.ts +36 -0
- package/src/tools/hris/benefits/individuals/unenroll-many-benefits-hris-individuals.ts +38 -0
- package/src/tools/hris/benefits/list-hris-benefits.ts +27 -0
- package/src/tools/hris/benefits/list-supported-benefits-hris-benefits.ts +27 -0
- package/src/tools/hris/benefits/retrieve-hris-benefits.ts +31 -0
- package/src/tools/hris/benefits/update-hris-benefits.ts +35 -0
- package/src/tools/hris/company/pay-statement-item/list-company-hris-pay-statement-item.ts +58 -0
- package/src/tools/hris/company/pay-statement-item/rules/create-pay-statement-item-company-hris-rules.ts +78 -0
- package/src/tools/hris/company/pay-statement-item/rules/delete-pay-statement-item-company-hris-rules.ts +32 -0
- package/src/tools/hris/company/pay-statement-item/rules/list-pay-statement-item-company-hris-rules.ts +28 -0
- package/src/tools/hris/company/pay-statement-item/rules/update-pay-statement-item-company-hris-rules.ts +35 -0
- package/src/tools/hris/company/retrieve-hris-company.ts +27 -0
- package/src/tools/hris/directory/list-hris-directory.ts +36 -0
- package/src/tools/hris/directory/list-individuals-hris-directory.ts +36 -0
- package/src/tools/hris/documents/list-hris-documents.ts +53 -0
- package/src/tools/hris/documents/retreive-hris-documents.ts +32 -0
- package/src/tools/hris/employments/retrieve-many-hris-employments.ts +43 -0
- package/src/tools/hris/individuals/retrieve-many-hris-individuals.ts +52 -0
- package/src/tools/hris/pay-statements/retrieve-many-hris-pay-statements.ts +51 -0
- package/src/tools/hris/payments/list-hris-payments.ts +38 -0
- package/src/tools/index.ts +165 -0
- package/src/tools/jobs/automated/create-jobs-automated.ts +59 -0
- package/src/tools/jobs/automated/list-jobs-automated.ts +37 -0
- package/src/tools/jobs/automated/retrieve-jobs-automated.ts +31 -0
- package/src/tools/jobs/manual/retrieve-jobs-manual.ts +32 -0
- package/src/tools/payroll/pay-groups/list-payroll-pay-groups.ts +37 -0
- package/src/tools/payroll/pay-groups/retrieve-payroll-pay-groups.ts +31 -0
- package/src/tools/providers/list-providers.ts +27 -0
- package/src/tools/request-forwarding/forward-request-forwarding.ts +54 -0
- package/src/tools/sandbox/company/update-sandbox-company.ts +158 -0
- package/src/tools/sandbox/connections/accounts/create-connections-sandbox-accounts.ts +48 -0
- package/src/tools/sandbox/connections/accounts/update-connections-sandbox-accounts.ts +34 -0
- package/src/tools/sandbox/connections/create-sandbox-connections.ts +48 -0
- package/src/tools/sandbox/directory/create-sandbox-directory.ts +294 -0
- package/src/tools/sandbox/employment/update-sandbox-employment.ts +214 -0
- package/src/tools/sandbox/individual/update-sandbox-individual.ts +149 -0
- package/src/tools/sandbox/jobs/configuration/retrieve-jobs-sandbox-configuration.ts +27 -0
- package/src/tools/sandbox/jobs/configuration/update-jobs-sandbox-configuration.ts +36 -0
- package/src/tools/sandbox/jobs/create-sandbox-jobs.ts +33 -0
- package/src/tools/sandbox/payment/create-sandbox-payment.ts +300 -0
- package/src/tools.ts +1 -0
- package/src/tsconfig.json +11 -0
- package/tools/access-tokens/create-access-tokens.d.mts +24 -0
- package/tools/access-tokens/create-access-tokens.d.mts.map +1 -0
- package/tools/access-tokens/create-access-tokens.d.ts +24 -0
- package/tools/access-tokens/create-access-tokens.d.ts.map +1 -0
- package/tools/access-tokens/create-access-tokens.js +37 -0
- package/tools/access-tokens/create-access-tokens.js.map +1 -0
- package/tools/access-tokens/create-access-tokens.mjs +33 -0
- package/tools/access-tokens/create-access-tokens.mjs.map +1 -0
- package/tools/account/disconnect-account.d.mts +24 -0
- package/tools/account/disconnect-account.d.mts.map +1 -0
- package/tools/account/disconnect-account.d.ts +24 -0
- package/tools/account/disconnect-account.d.ts.map +1 -0
- package/tools/account/disconnect-account.js +24 -0
- package/tools/account/disconnect-account.js.map +1 -0
- package/tools/account/disconnect-account.mjs +20 -0
- package/tools/account/disconnect-account.mjs.map +1 -0
- package/tools/account/introspect-account.d.mts +24 -0
- package/tools/account/introspect-account.d.mts.map +1 -0
- package/tools/account/introspect-account.d.ts +24 -0
- package/tools/account/introspect-account.d.ts.map +1 -0
- package/tools/account/introspect-account.js +24 -0
- package/tools/account/introspect-account.js.map +1 -0
- package/tools/account/introspect-account.mjs +20 -0
- package/tools/account/introspect-account.mjs.map +1 -0
- package/tools/connect/sessions/new-connect-sessions.d.mts +24 -0
- package/tools/connect/sessions/new-connect-sessions.d.mts.map +1 -0
- package/tools/connect/sessions/new-connect-sessions.d.ts +24 -0
- package/tools/connect/sessions/new-connect-sessions.d.ts.map +1 -0
- package/tools/connect/sessions/new-connect-sessions.js +78 -0
- package/tools/connect/sessions/new-connect-sessions.js.map +1 -0
- package/tools/connect/sessions/new-connect-sessions.mjs +74 -0
- package/tools/connect/sessions/new-connect-sessions.mjs.map +1 -0
- package/tools/connect/sessions/reauthenticate-connect-sessions.d.mts +24 -0
- package/tools/connect/sessions/reauthenticate-connect-sessions.d.mts.map +1 -0
- package/tools/connect/sessions/reauthenticate-connect-sessions.d.ts +24 -0
- package/tools/connect/sessions/reauthenticate-connect-sessions.d.ts.map +1 -0
- package/tools/connect/sessions/reauthenticate-connect-sessions.js +55 -0
- package/tools/connect/sessions/reauthenticate-connect-sessions.js.map +1 -0
- package/tools/connect/sessions/reauthenticate-connect-sessions.mjs +51 -0
- package/tools/connect/sessions/reauthenticate-connect-sessions.mjs.map +1 -0
- package/tools/hris/benefits/create-hris-benefits.d.mts +24 -0
- package/tools/hris/benefits/create-hris-benefits.d.mts.map +1 -0
- package/tools/hris/benefits/create-hris-benefits.d.ts +24 -0
- package/tools/hris/benefits/create-hris-benefits.d.ts.map +1 -0
- package/tools/hris/benefits/create-hris-benefits.js +62 -0
- package/tools/hris/benefits/create-hris-benefits.js.map +1 -0
- package/tools/hris/benefits/create-hris-benefits.mjs +58 -0
- package/tools/hris/benefits/create-hris-benefits.mjs.map +1 -0
- package/tools/hris/benefits/individuals/enroll-many-benefits-hris-individuals.d.mts +24 -0
- package/tools/hris/benefits/individuals/enroll-many-benefits-hris-individuals.d.mts.map +1 -0
- package/tools/hris/benefits/individuals/enroll-many-benefits-hris-individuals.d.ts +24 -0
- package/tools/hris/benefits/individuals/enroll-many-benefits-hris-individuals.d.ts.map +1 -0
- package/tools/hris/benefits/individuals/enroll-many-benefits-hris-individuals.js +94 -0
- package/tools/hris/benefits/individuals/enroll-many-benefits-hris-individuals.js.map +1 -0
- package/tools/hris/benefits/individuals/enroll-many-benefits-hris-individuals.mjs +90 -0
- package/tools/hris/benefits/individuals/enroll-many-benefits-hris-individuals.mjs.map +1 -0
- package/tools/hris/benefits/individuals/enrolled-ids-benefits-hris-individuals.d.mts +24 -0
- package/tools/hris/benefits/individuals/enrolled-ids-benefits-hris-individuals.d.mts.map +1 -0
- package/tools/hris/benefits/individuals/enrolled-ids-benefits-hris-individuals.d.ts +24 -0
- package/tools/hris/benefits/individuals/enrolled-ids-benefits-hris-individuals.d.ts.map +1 -0
- package/tools/hris/benefits/individuals/enrolled-ids-benefits-hris-individuals.js +28 -0
- package/tools/hris/benefits/individuals/enrolled-ids-benefits-hris-individuals.js.map +1 -0
- package/tools/hris/benefits/individuals/enrolled-ids-benefits-hris-individuals.mjs +24 -0
- package/tools/hris/benefits/individuals/enrolled-ids-benefits-hris-individuals.mjs.map +1 -0
- package/tools/hris/benefits/individuals/retrieve-many-benefits-benefits-hris-individuals.d.mts +24 -0
- package/tools/hris/benefits/individuals/retrieve-many-benefits-benefits-hris-individuals.d.mts.map +1 -0
- package/tools/hris/benefits/individuals/retrieve-many-benefits-benefits-hris-individuals.d.ts +24 -0
- package/tools/hris/benefits/individuals/retrieve-many-benefits-benefits-hris-individuals.d.ts.map +1 -0
- package/tools/hris/benefits/individuals/retrieve-many-benefits-benefits-hris-individuals.js +32 -0
- package/tools/hris/benefits/individuals/retrieve-many-benefits-benefits-hris-individuals.js.map +1 -0
- package/tools/hris/benefits/individuals/retrieve-many-benefits-benefits-hris-individuals.mjs +28 -0
- package/tools/hris/benefits/individuals/retrieve-many-benefits-benefits-hris-individuals.mjs.map +1 -0
- package/tools/hris/benefits/individuals/unenroll-many-benefits-hris-individuals.d.mts +24 -0
- package/tools/hris/benefits/individuals/unenroll-many-benefits-hris-individuals.d.mts.map +1 -0
- package/tools/hris/benefits/individuals/unenroll-many-benefits-hris-individuals.d.ts +24 -0
- package/tools/hris/benefits/individuals/unenroll-many-benefits-hris-individuals.d.ts.map +1 -0
- package/tools/hris/benefits/individuals/unenroll-many-benefits-hris-individuals.js +35 -0
- package/tools/hris/benefits/individuals/unenroll-many-benefits-hris-individuals.js.map +1 -0
- package/tools/hris/benefits/individuals/unenroll-many-benefits-hris-individuals.mjs +31 -0
- package/tools/hris/benefits/individuals/unenroll-many-benefits-hris-individuals.mjs.map +1 -0
- package/tools/hris/benefits/list-hris-benefits.d.mts +24 -0
- package/tools/hris/benefits/list-hris-benefits.d.mts.map +1 -0
- package/tools/hris/benefits/list-hris-benefits.d.ts +24 -0
- package/tools/hris/benefits/list-hris-benefits.d.ts.map +1 -0
- package/tools/hris/benefits/list-hris-benefits.js +24 -0
- package/tools/hris/benefits/list-hris-benefits.js.map +1 -0
- package/tools/hris/benefits/list-hris-benefits.mjs +20 -0
- package/tools/hris/benefits/list-hris-benefits.mjs.map +1 -0
- package/tools/hris/benefits/list-supported-benefits-hris-benefits.d.mts +24 -0
- package/tools/hris/benefits/list-supported-benefits-hris-benefits.d.mts.map +1 -0
- package/tools/hris/benefits/list-supported-benefits-hris-benefits.d.ts +24 -0
- package/tools/hris/benefits/list-supported-benefits-hris-benefits.d.ts.map +1 -0
- package/tools/hris/benefits/list-supported-benefits-hris-benefits.js +24 -0
- package/tools/hris/benefits/list-supported-benefits-hris-benefits.js.map +1 -0
- package/tools/hris/benefits/list-supported-benefits-hris-benefits.mjs +20 -0
- package/tools/hris/benefits/list-supported-benefits-hris-benefits.mjs.map +1 -0
- package/tools/hris/benefits/retrieve-hris-benefits.d.mts +24 -0
- package/tools/hris/benefits/retrieve-hris-benefits.d.mts.map +1 -0
- package/tools/hris/benefits/retrieve-hris-benefits.d.ts +24 -0
- package/tools/hris/benefits/retrieve-hris-benefits.d.ts.map +1 -0
- package/tools/hris/benefits/retrieve-hris-benefits.js +28 -0
- package/tools/hris/benefits/retrieve-hris-benefits.js.map +1 -0
- package/tools/hris/benefits/retrieve-hris-benefits.mjs +24 -0
- package/tools/hris/benefits/retrieve-hris-benefits.mjs.map +1 -0
- package/tools/hris/benefits/update-hris-benefits.d.mts +24 -0
- package/tools/hris/benefits/update-hris-benefits.d.mts.map +1 -0
- package/tools/hris/benefits/update-hris-benefits.d.ts +24 -0
- package/tools/hris/benefits/update-hris-benefits.d.ts.map +1 -0
- package/tools/hris/benefits/update-hris-benefits.js +32 -0
- package/tools/hris/benefits/update-hris-benefits.js.map +1 -0
- package/tools/hris/benefits/update-hris-benefits.mjs +28 -0
- package/tools/hris/benefits/update-hris-benefits.mjs.map +1 -0
- package/tools/hris/company/pay-statement-item/list-company-hris-pay-statement-item.d.mts +24 -0
- package/tools/hris/company/pay-statement-item/list-company-hris-pay-statement-item.d.mts.map +1 -0
- package/tools/hris/company/pay-statement-item/list-company-hris-pay-statement-item.d.ts +24 -0
- package/tools/hris/company/pay-statement-item/list-company-hris-pay-statement-item.d.ts.map +1 -0
- package/tools/hris/company/pay-statement-item/list-company-hris-pay-statement-item.js +51 -0
- package/tools/hris/company/pay-statement-item/list-company-hris-pay-statement-item.js.map +1 -0
- package/tools/hris/company/pay-statement-item/list-company-hris-pay-statement-item.mjs +47 -0
- package/tools/hris/company/pay-statement-item/list-company-hris-pay-statement-item.mjs.map +1 -0
- package/tools/hris/company/pay-statement-item/rules/create-pay-statement-item-company-hris-rules.d.mts +24 -0
- package/tools/hris/company/pay-statement-item/rules/create-pay-statement-item-company-hris-rules.d.mts.map +1 -0
- package/tools/hris/company/pay-statement-item/rules/create-pay-statement-item-company-hris-rules.d.ts +24 -0
- package/tools/hris/company/pay-statement-item/rules/create-pay-statement-item-company-hris-rules.d.ts.map +1 -0
- package/tools/hris/company/pay-statement-item/rules/create-pay-statement-item-company-hris-rules.js +73 -0
- package/tools/hris/company/pay-statement-item/rules/create-pay-statement-item-company-hris-rules.js.map +1 -0
- package/tools/hris/company/pay-statement-item/rules/create-pay-statement-item-company-hris-rules.mjs +69 -0
- package/tools/hris/company/pay-statement-item/rules/create-pay-statement-item-company-hris-rules.mjs.map +1 -0
- package/tools/hris/company/pay-statement-item/rules/delete-pay-statement-item-company-hris-rules.d.mts +24 -0
- package/tools/hris/company/pay-statement-item/rules/delete-pay-statement-item-company-hris-rules.d.mts.map +1 -0
- package/tools/hris/company/pay-statement-item/rules/delete-pay-statement-item-company-hris-rules.d.ts +24 -0
- package/tools/hris/company/pay-statement-item/rules/delete-pay-statement-item-company-hris-rules.d.ts.map +1 -0
- package/tools/hris/company/pay-statement-item/rules/delete-pay-statement-item-company-hris-rules.js +28 -0
- package/tools/hris/company/pay-statement-item/rules/delete-pay-statement-item-company-hris-rules.js.map +1 -0
- package/tools/hris/company/pay-statement-item/rules/delete-pay-statement-item-company-hris-rules.mjs +24 -0
- package/tools/hris/company/pay-statement-item/rules/delete-pay-statement-item-company-hris-rules.mjs.map +1 -0
- package/tools/hris/company/pay-statement-item/rules/list-pay-statement-item-company-hris-rules.d.mts +24 -0
- package/tools/hris/company/pay-statement-item/rules/list-pay-statement-item-company-hris-rules.d.mts.map +1 -0
- package/tools/hris/company/pay-statement-item/rules/list-pay-statement-item-company-hris-rules.d.ts +24 -0
- package/tools/hris/company/pay-statement-item/rules/list-pay-statement-item-company-hris-rules.d.ts.map +1 -0
- package/tools/hris/company/pay-statement-item/rules/list-pay-statement-item-company-hris-rules.js +24 -0
- package/tools/hris/company/pay-statement-item/rules/list-pay-statement-item-company-hris-rules.js.map +1 -0
- package/tools/hris/company/pay-statement-item/rules/list-pay-statement-item-company-hris-rules.mjs +20 -0
- package/tools/hris/company/pay-statement-item/rules/list-pay-statement-item-company-hris-rules.mjs.map +1 -0
- package/tools/hris/company/pay-statement-item/rules/update-pay-statement-item-company-hris-rules.d.mts +24 -0
- package/tools/hris/company/pay-statement-item/rules/update-pay-statement-item-company-hris-rules.d.mts.map +1 -0
- package/tools/hris/company/pay-statement-item/rules/update-pay-statement-item-company-hris-rules.d.ts +24 -0
- package/tools/hris/company/pay-statement-item/rules/update-pay-statement-item-company-hris-rules.d.ts.map +1 -0
- package/tools/hris/company/pay-statement-item/rules/update-pay-statement-item-company-hris-rules.js +31 -0
- package/tools/hris/company/pay-statement-item/rules/update-pay-statement-item-company-hris-rules.js.map +1 -0
- package/tools/hris/company/pay-statement-item/rules/update-pay-statement-item-company-hris-rules.mjs +27 -0
- package/tools/hris/company/pay-statement-item/rules/update-pay-statement-item-company-hris-rules.mjs.map +1 -0
- package/tools/hris/company/retrieve-hris-company.d.mts +24 -0
- package/tools/hris/company/retrieve-hris-company.d.mts.map +1 -0
- package/tools/hris/company/retrieve-hris-company.d.ts +24 -0
- package/tools/hris/company/retrieve-hris-company.d.ts.map +1 -0
- package/tools/hris/company/retrieve-hris-company.js +24 -0
- package/tools/hris/company/retrieve-hris-company.js.map +1 -0
- package/tools/hris/company/retrieve-hris-company.mjs +20 -0
- package/tools/hris/company/retrieve-hris-company.mjs.map +1 -0
- package/tools/hris/directory/list-hris-directory.d.mts +24 -0
- package/tools/hris/directory/list-hris-directory.d.mts.map +1 -0
- package/tools/hris/directory/list-hris-directory.d.ts +24 -0
- package/tools/hris/directory/list-hris-directory.d.ts.map +1 -0
- package/tools/hris/directory/list-hris-directory.js +33 -0
- package/tools/hris/directory/list-hris-directory.js.map +1 -0
- package/tools/hris/directory/list-hris-directory.mjs +29 -0
- package/tools/hris/directory/list-hris-directory.mjs.map +1 -0
- package/tools/hris/directory/list-individuals-hris-directory.d.mts +24 -0
- package/tools/hris/directory/list-individuals-hris-directory.d.mts.map +1 -0
- package/tools/hris/directory/list-individuals-hris-directory.d.ts +24 -0
- package/tools/hris/directory/list-individuals-hris-directory.d.ts.map +1 -0
- package/tools/hris/directory/list-individuals-hris-directory.js +33 -0
- package/tools/hris/directory/list-individuals-hris-directory.js.map +1 -0
- package/tools/hris/directory/list-individuals-hris-directory.mjs +29 -0
- package/tools/hris/directory/list-individuals-hris-directory.mjs.map +1 -0
- package/tools/hris/documents/list-hris-documents.d.mts +24 -0
- package/tools/hris/documents/list-hris-documents.d.mts.map +1 -0
- package/tools/hris/documents/list-hris-documents.d.ts +24 -0
- package/tools/hris/documents/list-hris-documents.d.ts.map +1 -0
- package/tools/hris/documents/list-hris-documents.js +48 -0
- package/tools/hris/documents/list-hris-documents.js.map +1 -0
- package/tools/hris/documents/list-hris-documents.mjs +44 -0
- package/tools/hris/documents/list-hris-documents.mjs.map +1 -0
- package/tools/hris/documents/retreive-hris-documents.d.mts +24 -0
- package/tools/hris/documents/retreive-hris-documents.d.mts.map +1 -0
- package/tools/hris/documents/retreive-hris-documents.d.ts +24 -0
- package/tools/hris/documents/retreive-hris-documents.d.ts.map +1 -0
- package/tools/hris/documents/retreive-hris-documents.js +28 -0
- package/tools/hris/documents/retreive-hris-documents.js.map +1 -0
- package/tools/hris/documents/retreive-hris-documents.mjs +24 -0
- package/tools/hris/documents/retreive-hris-documents.mjs.map +1 -0
- package/tools/hris/employments/retrieve-many-hris-employments.d.mts +24 -0
- package/tools/hris/employments/retrieve-many-hris-employments.d.mts.map +1 -0
- package/tools/hris/employments/retrieve-many-hris-employments.d.ts +24 -0
- package/tools/hris/employments/retrieve-many-hris-employments.d.ts.map +1 -0
- package/tools/hris/employments/retrieve-many-hris-employments.js +39 -0
- package/tools/hris/employments/retrieve-many-hris-employments.js.map +1 -0
- package/tools/hris/employments/retrieve-many-hris-employments.mjs +35 -0
- package/tools/hris/employments/retrieve-many-hris-employments.mjs.map +1 -0
- package/tools/hris/individuals/retrieve-many-hris-individuals.d.mts +24 -0
- package/tools/hris/individuals/retrieve-many-hris-individuals.d.mts.map +1 -0
- package/tools/hris/individuals/retrieve-many-hris-individuals.d.ts +24 -0
- package/tools/hris/individuals/retrieve-many-hris-individuals.d.ts.map +1 -0
- package/tools/hris/individuals/retrieve-many-hris-individuals.js +49 -0
- package/tools/hris/individuals/retrieve-many-hris-individuals.js.map +1 -0
- package/tools/hris/individuals/retrieve-many-hris-individuals.mjs +45 -0
- package/tools/hris/individuals/retrieve-many-hris-individuals.mjs.map +1 -0
- package/tools/hris/pay-statements/retrieve-many-hris-pay-statements.d.mts +24 -0
- package/tools/hris/pay-statements/retrieve-many-hris-pay-statements.d.mts.map +1 -0
- package/tools/hris/pay-statements/retrieve-many-hris-pay-statements.d.ts +24 -0
- package/tools/hris/pay-statements/retrieve-many-hris-pay-statements.d.ts.map +1 -0
- package/tools/hris/pay-statements/retrieve-many-hris-pay-statements.js +47 -0
- package/tools/hris/pay-statements/retrieve-many-hris-pay-statements.js.map +1 -0
- package/tools/hris/pay-statements/retrieve-many-hris-pay-statements.mjs +43 -0
- package/tools/hris/pay-statements/retrieve-many-hris-pay-statements.mjs.map +1 -0
- package/tools/hris/payments/list-hris-payments.d.mts +24 -0
- package/tools/hris/payments/list-hris-payments.d.mts.map +1 -0
- package/tools/hris/payments/list-hris-payments.d.ts +24 -0
- package/tools/hris/payments/list-hris-payments.d.ts.map +1 -0
- package/tools/hris/payments/list-hris-payments.js +35 -0
- package/tools/hris/payments/list-hris-payments.js.map +1 -0
- package/tools/hris/payments/list-hris-payments.mjs +31 -0
- package/tools/hris/payments/list-hris-payments.mjs.map +1 -0
- package/tools/index.d.mts +21 -0
- package/tools/index.d.mts.map +1 -0
- package/tools/index.d.ts +21 -0
- package/tools/index.d.ts.map +1 -0
- package/tools/index.js +140 -0
- package/tools/index.js.map +1 -0
- package/tools/index.mjs +133 -0
- package/tools/index.mjs.map +1 -0
- package/tools/jobs/automated/create-jobs-automated.d.mts +24 -0
- package/tools/jobs/automated/create-jobs-automated.d.mts.map +1 -0
- package/tools/jobs/automated/create-jobs-automated.d.ts +24 -0
- package/tools/jobs/automated/create-jobs-automated.d.ts.map +1 -0
- package/tools/jobs/automated/create-jobs-automated.js +55 -0
- package/tools/jobs/automated/create-jobs-automated.js.map +1 -0
- package/tools/jobs/automated/create-jobs-automated.mjs +51 -0
- package/tools/jobs/automated/create-jobs-automated.mjs.map +1 -0
- package/tools/jobs/automated/list-jobs-automated.d.mts +24 -0
- package/tools/jobs/automated/list-jobs-automated.d.mts.map +1 -0
- package/tools/jobs/automated/list-jobs-automated.d.ts +24 -0
- package/tools/jobs/automated/list-jobs-automated.d.ts.map +1 -0
- package/tools/jobs/automated/list-jobs-automated.js +33 -0
- package/tools/jobs/automated/list-jobs-automated.js.map +1 -0
- package/tools/jobs/automated/list-jobs-automated.mjs +29 -0
- package/tools/jobs/automated/list-jobs-automated.mjs.map +1 -0
- package/tools/jobs/automated/retrieve-jobs-automated.d.mts +24 -0
- package/tools/jobs/automated/retrieve-jobs-automated.d.mts.map +1 -0
- package/tools/jobs/automated/retrieve-jobs-automated.d.ts +24 -0
- package/tools/jobs/automated/retrieve-jobs-automated.d.ts.map +1 -0
- package/tools/jobs/automated/retrieve-jobs-automated.js +28 -0
- package/tools/jobs/automated/retrieve-jobs-automated.js.map +1 -0
- package/tools/jobs/automated/retrieve-jobs-automated.mjs +24 -0
- package/tools/jobs/automated/retrieve-jobs-automated.mjs.map +1 -0
- package/tools/jobs/manual/retrieve-jobs-manual.d.mts +24 -0
- package/tools/jobs/manual/retrieve-jobs-manual.d.mts.map +1 -0
- package/tools/jobs/manual/retrieve-jobs-manual.d.ts +24 -0
- package/tools/jobs/manual/retrieve-jobs-manual.d.ts.map +1 -0
- package/tools/jobs/manual/retrieve-jobs-manual.js +28 -0
- package/tools/jobs/manual/retrieve-jobs-manual.js.map +1 -0
- package/tools/jobs/manual/retrieve-jobs-manual.mjs +24 -0
- package/tools/jobs/manual/retrieve-jobs-manual.mjs.map +1 -0
- package/tools/payroll/pay-groups/list-payroll-pay-groups.d.mts +24 -0
- package/tools/payroll/pay-groups/list-payroll-pay-groups.d.mts.map +1 -0
- package/tools/payroll/pay-groups/list-payroll-pay-groups.d.ts +24 -0
- package/tools/payroll/pay-groups/list-payroll-pay-groups.d.ts.map +1 -0
- package/tools/payroll/pay-groups/list-payroll-pay-groups.js +34 -0
- package/tools/payroll/pay-groups/list-payroll-pay-groups.js.map +1 -0
- package/tools/payroll/pay-groups/list-payroll-pay-groups.mjs +30 -0
- package/tools/payroll/pay-groups/list-payroll-pay-groups.mjs.map +1 -0
- package/tools/payroll/pay-groups/retrieve-payroll-pay-groups.d.mts +24 -0
- package/tools/payroll/pay-groups/retrieve-payroll-pay-groups.d.mts.map +1 -0
- package/tools/payroll/pay-groups/retrieve-payroll-pay-groups.d.ts +24 -0
- package/tools/payroll/pay-groups/retrieve-payroll-pay-groups.d.ts.map +1 -0
- package/tools/payroll/pay-groups/retrieve-payroll-pay-groups.js +28 -0
- package/tools/payroll/pay-groups/retrieve-payroll-pay-groups.js.map +1 -0
- package/tools/payroll/pay-groups/retrieve-payroll-pay-groups.mjs +24 -0
- package/tools/payroll/pay-groups/retrieve-payroll-pay-groups.mjs.map +1 -0
- package/tools/providers/list-providers.d.mts +24 -0
- package/tools/providers/list-providers.d.mts.map +1 -0
- package/tools/providers/list-providers.d.ts +24 -0
- package/tools/providers/list-providers.d.ts.map +1 -0
- package/tools/providers/list-providers.js +24 -0
- package/tools/providers/list-providers.js.map +1 -0
- package/tools/providers/list-providers.mjs +20 -0
- package/tools/providers/list-providers.mjs.map +1 -0
- package/tools/request-forwarding/forward-request-forwarding.d.mts +24 -0
- package/tools/request-forwarding/forward-request-forwarding.d.mts.map +1 -0
- package/tools/request-forwarding/forward-request-forwarding.d.ts +24 -0
- package/tools/request-forwarding/forward-request-forwarding.d.ts.map +1 -0
- package/tools/request-forwarding/forward-request-forwarding.js +45 -0
- package/tools/request-forwarding/forward-request-forwarding.js.map +1 -0
- package/tools/request-forwarding/forward-request-forwarding.mjs +41 -0
- package/tools/request-forwarding/forward-request-forwarding.mjs.map +1 -0
- package/tools/sandbox/company/update-sandbox-company.d.mts +24 -0
- package/tools/sandbox/company/update-sandbox-company.d.mts.map +1 -0
- package/tools/sandbox/company/update-sandbox-company.d.ts +24 -0
- package/tools/sandbox/company/update-sandbox-company.d.ts.map +1 -0
- package/tools/sandbox/company/update-sandbox-company.js +154 -0
- package/tools/sandbox/company/update-sandbox-company.js.map +1 -0
- package/tools/sandbox/company/update-sandbox-company.mjs +150 -0
- package/tools/sandbox/company/update-sandbox-company.mjs.map +1 -0
- package/tools/sandbox/connections/accounts/create-connections-sandbox-accounts.d.mts +24 -0
- package/tools/sandbox/connections/accounts/create-connections-sandbox-accounts.d.mts.map +1 -0
- package/tools/sandbox/connections/accounts/create-connections-sandbox-accounts.d.ts +24 -0
- package/tools/sandbox/connections/accounts/create-connections-sandbox-accounts.d.ts.map +1 -0
- package/tools/sandbox/connections/accounts/create-connections-sandbox-accounts.js +44 -0
- package/tools/sandbox/connections/accounts/create-connections-sandbox-accounts.js.map +1 -0
- package/tools/sandbox/connections/accounts/create-connections-sandbox-accounts.mjs +40 -0
- package/tools/sandbox/connections/accounts/create-connections-sandbox-accounts.mjs.map +1 -0
- package/tools/sandbox/connections/accounts/update-connections-sandbox-accounts.d.mts +24 -0
- package/tools/sandbox/connections/accounts/update-connections-sandbox-accounts.d.mts.map +1 -0
- package/tools/sandbox/connections/accounts/update-connections-sandbox-accounts.d.ts +24 -0
- package/tools/sandbox/connections/accounts/update-connections-sandbox-accounts.d.ts.map +1 -0
- package/tools/sandbox/connections/accounts/update-connections-sandbox-accounts.js +30 -0
- package/tools/sandbox/connections/accounts/update-connections-sandbox-accounts.js.map +1 -0
- package/tools/sandbox/connections/accounts/update-connections-sandbox-accounts.mjs +26 -0
- package/tools/sandbox/connections/accounts/update-connections-sandbox-accounts.mjs.map +1 -0
- package/tools/sandbox/connections/create-sandbox-connections.d.mts +24 -0
- package/tools/sandbox/connections/create-sandbox-connections.d.mts.map +1 -0
- package/tools/sandbox/connections/create-sandbox-connections.d.ts +24 -0
- package/tools/sandbox/connections/create-sandbox-connections.d.ts.map +1 -0
- package/tools/sandbox/connections/create-sandbox-connections.js +44 -0
- package/tools/sandbox/connections/create-sandbox-connections.js.map +1 -0
- package/tools/sandbox/connections/create-sandbox-connections.mjs +40 -0
- package/tools/sandbox/connections/create-sandbox-connections.mjs.map +1 -0
- package/tools/sandbox/directory/create-sandbox-directory.d.mts +24 -0
- package/tools/sandbox/directory/create-sandbox-directory.d.mts.map +1 -0
- package/tools/sandbox/directory/create-sandbox-directory.d.ts +24 -0
- package/tools/sandbox/directory/create-sandbox-directory.d.ts.map +1 -0
- package/tools/sandbox/directory/create-sandbox-directory.js +284 -0
- package/tools/sandbox/directory/create-sandbox-directory.js.map +1 -0
- package/tools/sandbox/directory/create-sandbox-directory.mjs +280 -0
- package/tools/sandbox/directory/create-sandbox-directory.mjs.map +1 -0
- package/tools/sandbox/employment/update-sandbox-employment.d.mts +24 -0
- package/tools/sandbox/employment/update-sandbox-employment.d.mts.map +1 -0
- package/tools/sandbox/employment/update-sandbox-employment.d.ts +24 -0
- package/tools/sandbox/employment/update-sandbox-employment.d.ts.map +1 -0
- package/tools/sandbox/employment/update-sandbox-employment.js +207 -0
- package/tools/sandbox/employment/update-sandbox-employment.js.map +1 -0
- package/tools/sandbox/employment/update-sandbox-employment.mjs +203 -0
- package/tools/sandbox/employment/update-sandbox-employment.mjs.map +1 -0
- package/tools/sandbox/individual/update-sandbox-individual.d.mts +24 -0
- package/tools/sandbox/individual/update-sandbox-individual.d.mts.map +1 -0
- package/tools/sandbox/individual/update-sandbox-individual.d.ts +24 -0
- package/tools/sandbox/individual/update-sandbox-individual.d.ts.map +1 -0
- package/tools/sandbox/individual/update-sandbox-individual.js +144 -0
- package/tools/sandbox/individual/update-sandbox-individual.js.map +1 -0
- package/tools/sandbox/individual/update-sandbox-individual.mjs +140 -0
- package/tools/sandbox/individual/update-sandbox-individual.mjs.map +1 -0
- package/tools/sandbox/jobs/configuration/retrieve-jobs-sandbox-configuration.d.mts +24 -0
- package/tools/sandbox/jobs/configuration/retrieve-jobs-sandbox-configuration.d.mts.map +1 -0
- package/tools/sandbox/jobs/configuration/retrieve-jobs-sandbox-configuration.d.ts +24 -0
- package/tools/sandbox/jobs/configuration/retrieve-jobs-sandbox-configuration.d.ts.map +1 -0
- package/tools/sandbox/jobs/configuration/retrieve-jobs-sandbox-configuration.js +24 -0
- package/tools/sandbox/jobs/configuration/retrieve-jobs-sandbox-configuration.js.map +1 -0
- package/tools/sandbox/jobs/configuration/retrieve-jobs-sandbox-configuration.mjs +20 -0
- package/tools/sandbox/jobs/configuration/retrieve-jobs-sandbox-configuration.mjs.map +1 -0
- package/tools/sandbox/jobs/configuration/update-jobs-sandbox-configuration.d.mts +24 -0
- package/tools/sandbox/jobs/configuration/update-jobs-sandbox-configuration.d.mts.map +1 -0
- package/tools/sandbox/jobs/configuration/update-jobs-sandbox-configuration.d.ts +24 -0
- package/tools/sandbox/jobs/configuration/update-jobs-sandbox-configuration.d.ts.map +1 -0
- package/tools/sandbox/jobs/configuration/update-jobs-sandbox-configuration.js +33 -0
- package/tools/sandbox/jobs/configuration/update-jobs-sandbox-configuration.js.map +1 -0
- package/tools/sandbox/jobs/configuration/update-jobs-sandbox-configuration.mjs +29 -0
- package/tools/sandbox/jobs/configuration/update-jobs-sandbox-configuration.mjs.map +1 -0
- package/tools/sandbox/jobs/create-sandbox-jobs.d.mts +24 -0
- package/tools/sandbox/jobs/create-sandbox-jobs.d.mts.map +1 -0
- package/tools/sandbox/jobs/create-sandbox-jobs.d.ts +24 -0
- package/tools/sandbox/jobs/create-sandbox-jobs.d.ts.map +1 -0
- package/tools/sandbox/jobs/create-sandbox-jobs.js +30 -0
- package/tools/sandbox/jobs/create-sandbox-jobs.js.map +1 -0
- package/tools/sandbox/jobs/create-sandbox-jobs.mjs +26 -0
- package/tools/sandbox/jobs/create-sandbox-jobs.mjs.map +1 -0
- package/tools/sandbox/payment/create-sandbox-payment.d.mts +24 -0
- package/tools/sandbox/payment/create-sandbox-payment.d.mts.map +1 -0
- package/tools/sandbox/payment/create-sandbox-payment.d.ts +24 -0
- package/tools/sandbox/payment/create-sandbox-payment.d.ts.map +1 -0
- package/tools/sandbox/payment/create-sandbox-payment.js +292 -0
- package/tools/sandbox/payment/create-sandbox-payment.js.map +1 -0
- package/tools/sandbox/payment/create-sandbox-payment.mjs +288 -0
- package/tools/sandbox/payment/create-sandbox-payment.mjs.map +1 -0
- package/tools.d.mts +2 -0
- package/tools.d.mts.map +1 -0
- package/tools.d.ts +2 -0
- package/tools.d.ts.map +1 -0
- package/tools.js +18 -0
- package/tools.js.map +1 -0
- package/tools.mjs +2 -0
- package/tools.mjs.map +1 -0
package/index.mjs
ADDED
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
|
|
2
|
+
import yargs from 'yargs';
|
|
3
|
+
import { hideBin } from 'yargs/helpers';
|
|
4
|
+
import { init, server } from "./server.mjs";
|
|
5
|
+
import { endpoints, query } from "./tools.mjs";
|
|
6
|
+
async function main() {
|
|
7
|
+
const opts = yargs(hideBin(process.argv))
|
|
8
|
+
.option('tool', {
|
|
9
|
+
type: 'string',
|
|
10
|
+
array: true,
|
|
11
|
+
description: 'Include tools matching the specified names',
|
|
12
|
+
})
|
|
13
|
+
.option('resource', {
|
|
14
|
+
type: 'string',
|
|
15
|
+
array: true,
|
|
16
|
+
description: 'Include tools matching the specified resources',
|
|
17
|
+
})
|
|
18
|
+
.option('operation', {
|
|
19
|
+
type: 'string',
|
|
20
|
+
array: true,
|
|
21
|
+
choices: ['read', 'write'],
|
|
22
|
+
description: 'Include tools matching the specified operations',
|
|
23
|
+
})
|
|
24
|
+
.option('tag', {
|
|
25
|
+
type: 'string',
|
|
26
|
+
array: true,
|
|
27
|
+
description: 'Include tools with the specified tags',
|
|
28
|
+
})
|
|
29
|
+
.option('no-tool', {
|
|
30
|
+
type: 'string',
|
|
31
|
+
array: true,
|
|
32
|
+
description: 'Exclude tools matching the specified names',
|
|
33
|
+
})
|
|
34
|
+
.option('no-resource', {
|
|
35
|
+
type: 'string',
|
|
36
|
+
array: true,
|
|
37
|
+
description: 'Exclude tools matching the specified resources',
|
|
38
|
+
})
|
|
39
|
+
.option('no-operation', {
|
|
40
|
+
type: 'string',
|
|
41
|
+
array: true,
|
|
42
|
+
description: 'Exclude tools matching the specified operations',
|
|
43
|
+
})
|
|
44
|
+
.option('no-tag', {
|
|
45
|
+
type: 'string',
|
|
46
|
+
array: true,
|
|
47
|
+
description: 'Exclude tools with the specified tags',
|
|
48
|
+
})
|
|
49
|
+
.option('list', {
|
|
50
|
+
type: 'boolean',
|
|
51
|
+
description: 'List all tools and exit',
|
|
52
|
+
})
|
|
53
|
+
.help();
|
|
54
|
+
for (const [command, desc] of examples()) {
|
|
55
|
+
opts.example(command, desc);
|
|
56
|
+
}
|
|
57
|
+
const argv = opts.parseSync();
|
|
58
|
+
if (argv.list) {
|
|
59
|
+
listAllTools();
|
|
60
|
+
return;
|
|
61
|
+
}
|
|
62
|
+
const filters = [];
|
|
63
|
+
for (const tag of argv.tag || []) {
|
|
64
|
+
filters.push({ type: 'tag', op: 'include', value: tag });
|
|
65
|
+
}
|
|
66
|
+
for (const tag of argv.noTag || []) {
|
|
67
|
+
filters.push({ type: 'tag', op: 'exclude', value: tag });
|
|
68
|
+
}
|
|
69
|
+
for (const resource of argv.resource || []) {
|
|
70
|
+
filters.push({ type: 'resource', op: 'include', value: resource });
|
|
71
|
+
}
|
|
72
|
+
for (const resource of argv.noResource || []) {
|
|
73
|
+
filters.push({ type: 'resource', op: 'exclude', value: resource });
|
|
74
|
+
}
|
|
75
|
+
for (const tool of argv.tool || []) {
|
|
76
|
+
filters.push({ type: 'tool', op: 'include', value: tool });
|
|
77
|
+
}
|
|
78
|
+
for (const tool of argv.noTool || []) {
|
|
79
|
+
filters.push({ type: 'tool', op: 'exclude', value: tool });
|
|
80
|
+
}
|
|
81
|
+
for (const operation of argv.operation || []) {
|
|
82
|
+
filters.push({ type: 'operation', op: 'include', value: operation });
|
|
83
|
+
}
|
|
84
|
+
for (const operation of argv.noOperation || []) {
|
|
85
|
+
filters.push({ type: 'operation', op: 'exclude', value: operation });
|
|
86
|
+
}
|
|
87
|
+
const filteredEndpoints = query(filters, endpoints);
|
|
88
|
+
if (filteredEndpoints.length === 0) {
|
|
89
|
+
console.error('No tools match the provided filters.');
|
|
90
|
+
process.exit(1);
|
|
91
|
+
}
|
|
92
|
+
console.error(`MCP Server starting with ${filteredEndpoints.length} tools:`, filteredEndpoints.map((e) => e.tool.name));
|
|
93
|
+
init({ server, endpoints: filteredEndpoints });
|
|
94
|
+
const transport = new StdioServerTransport();
|
|
95
|
+
await server.connect(transport);
|
|
96
|
+
console.error('MCP Server running on stdio');
|
|
97
|
+
}
|
|
98
|
+
if (require.main === module) {
|
|
99
|
+
main().catch((error) => {
|
|
100
|
+
console.error('Fatal error in main():', error);
|
|
101
|
+
process.exit(1);
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
function listAllTools() {
|
|
105
|
+
if (endpoints.length === 0) {
|
|
106
|
+
console.error('No tools available.');
|
|
107
|
+
return;
|
|
108
|
+
}
|
|
109
|
+
console.error('Available tools:\n');
|
|
110
|
+
// Group endpoints by resource
|
|
111
|
+
const resourceGroups = new Map();
|
|
112
|
+
for (const endpoint of endpoints) {
|
|
113
|
+
const resource = endpoint.metadata.resource;
|
|
114
|
+
if (!resourceGroups.has(resource)) {
|
|
115
|
+
resourceGroups.set(resource, []);
|
|
116
|
+
}
|
|
117
|
+
resourceGroups.get(resource).push(endpoint);
|
|
118
|
+
}
|
|
119
|
+
// Sort resources alphabetically
|
|
120
|
+
const sortedResources = Array.from(resourceGroups.keys()).sort();
|
|
121
|
+
// Display hierarchically by resource
|
|
122
|
+
for (const resource of sortedResources) {
|
|
123
|
+
console.error(`Resource: ${resource}`);
|
|
124
|
+
const resourceEndpoints = resourceGroups.get(resource);
|
|
125
|
+
// Sort endpoints by tool name
|
|
126
|
+
resourceEndpoints.sort((a, b) => a.tool.name.localeCompare(b.tool.name));
|
|
127
|
+
for (const endpoint of resourceEndpoints) {
|
|
128
|
+
const { tool, metadata: { operation, tags }, } = endpoint;
|
|
129
|
+
console.error(` - ${tool.name} (${operation}) ${tags.length > 0 ? `tags: ${tags.join(', ')}` : ''}`);
|
|
130
|
+
console.error(` Description: ${tool.description}`);
|
|
131
|
+
}
|
|
132
|
+
console.error('');
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
function examples() {
|
|
136
|
+
const firstEndpoint = endpoints[0];
|
|
137
|
+
const secondEndpoint = endpoints.find((e) => e.metadata.resource !== firstEndpoint.metadata.resource) || endpoints[1];
|
|
138
|
+
const tag = endpoints.find((e) => e.metadata.tags.length > 0)?.metadata.tags[0];
|
|
139
|
+
const otherEndpoint = secondEndpoint || firstEndpoint;
|
|
140
|
+
return [
|
|
141
|
+
[
|
|
142
|
+
`--tool="${firstEndpoint.tool.name}" ${secondEndpoint ? `--tool="${secondEndpoint.tool.name}"` : ''}`,
|
|
143
|
+
'Include tools by name',
|
|
144
|
+
],
|
|
145
|
+
[
|
|
146
|
+
`--resource="${firstEndpoint.metadata.resource}" --operation="read"`,
|
|
147
|
+
'Filter by resource and operation',
|
|
148
|
+
],
|
|
149
|
+
[
|
|
150
|
+
`--resource="${otherEndpoint.metadata.resource}*" --no-tool="${otherEndpoint.tool.name}"`,
|
|
151
|
+
'Use resource wildcards and exclusions',
|
|
152
|
+
],
|
|
153
|
+
...(tag ? [[`--tag="${tag}"`, 'Filter based on tags']] : []),
|
|
154
|
+
];
|
|
155
|
+
}
|
|
156
|
+
//# sourceMappingURL=index.mjs.map
|
package/index.mjs.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.mjs","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":"OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C;OACzE,KAAK,MAAM,OAAO;OAClB,EAAE,OAAO,EAAE,MAAM,eAAe;OAChC,EAAE,IAAI,EAAE,MAAM,EAAE;OAChB,EAAE,SAAS,EAAU,KAAK,EAAE;AAEnC,KAAK,UAAU,IAAI;IACjB,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;SACtC,MAAM,CAAC,MAAM,EAAE;QACd,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,IAAI;QACX,WAAW,EAAE,4CAA4C;KAC1D,CAAC;SACD,MAAM,CAAC,UAAU,EAAE;QAClB,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,IAAI;QACX,WAAW,EAAE,gDAAgD;KAC9D,CAAC;SACD,MAAM,CAAC,WAAW,EAAE;QACnB,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,IAAI;QACX,OAAO,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;QAC1B,WAAW,EAAE,iDAAiD;KAC/D,CAAC;SACD,MAAM,CAAC,KAAK,EAAE;QACb,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,IAAI;QACX,WAAW,EAAE,uCAAuC;KACrD,CAAC;SACD,MAAM,CAAC,SAAS,EAAE;QACjB,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,IAAI;QACX,WAAW,EAAE,4CAA4C;KAC1D,CAAC;SACD,MAAM,CAAC,aAAa,EAAE;QACrB,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,IAAI;QACX,WAAW,EAAE,gDAAgD;KAC9D,CAAC;SACD,MAAM,CAAC,cAAc,EAAE;QACtB,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,IAAI;QACX,WAAW,EAAE,iDAAiD;KAC/D,CAAC;SACD,MAAM,CAAC,QAAQ,EAAE;QAChB,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,IAAI;QACX,WAAW,EAAE,uCAAuC;KACrD,CAAC;SACD,MAAM,CAAC,MAAM,EAAE;QACd,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,yBAAyB;KACvC,CAAC;SACD,IAAI,EAAE,CAAC;IAEV,KAAK,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,QAAQ,EAAE,EAAE;QACxC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;KAC7B;IAED,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;IAE9B,IAAI,IAAI,CAAC,IAAI,EAAE;QACb,YAAY,EAAE,CAAC;QACf,OAAO;KACR;IACD,MAAM,OAAO,GAAa,EAAE,CAAC;IAE7B,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,GAAG,IAAI,EAAE,EAAE;QAChC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;KAC1D;IAED,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,KAAK,IAAI,EAAE,EAAE;QAClC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;KAC1D;IAED,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,QAAQ,IAAI,EAAE,EAAE;QAC1C,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;KACpE;IAED,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,UAAU,IAAI,EAAE,EAAE;QAC5C,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;KACpE;IAED,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,EAAE,EAAE;QAClC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;KAC5D;IAED,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,MAAM,IAAI,EAAE,EAAE;QACpC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;KAC5D;IAED,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,SAAS,IAAI,EAAE,EAAE;QAC5C,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;KACtE;IAED,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,WAAW,IAAI,EAAE,EAAE;QAC9C,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;KACtE;IAED,MAAM,iBAAiB,GAAG,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAEpD,IAAI,iBAAiB,CAAC,MAAM,KAAK,CAAC,EAAE;QAClC,OAAO,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;QACtD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;KACjB;IAED,OAAO,CAAC,KAAK,CACX,4BAA4B,iBAAiB,CAAC,MAAM,SAAS,EAC7D,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAC1C,CAAC;IAEF,IAAI,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,iBAAiB,EAAE,CAAC,CAAC;IAE/C,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAChC,OAAO,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;AAC/C,CAAC;AAED,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE;IAC3B,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;QACrB,OAAO,CAAC,KAAK,CAAC,wBAAwB,EAAE,KAAK,CAAC,CAAC;QAC/C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;CACJ;AAED,SAAS,YAAY;IACnB,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;QAC1B,OAAO,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;QACrC,OAAO;KACR;IACD,OAAO,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;IAEpC,8BAA8B;IAC9B,MAAM,cAAc,GAAG,IAAI,GAAG,EAA4B,CAAC;IAE3D,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;QAChC,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAC5C,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;YACjC,cAAc,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;SAClC;QACD,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;KAC9C;IAED,gCAAgC;IAChC,MAAM,eAAe,GAAG,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAEjE,qCAAqC;IACrC,KAAK,MAAM,QAAQ,IAAI,eAAe,EAAE;QACtC,OAAO,CAAC,KAAK,CAAC,aAAa,QAAQ,EAAE,CAAC,CAAC;QAEvC,MAAM,iBAAiB,GAAG,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAE,CAAC;QACxD,8BAA8B;QAC9B,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAEzE,KAAK,MAAM,QAAQ,IAAI,iBAAiB,EAAE;YACxC,MAAM,EACJ,IAAI,EACJ,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,GAC9B,GAAG,QAAQ,CAAC;YAEb,OAAO,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,IAAI,KAAK,SAAS,KAAK,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACtG,OAAO,CAAC,KAAK,CAAC,oBAAoB,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;SACvD;QACD,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;KACnB;AACH,CAAC;AAED,SAAS,QAAQ;IACf,MAAM,aAAa,GAAG,SAAS,CAAC,CAAC,CAAE,CAAC;IACpC,MAAM,cAAc,GAClB,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,KAAK,aAAa,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC;IACjG,MAAM,GAAG,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAChF,MAAM,aAAa,GAAG,cAAc,IAAI,aAAa,CAAC;IAEtD,OAAO;QACL;YACE,WAAW,aAAa,CAAC,IAAI,CAAC,IAAI,KAAK,cAAc,CAAC,CAAC,CAAC,WAAW,cAAc,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACrG,uBAAuB;SACxB;QACD;YACE,eAAe,aAAa,CAAC,QAAQ,CAAC,QAAQ,sBAAsB;YACpE,kCAAkC;SACnC;QACD;YACE,eAAe,aAAa,CAAC,QAAQ,CAAC,QAAQ,iBAAiB,aAAa,CAAC,IAAI,CAAC,IAAI,GAAG;YACzF,uCAAuC;SACxC;QACD,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,GAAG,GAAG,EAAE,sBAAsB,CAAqB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;KACjF,CAAC;AACJ,CAAC"}
|
package/package.json
ADDED
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@tryfinch/finch-api-mcp",
|
|
3
|
+
"version": "6.22.1",
|
|
4
|
+
"description": "The official MCP Server for the Finch API",
|
|
5
|
+
"author": "Finch <founders@tryfinch.com>",
|
|
6
|
+
"types": "./index.d.ts",
|
|
7
|
+
"main": "./index.js",
|
|
8
|
+
"type": "commonjs",
|
|
9
|
+
"repository": {
|
|
10
|
+
"type": "git",
|
|
11
|
+
"url": "git+https://github.com/Finch-API/finch-api-node.git",
|
|
12
|
+
"directory": "packages/mcp-server"
|
|
13
|
+
},
|
|
14
|
+
"homepage": "https://github.com/Finch-API/finch-api-node/tree/main/packages/mcp-server#readme",
|
|
15
|
+
"license": "Apache-2.0",
|
|
16
|
+
"packageManager": "yarn@1.22.22",
|
|
17
|
+
"private": false,
|
|
18
|
+
"scripts": {
|
|
19
|
+
"test": "jest",
|
|
20
|
+
"build": "bash ./build",
|
|
21
|
+
"format": "prettier --write --cache --cache-strategy metadata . !dist",
|
|
22
|
+
"tsn": "ts-node -r tsconfig-paths/register",
|
|
23
|
+
"lint": "eslint --ext ts,js .",
|
|
24
|
+
"fix": "eslint --fix --ext ts,js ."
|
|
25
|
+
},
|
|
26
|
+
"dependencies": {
|
|
27
|
+
"@tryfinch/finch-api": "^6.22.1",
|
|
28
|
+
"@modelcontextprotocol/sdk": "^1.6.1",
|
|
29
|
+
"yargs": "^17.7.2"
|
|
30
|
+
},
|
|
31
|
+
"bin": {
|
|
32
|
+
"mcp-server": "./index.js"
|
|
33
|
+
},
|
|
34
|
+
"imports": {
|
|
35
|
+
"@tryfinch/finch-api-mcp": ".",
|
|
36
|
+
"@tryfinch/finch-api-mcp/*": "./src/*"
|
|
37
|
+
},
|
|
38
|
+
"exports": {
|
|
39
|
+
".": {
|
|
40
|
+
"require": "./index.js",
|
|
41
|
+
"default": "./index.mjs"
|
|
42
|
+
},
|
|
43
|
+
"./*.mjs": "./*.mjs",
|
|
44
|
+
"./*.js": "./*.js",
|
|
45
|
+
"./*": {
|
|
46
|
+
"require": "./*.js",
|
|
47
|
+
"default": "./*.mjs"
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
}
|
package/server.d.mts
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { Server } from '@modelcontextprotocol/sdk/server/index.js';
|
|
2
|
+
import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
3
|
+
import { HandlerFunction } from "./tools.mjs";
|
|
4
|
+
import { Tool } from '@modelcontextprotocol/sdk/types.js';
|
|
5
|
+
import Finch from '@tryfinch/finch-api';
|
|
6
|
+
export { endpoints } from "./tools.mjs";
|
|
7
|
+
export declare const server: McpServer;
|
|
8
|
+
/**
|
|
9
|
+
* Initializes the provided MCP Server with the given tools and handlers.
|
|
10
|
+
* If not provided, the default client, tools and handlers will be used.
|
|
11
|
+
*/
|
|
12
|
+
export declare function init(params: {
|
|
13
|
+
server: Server | McpServer;
|
|
14
|
+
client?: Finch;
|
|
15
|
+
endpoints?: {
|
|
16
|
+
tool: Tool;
|
|
17
|
+
handler: HandlerFunction;
|
|
18
|
+
}[];
|
|
19
|
+
}): void;
|
|
20
|
+
/**
|
|
21
|
+
* Runs the provided handler with the given client and arguments.
|
|
22
|
+
*/
|
|
23
|
+
export declare function executeHandler(handler: HandlerFunction, client: Finch, args: Record<string, unknown> | undefined): Promise<{
|
|
24
|
+
content: {
|
|
25
|
+
type: string;
|
|
26
|
+
text: string;
|
|
27
|
+
}[];
|
|
28
|
+
}>;
|
|
29
|
+
export declare const readEnv: (env: string) => string;
|
|
30
|
+
//# sourceMappingURL=server.d.mts.map
|
package/server.d.mts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server.d.mts","sourceRoot":"","sources":["src/server.ts"],"names":[],"mappings":"OAEO,EAAE,MAAM,EAAE,MAAM,2CAA2C;OAC3D,EAAE,SAAS,EAAE,MAAM,yCAAyC;OAC5D,EAAa,eAAe,EAAE;OAC9B,EAAiD,IAAI,EAAE,MAAM,oCAAoC;OACjG,KAAK,MAAM,qBAAqB;OAChC,EAAE,SAAS,EAAE;AAGpB,eAAO,MAAM,MAAM,WAUlB,CAAC;AAEF;;;GAGG;AACH,wBAAgB,IAAI,CAAC,MAAM,EAAE;IAC3B,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,MAAM,CAAC,EAAE,KAAK,CAAC;IACf,SAAS,CAAC,EAAE;QAAE,IAAI,EAAE,IAAI,CAAC;QAAC,OAAO,EAAE,eAAe,CAAA;KAAE,EAAE,CAAC;CACxD,QA0BA;AAED;;GAEG;AACH,wBAAsB,cAAc,CAClC,OAAO,EAAE,eAAe,EACxB,MAAM,EAAE,KAAK,EACb,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;;;;;GAW1C;AAED,eAAO,MAAM,OAAO,QAAS,MAAM,KAAG,MAWrC,CAAC"}
|
package/server.d.ts
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { Server } from '@modelcontextprotocol/sdk/server/index.js';
|
|
2
|
+
import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
3
|
+
import { HandlerFunction } from "./tools.js";
|
|
4
|
+
import { Tool } from '@modelcontextprotocol/sdk/types.js';
|
|
5
|
+
import Finch from '@tryfinch/finch-api';
|
|
6
|
+
export { endpoints } from "./tools.js";
|
|
7
|
+
export declare const server: McpServer;
|
|
8
|
+
/**
|
|
9
|
+
* Initializes the provided MCP Server with the given tools and handlers.
|
|
10
|
+
* If not provided, the default client, tools and handlers will be used.
|
|
11
|
+
*/
|
|
12
|
+
export declare function init(params: {
|
|
13
|
+
server: Server | McpServer;
|
|
14
|
+
client?: Finch;
|
|
15
|
+
endpoints?: {
|
|
16
|
+
tool: Tool;
|
|
17
|
+
handler: HandlerFunction;
|
|
18
|
+
}[];
|
|
19
|
+
}): void;
|
|
20
|
+
/**
|
|
21
|
+
* Runs the provided handler with the given client and arguments.
|
|
22
|
+
*/
|
|
23
|
+
export declare function executeHandler(handler: HandlerFunction, client: Finch, args: Record<string, unknown> | undefined): Promise<{
|
|
24
|
+
content: {
|
|
25
|
+
type: string;
|
|
26
|
+
text: string;
|
|
27
|
+
}[];
|
|
28
|
+
}>;
|
|
29
|
+
export declare const readEnv: (env: string) => string;
|
|
30
|
+
//# sourceMappingURL=server.d.ts.map
|
package/server.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["src/server.ts"],"names":[],"mappings":"OAEO,EAAE,MAAM,EAAE,MAAM,2CAA2C;OAC3D,EAAE,SAAS,EAAE,MAAM,yCAAyC;OAC5D,EAAa,eAAe,EAAE;OAC9B,EAAiD,IAAI,EAAE,MAAM,oCAAoC;OACjG,KAAK,MAAM,qBAAqB;OAChC,EAAE,SAAS,EAAE;AAGpB,eAAO,MAAM,MAAM,WAUlB,CAAC;AAEF;;;GAGG;AACH,wBAAgB,IAAI,CAAC,MAAM,EAAE;IAC3B,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,MAAM,CAAC,EAAE,KAAK,CAAC;IACf,SAAS,CAAC,EAAE;QAAE,IAAI,EAAE,IAAI,CAAC;QAAC,OAAO,EAAE,eAAe,CAAA;KAAE,EAAE,CAAC;CACxD,QA0BA;AAED;;GAEG;AACH,wBAAsB,cAAc,CAClC,OAAO,EAAE,eAAe,EACxB,MAAM,EAAE,KAAK,EACb,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;;;;;GAW1C;AAED,eAAO,MAAM,OAAO,QAAS,MAAM,KAAG,MAWrC,CAAC"}
|
package/server.js
ADDED
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
3
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
4
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
5
|
+
};
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
exports.readEnv = exports.executeHandler = exports.init = exports.server = exports.endpoints = void 0;
|
|
8
|
+
const mcp_js_1 = require("@modelcontextprotocol/sdk/server/mcp.js");
|
|
9
|
+
const tools_1 = require("./tools.js");
|
|
10
|
+
const types_js_1 = require("@modelcontextprotocol/sdk/types.js");
|
|
11
|
+
const finch_api_1 = __importDefault(require("@tryfinch/finch-api"));
|
|
12
|
+
var tools_2 = require("./tools.js");
|
|
13
|
+
Object.defineProperty(exports, "endpoints", { enumerable: true, get: function () { return tools_2.endpoints; } });
|
|
14
|
+
// Create server instance
|
|
15
|
+
exports.server = new mcp_js_1.McpServer({
|
|
16
|
+
name: 'tryfinch_finch_api_api',
|
|
17
|
+
version: '6.22.1',
|
|
18
|
+
}, {
|
|
19
|
+
capabilities: {
|
|
20
|
+
tools: {},
|
|
21
|
+
},
|
|
22
|
+
});
|
|
23
|
+
/**
|
|
24
|
+
* Initializes the provided MCP Server with the given tools and handlers.
|
|
25
|
+
* If not provided, the default client, tools and handlers will be used.
|
|
26
|
+
*/
|
|
27
|
+
function init(params) {
|
|
28
|
+
const server = params.server instanceof mcp_js_1.McpServer ? params.server.server : params.server;
|
|
29
|
+
const providedEndpoints = params.endpoints || tools_1.endpoints;
|
|
30
|
+
const tools = providedEndpoints.map((endpoint) => endpoint.tool);
|
|
31
|
+
const handlers = Object.fromEntries(providedEndpoints.map((endpoint) => [endpoint.tool.name, endpoint.handler]));
|
|
32
|
+
const client = params.client || new finch_api_1.default({});
|
|
33
|
+
server.setRequestHandler(types_js_1.ListToolsRequestSchema, async () => {
|
|
34
|
+
return {
|
|
35
|
+
tools,
|
|
36
|
+
};
|
|
37
|
+
});
|
|
38
|
+
server.setRequestHandler(types_js_1.CallToolRequestSchema, async (request) => {
|
|
39
|
+
const { name, arguments: args } = request.params;
|
|
40
|
+
const handler = handlers[name];
|
|
41
|
+
if (!handler) {
|
|
42
|
+
throw new Error(`Unknown tool: ${name}`);
|
|
43
|
+
}
|
|
44
|
+
return executeHandler(handler, client, args);
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
exports.init = init;
|
|
48
|
+
/**
|
|
49
|
+
* Runs the provided handler with the given client and arguments.
|
|
50
|
+
*/
|
|
51
|
+
async function executeHandler(handler, client, args) {
|
|
52
|
+
const result = await handler(client, args || {});
|
|
53
|
+
return {
|
|
54
|
+
content: [
|
|
55
|
+
{
|
|
56
|
+
type: 'text',
|
|
57
|
+
text: JSON.stringify(result, null, 2),
|
|
58
|
+
},
|
|
59
|
+
],
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
exports.executeHandler = executeHandler;
|
|
63
|
+
const readEnv = (env) => {
|
|
64
|
+
let envValue = undefined;
|
|
65
|
+
if (typeof globalThis.process !== 'undefined') {
|
|
66
|
+
envValue = globalThis.process.env?.[env]?.trim();
|
|
67
|
+
}
|
|
68
|
+
else if (typeof globalThis.Deno !== 'undefined') {
|
|
69
|
+
envValue = globalThis.Deno.env?.get?.(env)?.trim();
|
|
70
|
+
}
|
|
71
|
+
if (envValue === undefined) {
|
|
72
|
+
throw new Error(`Environment variable ${env} is not set`);
|
|
73
|
+
}
|
|
74
|
+
return envValue;
|
|
75
|
+
};
|
|
76
|
+
exports.readEnv = readEnv;
|
|
77
|
+
//# sourceMappingURL=server.js.map
|
package/server.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["src/server.ts"],"names":[],"mappings":"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"}
|
package/server.mjs
ADDED
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
|
+
import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
3
|
+
import { endpoints } from "./tools.mjs";
|
|
4
|
+
import { CallToolRequestSchema, ListToolsRequestSchema } from '@modelcontextprotocol/sdk/types.js';
|
|
5
|
+
import Finch from '@tryfinch/finch-api';
|
|
6
|
+
export { endpoints } from "./tools.mjs";
|
|
7
|
+
// Create server instance
|
|
8
|
+
export const server = new McpServer({
|
|
9
|
+
name: 'tryfinch_finch_api_api',
|
|
10
|
+
version: '6.22.1',
|
|
11
|
+
}, {
|
|
12
|
+
capabilities: {
|
|
13
|
+
tools: {},
|
|
14
|
+
},
|
|
15
|
+
});
|
|
16
|
+
/**
|
|
17
|
+
* Initializes the provided MCP Server with the given tools and handlers.
|
|
18
|
+
* If not provided, the default client, tools and handlers will be used.
|
|
19
|
+
*/
|
|
20
|
+
export function init(params) {
|
|
21
|
+
const server = params.server instanceof McpServer ? params.server.server : params.server;
|
|
22
|
+
const providedEndpoints = params.endpoints || endpoints;
|
|
23
|
+
const tools = providedEndpoints.map((endpoint) => endpoint.tool);
|
|
24
|
+
const handlers = Object.fromEntries(providedEndpoints.map((endpoint) => [endpoint.tool.name, endpoint.handler]));
|
|
25
|
+
const client = params.client || new Finch({});
|
|
26
|
+
server.setRequestHandler(ListToolsRequestSchema, async () => {
|
|
27
|
+
return {
|
|
28
|
+
tools,
|
|
29
|
+
};
|
|
30
|
+
});
|
|
31
|
+
server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
32
|
+
const { name, arguments: args } = request.params;
|
|
33
|
+
const handler = handlers[name];
|
|
34
|
+
if (!handler) {
|
|
35
|
+
throw new Error(`Unknown tool: ${name}`);
|
|
36
|
+
}
|
|
37
|
+
return executeHandler(handler, client, args);
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Runs the provided handler with the given client and arguments.
|
|
42
|
+
*/
|
|
43
|
+
export async function executeHandler(handler, client, args) {
|
|
44
|
+
const result = await handler(client, args || {});
|
|
45
|
+
return {
|
|
46
|
+
content: [
|
|
47
|
+
{
|
|
48
|
+
type: 'text',
|
|
49
|
+
text: JSON.stringify(result, null, 2),
|
|
50
|
+
},
|
|
51
|
+
],
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
export const readEnv = (env) => {
|
|
55
|
+
let envValue = undefined;
|
|
56
|
+
if (typeof globalThis.process !== 'undefined') {
|
|
57
|
+
envValue = globalThis.process.env?.[env]?.trim();
|
|
58
|
+
}
|
|
59
|
+
else if (typeof globalThis.Deno !== 'undefined') {
|
|
60
|
+
envValue = globalThis.Deno.env?.get?.(env)?.trim();
|
|
61
|
+
}
|
|
62
|
+
if (envValue === undefined) {
|
|
63
|
+
throw new Error(`Environment variable ${env} is not set`);
|
|
64
|
+
}
|
|
65
|
+
return envValue;
|
|
66
|
+
};
|
|
67
|
+
//# sourceMappingURL=server.mjs.map
|
package/server.mjs.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"server.mjs","sourceRoot":"","sources":["src/server.ts"],"names":[],"mappings":"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"}
|
package/src/index.ts
ADDED
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
|
|
2
|
+
import yargs from 'yargs';
|
|
3
|
+
import { hideBin } from 'yargs/helpers';
|
|
4
|
+
import { init, server } from './server';
|
|
5
|
+
import { endpoints, Filter, query } from './tools';
|
|
6
|
+
|
|
7
|
+
async function main() {
|
|
8
|
+
const opts = yargs(hideBin(process.argv))
|
|
9
|
+
.option('tool', {
|
|
10
|
+
type: 'string',
|
|
11
|
+
array: true,
|
|
12
|
+
description: 'Include tools matching the specified names',
|
|
13
|
+
})
|
|
14
|
+
.option('resource', {
|
|
15
|
+
type: 'string',
|
|
16
|
+
array: true,
|
|
17
|
+
description: 'Include tools matching the specified resources',
|
|
18
|
+
})
|
|
19
|
+
.option('operation', {
|
|
20
|
+
type: 'string',
|
|
21
|
+
array: true,
|
|
22
|
+
choices: ['read', 'write'],
|
|
23
|
+
description: 'Include tools matching the specified operations',
|
|
24
|
+
})
|
|
25
|
+
.option('tag', {
|
|
26
|
+
type: 'string',
|
|
27
|
+
array: true,
|
|
28
|
+
description: 'Include tools with the specified tags',
|
|
29
|
+
})
|
|
30
|
+
.option('no-tool', {
|
|
31
|
+
type: 'string',
|
|
32
|
+
array: true,
|
|
33
|
+
description: 'Exclude tools matching the specified names',
|
|
34
|
+
})
|
|
35
|
+
.option('no-resource', {
|
|
36
|
+
type: 'string',
|
|
37
|
+
array: true,
|
|
38
|
+
description: 'Exclude tools matching the specified resources',
|
|
39
|
+
})
|
|
40
|
+
.option('no-operation', {
|
|
41
|
+
type: 'string',
|
|
42
|
+
array: true,
|
|
43
|
+
description: 'Exclude tools matching the specified operations',
|
|
44
|
+
})
|
|
45
|
+
.option('no-tag', {
|
|
46
|
+
type: 'string',
|
|
47
|
+
array: true,
|
|
48
|
+
description: 'Exclude tools with the specified tags',
|
|
49
|
+
})
|
|
50
|
+
.option('list', {
|
|
51
|
+
type: 'boolean',
|
|
52
|
+
description: 'List all tools and exit',
|
|
53
|
+
})
|
|
54
|
+
.help();
|
|
55
|
+
|
|
56
|
+
for (const [command, desc] of examples()) {
|
|
57
|
+
opts.example(command, desc);
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
const argv = opts.parseSync();
|
|
61
|
+
|
|
62
|
+
if (argv.list) {
|
|
63
|
+
listAllTools();
|
|
64
|
+
return;
|
|
65
|
+
}
|
|
66
|
+
const filters: Filter[] = [];
|
|
67
|
+
|
|
68
|
+
for (const tag of argv.tag || []) {
|
|
69
|
+
filters.push({ type: 'tag', op: 'include', value: tag });
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
for (const tag of argv.noTag || []) {
|
|
73
|
+
filters.push({ type: 'tag', op: 'exclude', value: tag });
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
for (const resource of argv.resource || []) {
|
|
77
|
+
filters.push({ type: 'resource', op: 'include', value: resource });
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
for (const resource of argv.noResource || []) {
|
|
81
|
+
filters.push({ type: 'resource', op: 'exclude', value: resource });
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
for (const tool of argv.tool || []) {
|
|
85
|
+
filters.push({ type: 'tool', op: 'include', value: tool });
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
for (const tool of argv.noTool || []) {
|
|
89
|
+
filters.push({ type: 'tool', op: 'exclude', value: tool });
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
for (const operation of argv.operation || []) {
|
|
93
|
+
filters.push({ type: 'operation', op: 'include', value: operation });
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
for (const operation of argv.noOperation || []) {
|
|
97
|
+
filters.push({ type: 'operation', op: 'exclude', value: operation });
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
const filteredEndpoints = query(filters, endpoints);
|
|
101
|
+
|
|
102
|
+
if (filteredEndpoints.length === 0) {
|
|
103
|
+
console.error('No tools match the provided filters.');
|
|
104
|
+
process.exit(1);
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
console.error(
|
|
108
|
+
`MCP Server starting with ${filteredEndpoints.length} tools:`,
|
|
109
|
+
filteredEndpoints.map((e) => e.tool.name),
|
|
110
|
+
);
|
|
111
|
+
|
|
112
|
+
init({ server, endpoints: filteredEndpoints });
|
|
113
|
+
|
|
114
|
+
const transport = new StdioServerTransport();
|
|
115
|
+
await server.connect(transport);
|
|
116
|
+
console.error('MCP Server running on stdio');
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
if (require.main === module) {
|
|
120
|
+
main().catch((error) => {
|
|
121
|
+
console.error('Fatal error in main():', error);
|
|
122
|
+
process.exit(1);
|
|
123
|
+
});
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
function listAllTools() {
|
|
127
|
+
if (endpoints.length === 0) {
|
|
128
|
+
console.error('No tools available.');
|
|
129
|
+
return;
|
|
130
|
+
}
|
|
131
|
+
console.error('Available tools:\n');
|
|
132
|
+
|
|
133
|
+
// Group endpoints by resource
|
|
134
|
+
const resourceGroups = new Map<string, typeof endpoints>();
|
|
135
|
+
|
|
136
|
+
for (const endpoint of endpoints) {
|
|
137
|
+
const resource = endpoint.metadata.resource;
|
|
138
|
+
if (!resourceGroups.has(resource)) {
|
|
139
|
+
resourceGroups.set(resource, []);
|
|
140
|
+
}
|
|
141
|
+
resourceGroups.get(resource)!.push(endpoint);
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
// Sort resources alphabetically
|
|
145
|
+
const sortedResources = Array.from(resourceGroups.keys()).sort();
|
|
146
|
+
|
|
147
|
+
// Display hierarchically by resource
|
|
148
|
+
for (const resource of sortedResources) {
|
|
149
|
+
console.error(`Resource: ${resource}`);
|
|
150
|
+
|
|
151
|
+
const resourceEndpoints = resourceGroups.get(resource)!;
|
|
152
|
+
// Sort endpoints by tool name
|
|
153
|
+
resourceEndpoints.sort((a, b) => a.tool.name.localeCompare(b.tool.name));
|
|
154
|
+
|
|
155
|
+
for (const endpoint of resourceEndpoints) {
|
|
156
|
+
const {
|
|
157
|
+
tool,
|
|
158
|
+
metadata: { operation, tags },
|
|
159
|
+
} = endpoint;
|
|
160
|
+
|
|
161
|
+
console.error(` - ${tool.name} (${operation}) ${tags.length > 0 ? `tags: ${tags.join(', ')}` : ''}`);
|
|
162
|
+
console.error(` Description: ${tool.description}`);
|
|
163
|
+
}
|
|
164
|
+
console.error('');
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
function examples(): [string, string][] {
|
|
169
|
+
const firstEndpoint = endpoints[0]!;
|
|
170
|
+
const secondEndpoint =
|
|
171
|
+
endpoints.find((e) => e.metadata.resource !== firstEndpoint.metadata.resource) || endpoints[1];
|
|
172
|
+
const tag = endpoints.find((e) => e.metadata.tags.length > 0)?.metadata.tags[0];
|
|
173
|
+
const otherEndpoint = secondEndpoint || firstEndpoint;
|
|
174
|
+
|
|
175
|
+
return [
|
|
176
|
+
[
|
|
177
|
+
`--tool="${firstEndpoint.tool.name}" ${secondEndpoint ? `--tool="${secondEndpoint.tool.name}"` : ''}`,
|
|
178
|
+
'Include tools by name',
|
|
179
|
+
],
|
|
180
|
+
[
|
|
181
|
+
`--resource="${firstEndpoint.metadata.resource}" --operation="read"`,
|
|
182
|
+
'Filter by resource and operation',
|
|
183
|
+
],
|
|
184
|
+
[
|
|
185
|
+
`--resource="${otherEndpoint.metadata.resource}*" --no-tool="${otherEndpoint.tool.name}"`,
|
|
186
|
+
'Use resource wildcards and exclusions',
|
|
187
|
+
],
|
|
188
|
+
...(tag ? [[`--tag="${tag}"`, 'Filter based on tags'] as [string, string]] : []),
|
|
189
|
+
];
|
|
190
|
+
}
|