@automanus/mcp-server 1.0.0

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.
@@ -0,0 +1,13 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * AutoManus MCP Server
4
+ *
5
+ * Provides AI sales agent creation capabilities via Model Context Protocol.
6
+ * Works with Claude Desktop, Cursor, and other MCP-compatible AI tools.
7
+ *
8
+ * Environment Variables:
9
+ * - AUTOMANUS_EMAIL: User email for account association (required if no API key)
10
+ * - AUTOMANUS_API_KEY: API key for authenticated access (optional)
11
+ */
12
+ export {};
13
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA;;;;;;;;;GASG"}
package/dist/index.js ADDED
@@ -0,0 +1,225 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * AutoManus MCP Server
4
+ *
5
+ * Provides AI sales agent creation capabilities via Model Context Protocol.
6
+ * Works with Claude Desktop, Cursor, and other MCP-compatible AI tools.
7
+ *
8
+ * Environment Variables:
9
+ * - AUTOMANUS_EMAIL: User email for account association (required if no API key)
10
+ * - AUTOMANUS_API_KEY: API key for authenticated access (optional)
11
+ */
12
+ import { Server } from '@modelcontextprotocol/sdk/server/index.js';
13
+ import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
14
+ import { CallToolRequestSchema, ListToolsRequestSchema, } from '@modelcontextprotocol/sdk/types.js';
15
+ const API_BASE_URL = 'https://automanus.io/api/v1';
16
+ // Tool definitions
17
+ const tools = [
18
+ {
19
+ name: 'create_sales_agent',
20
+ description: 'Create an AI sales agent for a business. Researches the website automatically and deploys to WhatsApp and Webchat.',
21
+ inputSchema: {
22
+ type: 'object',
23
+ properties: {
24
+ company_name: {
25
+ type: 'string',
26
+ description: 'Business/company name',
27
+ },
28
+ website_url: {
29
+ type: 'string',
30
+ description: 'Website URL to research. We analyze it to populate knowledge base.',
31
+ },
32
+ agent_name: {
33
+ type: 'string',
34
+ description: 'Custom agent name (optional, defaults to "{company} Assistant")',
35
+ },
36
+ },
37
+ required: ['company_name'],
38
+ },
39
+ },
40
+ {
41
+ name: 'add_knowledge',
42
+ description: 'Add a knowledge base item to an existing agent.',
43
+ inputSchema: {
44
+ type: 'object',
45
+ properties: {
46
+ agent_id: {
47
+ type: 'string',
48
+ description: 'Agent UUID',
49
+ },
50
+ title: {
51
+ type: 'string',
52
+ description: 'Item title (e.g., "Return Policy", "Pro Plan Features")',
53
+ },
54
+ content: {
55
+ type: 'string',
56
+ description: 'Item content/description',
57
+ },
58
+ item_type: {
59
+ type: 'string',
60
+ enum: ['product', 'faq', 'policy'],
61
+ description: 'Type of knowledge item',
62
+ },
63
+ },
64
+ required: ['agent_id', 'title', 'content'],
65
+ },
66
+ },
67
+ {
68
+ name: 'get_agent_status',
69
+ description: 'Get status of an agent including deployment info and knowledge base count.',
70
+ inputSchema: {
71
+ type: 'object',
72
+ properties: {
73
+ agent_id: {
74
+ type: 'string',
75
+ description: 'Agent UUID',
76
+ },
77
+ },
78
+ required: ['agent_id'],
79
+ },
80
+ },
81
+ ];
82
+ // Get auth config from environment
83
+ function getAuthConfig() {
84
+ return {
85
+ email: process.env.AUTOMANUS_EMAIL,
86
+ apiKey: process.env.AUTOMANUS_API_KEY,
87
+ };
88
+ }
89
+ // Create fetch headers with auth
90
+ function getHeaders() {
91
+ const { apiKey } = getAuthConfig();
92
+ const headers = {
93
+ 'Content-Type': 'application/json',
94
+ };
95
+ if (apiKey) {
96
+ headers['Authorization'] = `Bearer ${apiKey}`;
97
+ }
98
+ return headers;
99
+ }
100
+ // Tool handlers
101
+ async function handleCreateSalesAgent(args) {
102
+ const { email, apiKey } = getAuthConfig();
103
+ if (!apiKey && !email) {
104
+ return JSON.stringify({
105
+ error: 'AUTOMANUS_EMAIL or AUTOMANUS_API_KEY environment variable required',
106
+ hint: 'Set AUTOMANUS_EMAIL in your MCP config to create agents',
107
+ });
108
+ }
109
+ const body = {
110
+ company_name: args.company_name,
111
+ source: 'mcp',
112
+ };
113
+ if (!apiKey && email) {
114
+ body.email = email;
115
+ }
116
+ if (args.website_url) {
117
+ body.website_url = args.website_url;
118
+ }
119
+ if (args.agent_name) {
120
+ body.agent_name = args.agent_name;
121
+ }
122
+ try {
123
+ const response = await fetch(`${API_BASE_URL}/public/agents`, {
124
+ method: 'POST',
125
+ headers: getHeaders(),
126
+ body: JSON.stringify(body),
127
+ });
128
+ const data = (await response.json());
129
+ if (!response.ok) {
130
+ return JSON.stringify({
131
+ error: data.error || 'Failed to create agent',
132
+ status: response.status,
133
+ });
134
+ }
135
+ // Format successful response
136
+ return JSON.stringify({
137
+ success: true,
138
+ agent_id: data.agent_id,
139
+ agent_name: data.agent_name,
140
+ company_name: data.company_name,
141
+ webchat_embed_code: data.webchat_embed_code,
142
+ whatsapp_link: data.whatsapp_link,
143
+ dashboard_url: data.dashboard_url,
144
+ knowledge_base_count: data.knowledge_base_count,
145
+ is_new_user: data.is_new_user,
146
+ claim_url: data.claim_url,
147
+ message: data.is_new_user
148
+ ? `Agent created! Check ${email} for a magic link to claim your agent.`
149
+ : 'Agent created and added to your account.',
150
+ });
151
+ }
152
+ catch (error) {
153
+ return JSON.stringify({
154
+ error: error instanceof Error ? error.message : 'Network error',
155
+ });
156
+ }
157
+ }
158
+ async function handleAddKnowledge(args) {
159
+ // Note: This would need an authenticated endpoint
160
+ // For now, return a message about the limitation
161
+ return JSON.stringify({
162
+ error: 'add_knowledge is not yet available via MCP',
163
+ hint: 'Use the AutoManus dashboard to add knowledge base items',
164
+ dashboard_url: `https://automanus.io/dashboard/ai-agent/${args.agent_id}`,
165
+ });
166
+ }
167
+ async function handleGetAgentStatus(args) {
168
+ // Note: This would need an authenticated endpoint
169
+ // For now, return a message about the limitation
170
+ return JSON.stringify({
171
+ error: 'get_agent_status is not yet available via MCP',
172
+ hint: 'Use the AutoManus dashboard to view agent status',
173
+ dashboard_url: `https://automanus.io/dashboard/ai-agent/${args.agent_id}`,
174
+ });
175
+ }
176
+ // Main server setup
177
+ async function main() {
178
+ const server = new Server({
179
+ name: 'automanus-mcp',
180
+ version: '1.0.0',
181
+ }, {
182
+ capabilities: {
183
+ tools: {},
184
+ },
185
+ });
186
+ // Handle tool listing
187
+ server.setRequestHandler(ListToolsRequestSchema, async () => {
188
+ return { tools };
189
+ });
190
+ // Handle tool execution
191
+ server.setRequestHandler(CallToolRequestSchema, async (request) => {
192
+ const { name, arguments: args } = request.params;
193
+ let result;
194
+ switch (name) {
195
+ case 'create_sales_agent':
196
+ result = await handleCreateSalesAgent(args);
197
+ break;
198
+ case 'add_knowledge':
199
+ result = await handleAddKnowledge(args);
200
+ break;
201
+ case 'get_agent_status':
202
+ result = await handleGetAgentStatus(args);
203
+ break;
204
+ default:
205
+ result = JSON.stringify({ error: `Unknown tool: ${name}` });
206
+ }
207
+ return {
208
+ content: [
209
+ {
210
+ type: 'text',
211
+ text: result,
212
+ },
213
+ ],
214
+ };
215
+ });
216
+ // Connect via stdio
217
+ const transport = new StdioServerTransport();
218
+ await server.connect(transport);
219
+ console.error('AutoManus MCP server running');
220
+ }
221
+ main().catch((error) => {
222
+ console.error('Fatal error:', error);
223
+ process.exit(1);
224
+ });
225
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json ADDED
@@ -0,0 +1,49 @@
1
+ {
2
+ "name": "@automanus/mcp-server",
3
+ "version": "1.0.0",
4
+ "description": "MCP server for AutoManus - Create AI sales agents via Claude, Cursor, and other AI tools",
5
+ "main": "dist/index.js",
6
+ "types": "dist/index.d.ts",
7
+ "bin": {
8
+ "automanus-mcp": "dist/index.js"
9
+ },
10
+ "type": "module",
11
+ "files": [
12
+ "dist"
13
+ ],
14
+ "scripts": {
15
+ "build": "tsc",
16
+ "dev": "tsc --watch",
17
+ "prepublishOnly": "npm run build"
18
+ },
19
+ "keywords": [
20
+ "mcp",
21
+ "model-context-protocol",
22
+ "automanus",
23
+ "ai-agent",
24
+ "sales-agent",
25
+ "claude",
26
+ "cursor"
27
+ ],
28
+ "author": "AutoManus <hello@automanus.io>",
29
+ "license": "MIT",
30
+ "repository": {
31
+ "type": "git",
32
+ "url": "https://github.com/ShenSeanChen/AutoManus.git",
33
+ "directory": "packages/mcp-server"
34
+ },
35
+ "homepage": "https://automanus.io/docs/mcp",
36
+ "bugs": {
37
+ "url": "https://github.com/ShenSeanChen/AutoManus/issues"
38
+ },
39
+ "dependencies": {
40
+ "@modelcontextprotocol/sdk": "^0.6.0"
41
+ },
42
+ "devDependencies": {
43
+ "@types/node": "^20.0.0",
44
+ "typescript": "^5.0.0"
45
+ },
46
+ "engines": {
47
+ "node": ">=18.0.0"
48
+ }
49
+ }