{
  "markdown": "# patents-mcp\n\n[![Go Version](https://img.shields.io/badge/Go-1.25+-00ADD8?style=flat&logo=go)](https://golang.org)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)\n[![tushariitr-19/patents-mcp MCP server](https://glama.ai/mcp/servers/tushariitr-19/patents-mcp/badges/score.svg)](https://glama.ai/mcp/servers/tushariitr-19/patents-mcp)\n\nAn MCP (Model Context Protocol) server for patent search and prior art discovery, powered by the Google Patents public dataset on BigQuery.\n\nBuilt with the official [Go MCP SDK](https://github.com/modelcontextprotocol/go-sdk).\n\n## Why patents-mcp?\n\nExisting patent MCP servers are either paid, single-source, or unmaintained. `patents-mcp` is:\n\n- **Free** — built on Google Patents public dataset (1TB/month free on BigQuery)\n- **Open source** — MIT licensed\n- **Production grade** — structured logging, graceful shutdown, clean architecture\n- **Extensible** — each tool is self-contained, easy to add new tools\n\n## Available Tools\n\n| Tool | Description |\n|------|-------------|\n| `search_patents` | Search patents by keyword, technology area, or inventor name |\n| `get_patent` | Fetch full patent details by publication number |\n| `get_patent_claims` | Fetch patent claims text |\n\n## Prerequisites\n\n- Go 1.21+\n- A Google Cloud account (free)\n- BigQuery API enabled on your GCP project\n\n## Setup\n\n### 1. Google Cloud Setup\n\n1. Create a GCP project at [console.cloud.google.com](https://console.cloud.google.com)\n2. Enable the BigQuery API\n3. Create a service account with the following roles:\n   - `BigQuery Job User`\n   - `BigQuery Data Viewer`\n4. Download the service account JSON key\n\n### 2. Install\n\n```bash\ngit clone https://github.com/tushariitr-19/patents-mcp\ncd patents-mcp\ngo build -o patents-mcp-server ./cmd/server/\n```\n\n### 3. Configure\n\n```bash\nexport GOOGLE_APPLICATION_CREDENTIALS=\"/path/to/service-account.json\"\nexport GCP_PROJECT_ID=\"your-gcp-project-id\"\n\n# Optional: enable debug logging\nexport DEBUG=true\n```\n\n## Usage with Claude Desktop\n\nAdd to your Claude Desktop config (`claude_desktop_config.json`):\n\n```json\n{\n  \"mcpServers\": {\n    \"patents-mcp\": {\n      \"command\": \"/path/to/patents-mcp-server\",\n      \"env\": {\n        \"GOOGLE_APPLICATION_CREDENTIALS\": \"/path/to/service-account.json\",\n        \"GCP_PROJECT_ID\": \"your-gcp-project-id\"\n      }\n    }\n  }\n}\n```\n\n## Screenshots\n\n### Available Tools\n![Available Tools](docs/screenshots/list_of_tools.png)\n\n## Example Prompts\n\nOnce connected to Claude Desktop:\n\n- *\"Search for patents related to transformer neural networks\"*\n- *\"Find prior art for context-aware UI element hiding\"*\n- *\"What patents has Google filed related to quantum computing?\"*\n- *\"Find patents by inventor Yann LeCun\"*\n\n## Architecture\n\n```\npatents-mcp/\n├── cmd/server/main.go       ← entry point, env vars, graceful shutdown\n├── server/server.go         ← MCP server setup, tool registration\n├── tools/\n│   └── search.go            ← search_patents tool (self-contained)\n├── bigquery/\n│   └── client.go            ← BigQuery query execution\n├── logger/\n│   └── logger.go            ← structured logging via zap\n└── models/\n    └── patent.go            ← shared Patent struct\n```\n\nEach tool owns its own dependencies — the server is agnostic of what tools do internally. Adding a new tool is a single line in `server/server.go`.\n\n## Contributing\n\nPRs welcome. To add a new tool:\n\n1. Create `tools/<toolname>.go`\n2. Define your input struct and tool definition\n3. Register it in `server/server.go` with one line\n\n## License\n\nMIT",
  "bytes": 3538,
  "sha": "65c683266f3e94a47cbacf2060e64fe0d40db9c5bef6fe94833708911a8c0378",
  "repo_slug": "tushariitr-19/patents-mcp",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_tushariitr_19_patents_mcp_24d1c9bf/readme"
}