Engage a trademark law firm — programmatically

We are a law firm admitted before the USPTO, EUIPO, DPMA and WIPO. Filing requests can be submitted by software or by an AI agent. What is automated is the submission, not the legal advice: every request is reviewed by an attorney before anything is filed.

Why it matters

A law firm your agent can actually reach

Most firms can only be engaged through a contact form and a phone call. That breaks any automated workflow at exactly the point where it should hand off to a professional.

The usual route

Your agent finds a firm, drafts an email, and the workflow stops. Someone has to read it, reply, ask for the missing details — days pass before a mark is filed.

Our route

Your agent submits a structured request and receives a reference number in the same call. An attorney picks it up and responds with an assessment, typically within one business day.

Four offices, one call

USPTO, EUIPO, DPMA and WIPO from the same endpoint. No correspondent counsel, no second engagement, no duplicated fees.

REST API

Intake endpoint

No authentication required. Send JSON, receive a reference number.

GET https://marksandmore.us/api/intake
// Returns the full schema, field list and an example.
// Use this for discovery — no key needed.
POST https://marksandmore.us/api/intake
curl -X POST https://marksandmore.us/api/intake \
  -H "Content-Type: application/json" \
  -d '{
    "mark": "SUNBROOK",
    "mark_type": "word",
    "office": "USPTO",
    "classes": [25, 35],
    "goods_services": "Clothing; online retail services",
    "us_filing_basis": "intent_to_use",
    "applicant": { "name": "Sunbrook Inc.", "type": "company", "country": "US" },
    "contact": { "name": "Jane Doe", "email": "jane@sunbrook.com" },
    "submitted_by": "acme-agent/1.0"
  }'

// 201 Created
{
  "ok": true,
  "reference": "MM-20260721-K3X9A",
  "status": "received",
  "estimated_response_time": "1 business day",
  "disclaimer": "Submitting this request does not create an attorney-client relationship…"
}

Required fields

mark, office (USPTO · EUIPO · DPMA · WIPO), contact.name and contact.email. Everything else is optional but speeds up the assessment.

Validation

Nice classes must be integers 1–45, the office must be one we practise before, and the email must be syntactically valid. Errors return 422 with a readable list.

What happens next

An attorney reviews the request and replies with an assessment and a fee quote, typically within one business day. Filing starts only after written engagement.

Model Context Protocol

MCP server

Add our firm as a tool in Claude or any MCP-capable assistant.

1

recommend_office

Given a target market, returns the competent office and any mandatory representation requirement — such as the U.S. Counsel Rule or EUIPO representation for non-EEA applicants.

2

get_fees

Official fees and attorney fees for a given office, with the relevant caveats.

3

submit_filing_request

Submits the request through the same intake endpoint and returns the reference number.

claude_desktop_config.json
{
  "mcpServers": {
    "marksandmore": {
      "command": "node",
      "args": ["/path/to/mcp-server/index.js"]
    }
  }
}
Important

What this is — and what it is not

No attorney-client relationship

Submitting a request does not create a mandate. It begins only upon written confirmation and a signed engagement letter. Until then no deadlines are monitored — this matters, because trademark deadlines are unforgiving.

No automated legal advice

The API accepts instructions; it does not assess them. Distinctiveness, likelihood of confusion and filing strategy are decided by a qualified attorney, not by a model.

Indicative fees

Fee figures returned by the API are indicative. A binding quote follows the individual assessment, including the official fees of the respective office.