Skip to main content
ClaudeWave

Use this in Claude and other agents to work with markmesh.com

MCP ServersOfficial Registry5 stars0 forksMITUpdated today
Install in Claude Code / Claude Desktop
Method: Manual
Claude Code CLI
git clone https://github.com/team-markmesh/mark_mesh_skill
claude_desktop_config.json (Claude Desktop)
{
  "mcpServers": {
    "mark-mesh-skill": {
      "command": "node",
      "args": ["/path/to/mark_mesh_skill/dist/index.js"]
    }
  }
}
1. Run the command above in your terminal (Claude Code), or paste the JSON config into claude_desktop_config.json (Claude Desktop).
2. Replace any <placeholder> values with your API keys or paths.
3. Restart Claude. The MCP server and its tools appear automatically.
💡 Clone https://github.com/team-markmesh/mark_mesh_skill and follow its README for install instructions.
Use cases

MCP Servers overview

# MarkMesh MCP — trademark data your agent can cite

Connect Claude (Desktop or Code), or any [Model Context
Protocol](https://modelcontextprotocol.io) client, to **MarkMesh**: a
normalised trademark corpus across 30+ national and regional registers.

Three things this gives an agent that a wrapper around office APIs cannot:

- **Provenance on every record.** Which register it came from, when we fetched
  it, and a link to that office's own entry where the office publishes one.
  Your agent cites us, we cite the register.
- **Monitoring, not just search.** Register a watch and poll what changed.
  Monitoring needs something persistent to compare against, and a pass-through
  proxy holds nothing between calls.
- **Predictable lookups.** Most registers are served from our own store, so a
  lookup doesn't wait on an office API. Where we do query an office live, the
  response says so. See the [live coverage table](https://markmesh.com/data).

> For trademark lawyers and IP teams who want their portfolio one question
> away, and for builders putting trademark data underneath their own product.

## Quickstart

1. **Get an API key** — in MarkMesh, go to *Developers → API keys*
   (`mm_test_…` to experiment, `mm_live_…` for a real portfolio).
2. **Add the connector** — point your client at
   `https://markmesh.com/api/v1/mcp` with header
   `Authorization: Bearer <your-key>`. Full steps in **[SETUP.md](SETUP.md)**.
3. **Ask** — restart your client and try one of the questions below.

## Thirty seconds in

Once connected, this is the shape of a real exchange:

```
You:  Is "Kestrel" already taken in software, in the EU and UK?

Claude: I checked EUIPO and UKIPO for classes 9 and 42.

        Three candidates, closest first:

        KESTREL      EUIPO  018745231  registered
          text similarity 1.00 · shares classes 9, 42 · same territory
          https://euipo.europa.eu/eSearch/#details/trademarks/018745231
          (from our corpus, fetched 30 Jul 2026)

        KESTRAL      UKIPO  UK00003891234  registered
          text similarity 0.94 · shares class 9 · same territory
          https://trademarks.ipo.gov.uk/...

        KESTREL LABS EUIPO  018991002  pending
          text similarity 0.72 · shares class 42 · same territory

        Both offices answered, so nothing is missing from this run.

        I can't tell you whether the name is clear to use. That turns on
        how the goods and services are worded and whether these marks are
        actually in use, which needs a qualified professional. Want me to
        watch the pending one for status changes?
```

Note what it does **not** say. There's no risk score and no verdict, because
the API deliberately returns neither.

## What you can ask

| You say | It uses |
|---|---|
| "List my trademarks for client Acme." | `list_trademarks`, `list_clients` |
| "What's expiring in the next 90 days?" | `list_filings` (deadline fields) |
| "Search USPTO and EUIPO for 'orbital'." | `search_office` |
| "Does 'Kestrel' conflict with anything in class 9?" | `search_conflicts` |
| "Import EU trademark 018xxxxxx for Acme." | `import_filing_from_office` |
| "Tell me if that filing's status changes." | `create_watch` |
| "What changed since Monday?" | `watch_changes_since` |

## Build on it

- **[examples/watch_bot.py](examples/watch_bot.py)** — a complete monitoring
  bot in one file, standard library only. Fork it.
- **[SKILL.md](SKILL.md)** — the agent skill: drop it in a Claude Code skills
  dir, or use it as guidance for any MCP client.
- **[reference/tools.md](reference/tools.md)** — full tool + argument
  reference, including what every response guarantees.
- **[SETUP.md](SETUP.md)** — get a key and wire up Claude Desktop / Claude Code.
- **[llms.txt](https://markmesh.com/llms.txt)** — machine-readable summary of
  the whole surface.

## Capabilities & limits

- **Read** trademarks, filings (with renewal/expiry deadlines), clients and
  organisations.
- **Search** registers for marks, and run **conflict research** against a
  shortlist of names, scoped by Nice class.
- **Import** a filing into the portfolio, and **refresh** an existing one.
- **Watch** a filing and poll what changed.
- **Scoped & safe**: every request is limited to the key's organisation and
  gated by the same permissions as the app. There are **no delete tools** over
  MCP; destructive edits stay in the web app.
- **Not legal advice.** MarkMesh returns trademark data with its provenance.
  Whether a mark is available to use is a legal judgement for a qualified
  professional, and the conflict tool returns no verdict by design.
- **Sandbox**: a `mm_test_*` key gets its own isolated **portfolio** —
  trademarks, filings, clients and watches are separate from any live
  organisation. **Office search is not sandboxed**: `search_office` and
  `search_conflicts` read the same public register corpus a live key does,
  so a sandbox search returns real marks, not fixtures. That is deliberate
  (registers are public data, not tenant data) and it means you can
  evaluate real cross-office coverage before you pay. Only calls that go
  out to a live office adapter are routed to test endpoints.

## Support

Questions or a key that won't connect → your MarkMesh administrator, or the
*Developers* section of the app. Found a bug in this skill or these docs →
open an issue on this repo.

---

MIT licensed. © MarkMesh LTD.
agent-skillsclaude-skillintellectual-propertylegal-techmcpmcp-servermodel-context-protocoltrademark

What people ask about mark_mesh_skill

What is team-markmesh/mark_mesh_skill?

+

team-markmesh/mark_mesh_skill is mcp servers for the Claude AI ecosystem. Use this in Claude and other agents to work with markmesh.com It has 5 GitHub stars and was last updated today.

How do I install mark_mesh_skill?

+

You can install mark_mesh_skill by cloning the repository (https://github.com/team-markmesh/mark_mesh_skill) or following the README instructions on GitHub. ClaudeWave also provides quick install blocks on this page.

Is team-markmesh/mark_mesh_skill safe to use?

+

team-markmesh/mark_mesh_skill has not been audited yet by our security agent. Review the original repository on GitHub before using it in production.

Who maintains team-markmesh/mark_mesh_skill?

+

team-markmesh/mark_mesh_skill is maintained by team-markmesh. The last recorded GitHub activity is from today, with 0 open issues.

Are there alternatives to mark_mesh_skill?

+

Yes. On ClaudeWave you can browse similar mcp servers at /categories/mcp, sorted by popularity or recent activity.

Deploy mark_mesh_skill to your cloud

Ship this repo to production in minutes. Each platform spins up its own environment with editable env vars.

Maintain this repo? Add a badge to your README

Drop the badge into your GitHub README to show it's tracked on ClaudeWave. Each badge links back to this page and reflects the live Trust Score.

Featured on ClaudeWave: team-markmesh/mark_mesh_skill
[![Featured on ClaudeWave](https://claudewave.com/api/badge/team-markmesh-mark-mesh-skill)](https://claudewave.com/repo/team-markmesh-mark-mesh-skill)
<a href="https://claudewave.com/repo/team-markmesh-mark-mesh-skill"><img src="https://claudewave.com/api/badge/team-markmesh-mark-mesh-skill" alt="Featured on ClaudeWave: team-markmesh/mark_mesh_skill" width="320" height="64" /></a>

More MCP Servers

mark_mesh_skill alternatives