返回 last30days-skill
manifest.json
根目录 / mcp / manifest.json
1 {
2 "manifest_version": "0.3",
3 "name": "last30days-pp-mcp",
4 "display_name": "Last30Days",
5 "version": "3.6.0",
6 "description": "Research any topic across Reddit, X, YouTube, Hacker News, Polymarket, GitHub, and the web - last 30 days, scored by upvotes, likes, and real-money prediction-market odds.",
7 "author": {
8 "name": "Matt Van Horn",
9 "url": "https://github.com/mvanhorn/last30days-skill"
10 },
11 "repository": {
12 "type": "git",
13 "url": "https://github.com/mvanhorn/last30days-skill"
14 },
15 "license": "MIT",
16 "keywords": [
17 "research",
18 "reddit",
19 "twitter",
20 "x",
21 "youtube",
22 "hacker-news",
23 "polymarket",
24 "github",
25 "search",
26 "synthesis"
27 ],
28 "server": {
29 "type": "binary",
30 "entry_point": "bin/last30days-pp-mcp",
31 "mcp_config": {
32 "command": "${__dirname}/bin/last30days-pp-mcp",
33 "args": [],
34 "env": {
35 "OPENAI_API_KEY": "${user_config.openai_api_key}",
36 "XAI_API_KEY": "${user_config.xai_api_key}",
37 "BRAVE_API_KEY": "${user_config.brave_api_key}",
38 "EXA_API_KEY": "${user_config.exa_api_key}",
39 "SERPER_API_KEY": "${user_config.serper_api_key}",
40 "GOOGLE_API_KEY": "${user_config.google_api_key}",
41 "GEMINI_API_KEY": "${user_config.gemini_api_key}",
42 "GOOGLE_GENAI_API_KEY": "${user_config.google_genai_api_key}",
43 "APIFY_API_TOKEN": "${user_config.apify_api_token}",
44 "BSKY_APP_PASSWORD": "${user_config.bsky_app_password}",
45 "PARALLEL_API_KEY": "${user_config.parallel_api_key}",
46 "SCRAPECREATORS_API_KEY": "${user_config.scrapecreators_api_key}",
47 "OPENROUTER_API_KEY": "${user_config.openrouter_api_key}"
48 }
49 }
50 },
51 "user_config": {
52 "openai_api_key": {
53 "type": "string",
54 "title": "OPENAI_API_KEY",
55 "description": "OpenAI API key. Powers Reddit research via OpenAI's web_search tool. Get one at https://platform.openai.com/api-keys.",
56 "sensitive": true,
57 "required": false
58 },
59 "xai_api_key": {
60 "type": "string",
61 "title": "XAI_API_KEY",
62 "description": "xAI API key. Powers X / Twitter research via xAI's x_search tool. Get one at https://console.x.ai/.",
63 "sensitive": true,
64 "required": false
65 },
66 "brave_api_key": {
67 "type": "string",
68 "title": "BRAVE_API_KEY",
69 "description": "Brave Search API key. Used for grounded web search results. Get one at https://brave.com/search/api/.",
70 "sensitive": true,
71 "required": false
72 },
73 "exa_api_key": {
74 "type": "string",
75 "title": "EXA_API_KEY",
76 "description": "Exa search API key. Alternative web search backend with semantic ranking. Get one at https://exa.ai/.",
77 "sensitive": true,
78 "required": false
79 },
80 "serper_api_key": {
81 "type": "string",
82 "title": "SERPER_API_KEY",
83 "description": "Serper API key. Google search via API. Get one at https://serper.dev/.",
84 "sensitive": true,
85 "required": false
86 },
87 "google_api_key": {
88 "type": "string",
89 "title": "GOOGLE_API_KEY",
90 "description": "Google API key for YouTube transcript fetching and other Google services. Get one at https://console.cloud.google.com/apis/credentials.",
91 "sensitive": true,
92 "required": false
93 },
94 "gemini_api_key": {
95 "type": "string",
96 "title": "GEMINI_API_KEY",
97 "description": "Gemini API key. Used for synthesis fallback when other LLM providers are unavailable. Get one at https://aistudio.google.com/apikey.",
98 "sensitive": true,
99 "required": false
100 },
101 "google_genai_api_key": {
102 "type": "string",
103 "title": "GOOGLE_GENAI_API_KEY",
104 "description": "Alternative Google generative-AI API key. Same source as GEMINI_API_KEY; set whichever name your tooling expects.",
105 "sensitive": true,
106 "required": false
107 },
108 "apify_api_token": {
109 "type": "string",
110 "title": "APIFY_API_TOKEN",
111 "description": "Apify API token. Powers TikTok and Instagram Reels search via Apify actors. Get one at https://console.apify.com/account/integrations.",
112 "sensitive": true,
113 "required": false
114 },
115 "bsky_app_password": {
116 "type": "string",
117 "title": "BSKY_APP_PASSWORD",
118 "description": "Bluesky app password (not your main password). Powers AT Protocol post search. Create at https://bsky.app/settings/app-passwords.",
119 "sensitive": true,
120 "required": false
121 },
122 "parallel_api_key": {
123 "type": "string",
124 "title": "PARALLEL_API_KEY",
125 "description": "Parallel AI key. Powers parallel research runs across sources. Get one at https://parallel.ai/.",
126 "sensitive": true,
127 "required": false
128 },
129 "scrapecreators_api_key": {
130 "type": "string",
131 "title": "SCRAPECREATORS_API_KEY",
132 "description": "ScrapeCreators API key. Powers creator-focused social search across TikTok, Instagram, and YouTube. Get one at https://scrapecreators.com/.",
133 "sensitive": true,
134 "required": false
135 },
136 "openrouter_api_key": {
137 "type": "string",
138 "title": "OPENROUTER_API_KEY",
139 "description": "OpenRouter API key. Alternative LLM provider gateway for synthesis. Get one at https://openrouter.ai/keys.",
140 "sensitive": true,
141 "required": false
142 }
143 },
144 "compatibility": {
145 "claude_desktop": ">=1.0.0",
146 "platforms": [
147 "darwin",
148 "linux"
149 ]
150 }
151 }
152
152 lines JSON