From c3e701205c0fdb4386b1c80906ab5520dc28e8b8 Mon Sep 17 00:00:00 2001 From: Philippe Mizrahi Date: Wed, 28 May 2025 15:09:25 +0200 Subject: [PATCH 1/2] updated the readme --- README.md | 84 +++++++++++++++++++++++++++---------------------------- 1 file changed, 42 insertions(+), 42 deletions(-) diff --git a/README.md b/README.md index 0bbbe58..ba5db07 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,22 @@ -# Linkup Model Context Protocol +# 🌟 Linkup JS MCP Server -This package provides a [Model Context Protocol](https://modelcontextprotocol.com/) server for integrating Linkup's web search functionality with AI models that support function calling through MCP. +A Model Context Protocol (MCP) server that provides web search capabilities through Linkup's advanced search API. This server enables AI assistants and development tools to perform intelligent web searches with natural language queries. -You can check the NPM page [here](https://www.npmjs.com/package/linkup-mcp-server). +## ✨ Why Linkup? + +- 🔍 **Advanced Web Search**: Leverage Linkup's AI-powered search engine for high-quality, relevant results +- 💬 **Natural Language Queries**: Ask questions in plain English or your preferred language - no need for keyword optimization +- 🚀 **Real-time Information**: Access up-to-date web content and current information +- 📚 **Comprehensive Results**: Get detailed search results with source citations +- 🔧 **Easy Integration**: Works with any MCP-compatible client + +## 🚀 Installation + +The Linkup MCP server can be used with any MCP-compatible client. -## Installation & Usage +For an integration with Claude Desktop or with Cursor, please follow instruction [here](https://docs.linkup.so/pages/integrations/mcp/mcp). + +You can check the NPM page [here](https://www.npmjs.com/package/linkup-mcp-server). You can run the Linkup MCP server directly using npx: @@ -19,7 +31,7 @@ export LINKUP_API_KEY=YOUR_LINKUP_API_KEY npx -y linkup-mcp-server ``` -# Command Line Options +**Command Line Options** | Option | Description | | ------------ | ----------------------------------------------------------------- | @@ -27,46 +39,22 @@ npx -y linkup-mcp-server | `--base-url` | Custom API base URL (default: `https://api.linkup.so/v1`) | | `--help, -h` | Show help text | -# Usage with Claude +Consult your MCP client's documentation for specific configuration instructions. -Add the following to your `claude_desktop_config.json`. See the [MCP documentation](https://modelcontextprotocol.io/quickstart/user) for more details. +## 💬 Example Queries -To ensure compatibility with Claude, we recommend that `npx` command be accessible within the same environment. A common location for this is `/usr/local/bin/node` (on mac) +The Linkup MCP server excels at answering complex questions and finding specific information: -```json -{ - "mcpServers": { - "linkup": { - "command": "npx", - "args": ["-y", "linkup-mcp-server"], - "env": { - "LINKUP_API_KEY": "YOUR_LINKUP_API_KEY" - } - } - } -} -``` +- "What are the latest developments in quantum computing?" +- "How does the EU AI Act affect startups?" +- "Find recent research on sustainable aviation fuel" +- "What are the current best practices for MCP server development?" -or - -```json -{ - "mcpServers": { - "linkup": { - "command": "npx", - "args": ["-y", "linkup-mcp-server", "--api-key=YOUR_LINKUP_API_KEY"] - } - } -} -``` - -## Available Tools +## 🤝 Contributing -| Tool | Description | -| ------------ | --------------------------------------- | -| `search-web` | Perform a web search query using Linkup | +Pull requests are welcome! Feel free to open an issue first to discuss what you’d like to see improved. -## Development +### Development Clone the repository and install dependencies: @@ -76,7 +64,7 @@ cd js-mcp-server npm install ``` -# Available Scripts +### Available Scripts | Script | Description | | -------------------- | ---------------------------- | @@ -86,6 +74,18 @@ npm install | `npm run test` | Run tests | | `npm run test:watch` | Run tests in watch mode | -# License +## 📚 Resources + +- [Linkup Documentation](https://docs.linkup.so) +- [MCP Protocol Specification](https://modelcontextprotocol.io) +- [Linkup API Reference](https://docs.linkup.so/api-reference) + +## 📣 Community & Support + +* Email: [support@linkup.so](mailto:support@linkup.so) +* Discord: [Join our community](https://discord.com/invite/9q9mCYJa86) +* X / Twitter: [@Linkup_platform](https://x.com/Linkup_platform) + +## 📄 License -This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details. +This project is licensed under the MIT License - Innovate freely! 🚀 \ No newline at end of file From ed46bccbc069f0f539242031fa5e89a606807478 Mon Sep 17 00:00:00 2001 From: Philippe Mizrahi Date: Wed, 28 May 2025 15:12:48 +0200 Subject: [PATCH 2/2] udpated tool description --- src/index.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/index.ts b/src/index.ts index c16fb2a..2b26e25 100644 --- a/src/index.ts +++ b/src/index.ts @@ -51,13 +51,13 @@ export const parseArgs = (args: OptionValues): Args => { const bindTool = (server: McpServer, linkupClient: LinkupClient) => { server.tool( 'search-web', - 'Performs an online search using Linkup search engine and retrieves the top results as a string. This function is useful for accessing real-time information, including news, articles, and other relevant web content.', + 'Search the web in real time using Linkup. Use this tool whenever the user needs trusted facts, news, or source-backed information. Returns comprehensive content from the most relevant sources.', { - query: z.string().describe('The search query to perform.'), + query: z.string().describe("Natural language search query. Full questions work best, e.g., 'How does the new EU AI Act affect startups?'"), depth: z .enum(['standard', 'deep']) .describe( - "The search depth to perform. Use 'standard' for straightforward queries with likely direct answers (e.g., facts, definitions, simple explanations). Use 'deep' for: 1) complex queries requiring comprehensive analysis or information synthesis, 2) queries containing uncommon terms, specialized jargon, or abbreviations that may need additional context, or 3) questions likely requiring up-to-date or specialized web search results to answer effectively.", + "The search depth to perform. Use 'standard' for queries with likely direct answers. Use 'deep' for complex queries requiring comprehensive analysis or multi-hop questions", ), }, async ({ query, depth }) =>