@chinchillaenterprises/mcp-upwork
Version:
Modular Upwork MCP server for job search and proposal management via Upwork API
385 lines • 14.3 kB
TypeScript
import { z } from "zod";
export declare const SearchJobsArgsSchema: z.ZodObject<{
query: z.ZodOptional<z.ZodString>;
category: z.ZodOptional<z.ZodString>;
skills: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
budget_min: z.ZodOptional<z.ZodNumber>;
budget_max: z.ZodOptional<z.ZodNumber>;
hourly_rate_min: z.ZodOptional<z.ZodNumber>;
hourly_rate_max: z.ZodOptional<z.ZodNumber>;
duration: z.ZodOptional<z.ZodEnum<["1-7 days", "1-4 weeks", "1-3 months", "3-6 months", "6+ months"]>>;
workload: z.ZodOptional<z.ZodEnum<["less-than-30", "30-plus"]>>;
client_hires: z.ZodOptional<z.ZodNumber>;
client_spent: z.ZodOptional<z.ZodNumber>;
sort: z.ZodOptional<z.ZodEnum<["recency", "client_rating", "payment_verified"]>>;
page: z.ZodDefault<z.ZodNumber>;
limit: z.ZodDefault<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
page: number;
limit: number;
query?: string | undefined;
category?: string | undefined;
sort?: "recency" | "client_rating" | "payment_verified" | undefined;
skills?: string[] | undefined;
budget_min?: number | undefined;
budget_max?: number | undefined;
hourly_rate_min?: number | undefined;
hourly_rate_max?: number | undefined;
duration?: "1-7 days" | "1-4 weeks" | "1-3 months" | "3-6 months" | "6+ months" | undefined;
workload?: "less-than-30" | "30-plus" | undefined;
client_hires?: number | undefined;
client_spent?: number | undefined;
}, {
query?: string | undefined;
category?: string | undefined;
sort?: "recency" | "client_rating" | "payment_verified" | undefined;
skills?: string[] | undefined;
budget_min?: number | undefined;
budget_max?: number | undefined;
hourly_rate_min?: number | undefined;
hourly_rate_max?: number | undefined;
duration?: "1-7 days" | "1-4 weeks" | "1-3 months" | "3-6 months" | "6+ months" | undefined;
workload?: "less-than-30" | "30-plus" | undefined;
client_hires?: number | undefined;
client_spent?: number | undefined;
page?: number | undefined;
limit?: number | undefined;
}>;
export declare const GetJobDetailsArgsSchema: z.ZodObject<{
job_id: z.ZodString;
}, "strip", z.ZodTypeAny, {
job_id: string;
}, {
job_id: string;
}>;
export declare const SubmitProposalArgsSchema: z.ZodObject<{
job_id: z.ZodString;
cover_letter: z.ZodString;
rate: z.ZodOptional<z.ZodNumber>;
estimated_duration: z.ZodOptional<z.ZodString>;
milestone_description: z.ZodOptional<z.ZodString>;
connects_to_use: z.ZodDefault<z.ZodNumber>;
boost_proposal: z.ZodDefault<z.ZodBoolean>;
}, "strip", z.ZodTypeAny, {
job_id: string;
cover_letter: string;
connects_to_use: number;
boost_proposal: boolean;
rate?: number | undefined;
estimated_duration?: string | undefined;
milestone_description?: string | undefined;
}, {
job_id: string;
cover_letter: string;
rate?: number | undefined;
estimated_duration?: string | undefined;
milestone_description?: string | undefined;
connects_to_use?: number | undefined;
boost_proposal?: boolean | undefined;
}>;
export declare const ListProposalsArgsSchema: z.ZodObject<{
status: z.ZodOptional<z.ZodEnum<["active", "submitted", "interviewing", "offered", "hired", "ended", "declined"]>>;
page: z.ZodDefault<z.ZodNumber>;
limit: z.ZodDefault<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
page: number;
limit: number;
status?: "active" | "submitted" | "interviewing" | "offered" | "hired" | "ended" | "declined" | undefined;
}, {
status?: "active" | "submitted" | "interviewing" | "offered" | "hired" | "ended" | "declined" | undefined;
page?: number | undefined;
limit?: number | undefined;
}>;
export declare const ListContractsArgsSchema: z.ZodObject<{
status: z.ZodOptional<z.ZodEnum<["active", "ended", "cancelled"]>>;
type: z.ZodOptional<z.ZodEnum<["hourly", "fixed-price"]>>;
page: z.ZodDefault<z.ZodNumber>;
limit: z.ZodDefault<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
page: number;
limit: number;
type?: "hourly" | "fixed-price" | undefined;
status?: "active" | "ended" | "cancelled" | undefined;
}, {
type?: "hourly" | "fixed-price" | undefined;
status?: "active" | "ended" | "cancelled" | undefined;
page?: number | undefined;
limit?: number | undefined;
}>;
export declare const GetContractDetailsArgsSchema: z.ZodObject<{
contract_id: z.ZodString;
}, "strip", z.ZodTypeAny, {
contract_id: string;
}, {
contract_id: string;
}>;
export declare const GetWorkDiaryArgsSchema: z.ZodObject<{
contract_id: z.ZodString;
date: z.ZodString;
freelancer_id: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
contract_id: string;
date: string;
freelancer_id?: string | undefined;
}, {
contract_id: string;
date: string;
freelancer_id?: string | undefined;
}>;
export declare const LogTimeArgsSchema: z.ZodObject<{
contract_id: z.ZodString;
date: z.ZodString;
hours: z.ZodNumber;
description: z.ZodString;
screenshot_url: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
contract_id: string;
date: string;
hours: number;
description: string;
screenshot_url?: string | undefined;
}, {
contract_id: string;
date: string;
hours: number;
description: string;
screenshot_url?: string | undefined;
}>;
export declare const ListMessagesArgsSchema: z.ZodObject<{
thread_id: z.ZodOptional<z.ZodString>;
unread_only: z.ZodDefault<z.ZodBoolean>;
page: z.ZodDefault<z.ZodNumber>;
limit: z.ZodDefault<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
page: number;
limit: number;
unread_only: boolean;
thread_id?: string | undefined;
}, {
page?: number | undefined;
limit?: number | undefined;
thread_id?: string | undefined;
unread_only?: boolean | undefined;
}>;
export declare const SendMessageArgsSchema: z.ZodObject<{
recipient_id: z.ZodString;
subject: z.ZodString;
body: z.ZodString;
thread_id: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
body: string;
recipient_id: string;
subject: string;
thread_id?: string | undefined;
}, {
body: string;
recipient_id: string;
subject: string;
thread_id?: string | undefined;
}>;
export declare const GetEarningsArgsSchema: z.ZodObject<{
period: z.ZodEnum<["this_week", "last_week", "this_month", "last_month", "this_year", "last_year", "custom"]>;
start_date: z.ZodOptional<z.ZodString>;
end_date: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
period: "this_week" | "last_week" | "this_month" | "last_month" | "this_year" | "last_year" | "custom";
start_date?: string | undefined;
end_date?: string | undefined;
}, {
period: "this_week" | "last_week" | "this_month" | "last_month" | "this_year" | "last_year" | "custom";
start_date?: string | undefined;
end_date?: string | undefined;
}>;
export declare const GetProfileArgsSchema: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
export declare const UpdateProfileArgsSchema: z.ZodObject<{
title: z.ZodOptional<z.ZodString>;
overview: z.ZodOptional<z.ZodString>;
hourly_rate: z.ZodOptional<z.ZodNumber>;
skills: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
location: z.ZodOptional<z.ZodObject<{
country: z.ZodOptional<z.ZodString>;
city: z.ZodOptional<z.ZodString>;
timezone: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
country?: string | undefined;
city?: string | undefined;
timezone?: string | undefined;
}, {
country?: string | undefined;
city?: string | undefined;
timezone?: string | undefined;
}>>;
}, "strip", z.ZodTypeAny, {
skills?: string[] | undefined;
title?: string | undefined;
overview?: string | undefined;
hourly_rate?: number | undefined;
location?: {
country?: string | undefined;
city?: string | undefined;
timezone?: string | undefined;
} | undefined;
}, {
skills?: string[] | undefined;
title?: string | undefined;
overview?: string | undefined;
hourly_rate?: number | undefined;
location?: {
country?: string | undefined;
city?: string | undefined;
timezone?: string | undefined;
} | undefined;
}>;
export declare const CreateMilestoneArgsSchema: z.ZodObject<{
contract_id: z.ZodString;
description: z.ZodString;
amount: z.ZodNumber;
due_date: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
contract_id: string;
description: string;
amount: number;
due_date?: string | undefined;
}, {
contract_id: string;
description: string;
amount: number;
due_date?: string | undefined;
}>;
export declare const ReleaseMilestoneArgsSchema: z.ZodObject<{
milestone_id: z.ZodString;
rating: z.ZodNumber;
feedback: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
milestone_id: string;
rating: number;
feedback?: string | undefined;
}, {
milestone_id: string;
rating: number;
feedback?: string | undefined;
}>;
export declare const GetConnectsBalanceArgsSchema: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
export declare const PurchaseConnectsArgsSchema: z.ZodObject<{
quantity: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
quantity: number;
}, {
quantity: number;
}>;
export declare const SearchFreelancersArgsSchema: z.ZodObject<{
query: z.ZodOptional<z.ZodString>;
skills: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
hourly_rate_min: z.ZodOptional<z.ZodNumber>;
hourly_rate_max: z.ZodOptional<z.ZodNumber>;
job_success_min: z.ZodOptional<z.ZodNumber>;
earned_amount_min: z.ZodOptional<z.ZodNumber>;
location: z.ZodOptional<z.ZodString>;
english_level: z.ZodOptional<z.ZodEnum<["basic", "conversational", "fluent", "native"]>>;
page: z.ZodDefault<z.ZodNumber>;
limit: z.ZodDefault<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
page: number;
limit: number;
query?: string | undefined;
skills?: string[] | undefined;
hourly_rate_min?: number | undefined;
hourly_rate_max?: number | undefined;
location?: string | undefined;
job_success_min?: number | undefined;
earned_amount_min?: number | undefined;
english_level?: "basic" | "conversational" | "fluent" | "native" | undefined;
}, {
query?: string | undefined;
skills?: string[] | undefined;
hourly_rate_min?: number | undefined;
hourly_rate_max?: number | undefined;
page?: number | undefined;
limit?: number | undefined;
location?: string | undefined;
job_success_min?: number | undefined;
earned_amount_min?: number | undefined;
english_level?: "basic" | "conversational" | "fluent" | "native" | undefined;
}>;
export declare const PostJobArgsSchema: z.ZodObject<{
title: z.ZodString;
description: z.ZodString;
category: z.ZodString;
skills: z.ZodArray<z.ZodString, "many">;
job_type: z.ZodEnum<["hourly", "fixed"]>;
budget: z.ZodOptional<z.ZodNumber>;
hourly_rate_min: z.ZodOptional<z.ZodNumber>;
hourly_rate_max: z.ZodOptional<z.ZodNumber>;
duration: z.ZodEnum<["1-7 days", "1-4 weeks", "1-3 months", "3-6 months", "6+ months"]>;
workload: z.ZodEnum<["less-than-30", "30-plus"]>;
experience_level: z.ZodEnum<["entry", "intermediate", "expert"]>;
}, "strip", z.ZodTypeAny, {
category: string;
skills: string[];
duration: "1-7 days" | "1-4 weeks" | "1-3 months" | "3-6 months" | "6+ months";
workload: "less-than-30" | "30-plus";
description: string;
title: string;
job_type: "hourly" | "fixed";
experience_level: "entry" | "intermediate" | "expert";
hourly_rate_min?: number | undefined;
hourly_rate_max?: number | undefined;
budget?: number | undefined;
}, {
category: string;
skills: string[];
duration: "1-7 days" | "1-4 weeks" | "1-3 months" | "3-6 months" | "6+ months";
workload: "less-than-30" | "30-plus";
description: string;
title: string;
job_type: "hourly" | "fixed";
experience_level: "entry" | "intermediate" | "expert";
hourly_rate_min?: number | undefined;
hourly_rate_max?: number | undefined;
budget?: number | undefined;
}>;
export type SearchJobsArgs = z.infer<typeof SearchJobsArgsSchema>;
export type GetJobDetailsArgs = z.infer<typeof GetJobDetailsArgsSchema>;
export type SubmitProposalArgs = z.infer<typeof SubmitProposalArgsSchema>;
export type ListProposalsArgs = z.infer<typeof ListProposalsArgsSchema>;
export type ListContractsArgs = z.infer<typeof ListContractsArgsSchema>;
export type GetContractDetailsArgs = z.infer<typeof GetContractDetailsArgsSchema>;
export type GetWorkDiaryArgs = z.infer<typeof GetWorkDiaryArgsSchema>;
export type LogTimeArgs = z.infer<typeof LogTimeArgsSchema>;
export type ListMessagesArgs = z.infer<typeof ListMessagesArgsSchema>;
export type SendMessageArgs = z.infer<typeof SendMessageArgsSchema>;
export type GetEarningsArgs = z.infer<typeof GetEarningsArgsSchema>;
export type GetProfileArgs = z.infer<typeof GetProfileArgsSchema>;
export type UpdateProfileArgs = z.infer<typeof UpdateProfileArgsSchema>;
export type CreateMilestoneArgs = z.infer<typeof CreateMilestoneArgsSchema>;
export type ReleaseMilestoneArgs = z.infer<typeof ReleaseMilestoneArgsSchema>;
export type GetConnectsBalanceArgs = z.infer<typeof GetConnectsBalanceArgsSchema>;
export type PurchaseConnectsArgs = z.infer<typeof PurchaseConnectsArgsSchema>;
export type SearchFreelancersArgs = z.infer<typeof SearchFreelancersArgsSchema>;
export type PostJobArgs = z.infer<typeof PostJobArgsSchema>;
export interface UpworkContract {
id: string;
title: string;
status: string;
freelancer_id?: string;
client_id?: string;
start_date: string;
end_date?: string;
budget?: number;
weekly_limit?: number;
total_hours?: number;
total_cost?: number;
}
export interface UpworkWorkDiary {
date: string;
hours: number;
earnings: number;
tasks: Array<{
time_slot: string;
hours: number;
description: string;
screenshot_url?: string;
activity_level: number;
}>;
}
//# sourceMappingURL=upwork.d.ts.map