@opentweet/mcp-server 1.0.0 → 1.1.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/README.md CHANGED
@@ -8,9 +8,19 @@ MCP server for [OpenTweet](https://opentweet.io) — manage your Twitter/X prese
8
8
 
9
9
  Sign up at [opentweet.io](https://opentweet.io) and create an API key from the [Developer Dashboard](https://opentweet.io/developer).
10
10
 
11
- ### 2. Configure Your AI Client
11
+ ### 2. Install
12
12
 
13
- Add to your Claude Desktop config (`~/Library/Application Support/Claude/claude_desktop_config.json`):
13
+ **One-command setup** (auto-detects Claude Code, Claude Desktop, Cursor, and Windsurf):
14
+
15
+ ```bash
16
+ npx -y @opentweet/mcp-server --install --api-key ot_your_key_here
17
+ ```
18
+
19
+ This will find all installed AI clients on your machine and configure them automatically. Restart your AI clients after running this.
20
+
21
+ ### Manual Setup
22
+
23
+ If you prefer to configure manually, add to your Claude Desktop config (`~/Library/Application Support/Claude/claude_desktop_config.json`):
14
24
 
15
25
  ```json
16
26
  {
package/dist/index.js CHANGED
@@ -9,6 +9,26 @@ import { registerAccountTools } from './tools/account.js';
9
9
  import { registerMediaTools } from './tools/media.js';
10
10
  import { registerResources } from './resources/index.js';
11
11
  import { registerPrompts } from './prompts/index.js';
12
+ import { runInstaller } from './installer.js';
13
+ // Handle --install flag
14
+ if (process.argv.includes('--install')) {
15
+ const keyIndex = process.argv.indexOf('--api-key');
16
+ const apiKey = keyIndex !== -1 ? process.argv[keyIndex + 1] : undefined;
17
+ if (!apiKey) {
18
+ console.error('Error: --api-key is required with --install.');
19
+ console.error('');
20
+ console.error('Usage:');
21
+ console.error(' npx -y @opentweet/mcp-server --install --api-key ot_your_key_here');
22
+ console.error('');
23
+ console.error('Get your API key from: https://opentweet.io/developer');
24
+ process.exit(1);
25
+ }
26
+ if (!apiKey.startsWith('ot_')) {
27
+ console.warn('Warning: API key does not start with "ot_". Proceeding anyway.');
28
+ }
29
+ runInstaller(apiKey);
30
+ process.exit(0);
31
+ }
12
32
  const API_KEY = process.env.OPENTWEET_API_KEY;
13
33
  const BASE_URL = process.env.OPENTWEET_BASE_URL || 'https://opentweet.io';
14
34
  if (!API_KEY) {
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;AAC9C,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,sBAAsB,CAAC;AAE1E,IAAI,CAAC,OAAO,EAAE,CAAC;IACb,OAAO,CAAC,KAAK,CAAC,4DAA4D,CAAC,CAAC;IAC5E,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAClB,OAAO,CAAC,KAAK,CAAC,uDAAuD,CAAC,CAAC;IACvE,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAClB,OAAO,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;IACnD,OAAO,CAAC,KAAK,CAAC,sDAAsD,CAAC,CAAC;IACtE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC;IACjC,MAAM,EAAE,OAAO;IACf,OAAO,EAAE,QAAQ;CAClB,CAAC,CAAC;AAEH,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC;IAC3B,IAAI,EAAE,WAAW;IACjB,OAAO,EAAE,OAAO;CACjB,CAAC,CAAC;AAEH,qBAAqB;AACrB,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAClC,uBAAuB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AACxC,sBAAsB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AACvC,oBAAoB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AACrC,kBAAkB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAEnC,qBAAqB;AACrB,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAElC,mBAAmB;AACnB,eAAe,CAAC,MAAM,CAAC,CAAC;AAExB,oCAAoC;AACpC,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;AAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function runInstaller(apiKey: string): void;
2
+ //# sourceMappingURL=installer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"installer.d.ts","sourceRoot":"","sources":["../src/installer.ts"],"names":[],"mappings":"AA+FA,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAoCjD"}
@@ -0,0 +1,115 @@
1
+ import { readFileSync, writeFileSync, existsSync, mkdirSync } from 'fs';
2
+ import { homedir, platform } from 'os';
3
+ import { join, dirname } from 'path';
4
+ const HOME = homedir();
5
+ const clients = [
6
+ {
7
+ name: 'Claude Code',
8
+ paths: {
9
+ darwin: join(HOME, '.claude.json'),
10
+ linux: join(HOME, '.claude.json'),
11
+ win32: join(HOME, '.claude.json'),
12
+ },
13
+ detectParentDir: false,
14
+ },
15
+ {
16
+ name: 'Claude Desktop',
17
+ paths: {
18
+ darwin: join(HOME, 'Library', 'Application Support', 'Claude', 'claude_desktop_config.json'),
19
+ linux: join(HOME, '.config', 'Claude', 'claude_desktop_config.json'),
20
+ win32: join(process.env.APPDATA || join(HOME, 'AppData', 'Roaming'), 'Claude', 'claude_desktop_config.json'),
21
+ },
22
+ detectParentDir: true,
23
+ },
24
+ {
25
+ name: 'Cursor',
26
+ paths: {
27
+ darwin: join(HOME, '.cursor', 'mcp.json'),
28
+ linux: join(HOME, '.cursor', 'mcp.json'),
29
+ win32: join(HOME, '.cursor', 'mcp.json'),
30
+ },
31
+ detectParentDir: true,
32
+ },
33
+ {
34
+ name: 'Windsurf',
35
+ paths: {
36
+ darwin: join(HOME, '.codeium', 'windsurf', 'mcp_config.json'),
37
+ linux: join(HOME, '.codeium', 'windsurf', 'mcp_config.json'),
38
+ win32: join(HOME, '.codeium', 'windsurf', 'mcp_config.json'),
39
+ },
40
+ detectParentDir: true,
41
+ },
42
+ ];
43
+ function getConfigPath(client) {
44
+ const os = platform();
45
+ return client.paths[os] || client.paths.linux;
46
+ }
47
+ function isClientInstalled(client) {
48
+ const configPath = getConfigPath(client);
49
+ if (existsSync(configPath))
50
+ return true;
51
+ if (client.detectParentDir && existsSync(dirname(configPath)))
52
+ return true;
53
+ return false;
54
+ }
55
+ function buildMcpEntry(apiKey) {
56
+ return {
57
+ command: 'npx',
58
+ args: ['-y', '@opentweet/mcp-server'],
59
+ env: {
60
+ OPENTWEET_API_KEY: apiKey,
61
+ },
62
+ };
63
+ }
64
+ function updateConfigFile(configPath, apiKey) {
65
+ let config = {};
66
+ if (existsSync(configPath)) {
67
+ const raw = readFileSync(configPath, 'utf-8');
68
+ config = JSON.parse(raw);
69
+ }
70
+ else {
71
+ const dir = dirname(configPath);
72
+ if (!existsSync(dir)) {
73
+ mkdirSync(dir, { recursive: true });
74
+ }
75
+ }
76
+ if (!config.mcpServers || typeof config.mcpServers !== 'object') {
77
+ config.mcpServers = {};
78
+ }
79
+ config.mcpServers.opentweet = buildMcpEntry(apiKey);
80
+ writeFileSync(configPath, JSON.stringify(config, null, 2) + '\n', 'utf-8');
81
+ }
82
+ export function runInstaller(apiKey) {
83
+ console.log('');
84
+ console.log('🔍 Detecting installed AI clients...');
85
+ console.log('');
86
+ let installedCount = 0;
87
+ for (const client of clients) {
88
+ const configPath = getConfigPath(client);
89
+ if (!isClientInstalled(client)) {
90
+ console.log(` ✗ ${client.name.padEnd(16)} — Not detected`);
91
+ continue;
92
+ }
93
+ try {
94
+ updateConfigFile(configPath, apiKey);
95
+ console.log(` ✓ ${client.name.padEnd(16)} — Updated ${configPath}`);
96
+ installedCount++;
97
+ }
98
+ catch (err) {
99
+ const msg = err instanceof Error ? err.message : String(err);
100
+ console.error(` ✗ ${client.name.padEnd(16)} — Error: ${msg}`);
101
+ }
102
+ }
103
+ console.log('');
104
+ if (installedCount === 0) {
105
+ console.log('No AI clients detected. You can manually add this to your client config:');
106
+ console.log('');
107
+ console.log(JSON.stringify({ mcpServers: { opentweet: buildMcpEntry(apiKey) } }, null, 2));
108
+ console.log('');
109
+ console.log('See https://opentweet.io/mcp for setup guides.');
110
+ }
111
+ else {
112
+ console.log(`Done! Restart your AI client${installedCount > 1 ? 's' : ''} to start using OpenTweet.`);
113
+ }
114
+ }
115
+ //# sourceMappingURL=installer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"installer.js","sourceRoot":"","sources":["../src/installer.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opentweet/mcp-server",
3
- "version": "1.0.0",
3
+ "version": "1.1.1",
4
4
  "description": "OpenTweet MCP Server - Manage your Twitter/X presence from any AI assistant",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",