Skip to main content
Glama

Anwaltsprofil abrufen

get_lawyer
Read-onlyIdempotent

One lawyer's profile by id from search_lawyers: the official register entry with the date it was checked (chamber, admission, firm, office address, phone, fax, e-mail, website, beA id), Fachanwalt titles, contact data, languages, focus areas, opening hours and ratings per platform with the combined score. It holds what the public profile page (profile_url) shows, no more. Example: {"id": "8a0fa1b2c3d4e5f6"}

Input Schema

NameRequiredDescriptionDefault
idYesthe `id` of a search_lawyers result

Output Schema

NameRequiredDescriptionDefault
idNo
alsoNofurther professions (Notar, Patentanwalt)
cityNo
firmNoFirm name exactly as on record; null = no firm on record. Do not derive a firm from website, domain, address or colleagues.
nameNo
nextNowhat to call instead
noteNo
errorNotrue when the call could not be answered
linksNowebsite, linkedin, xing, google
detailNo
reasonNomachine-readable reason of an error
addressNothe office address the profile shows
contactNophone and email as the profile shows them
ratingsNo
registerNothe entry in the official register of the Bundesrechtsanwaltskammer as the profile shows it; null where the profile has none
verifiedNo
languagesNoLanguages other than German that the profile names, verbatim. Report only these; do not add German or any language not listed.
fachanwaltNoFachanwalt titles (certified specialist in an area of law)
professionNo
distance_kmNo
focus_areasNo
profile_urlNo
review_countNo
contact_notesNo
facts_sourcesNo
opening_hoursNo
ratings_scopeNo
correction_urlNo
combined_ratingNo0 to 5, over all rating platforms
other_registersNo
online_consultationNo
verified_in_register_onNoISO date the register entry was checked

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • addedInput schema / properties / id / description
      Added value: +"the `id` of a search_lawyers result"
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "properties": {
      +    "address": {
      +      "anyOf": [
      +        {
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "description": "the office address the profile shows"
      +    },
      +    "also": {
      +      "description": "further professions (Notar, Patentanwalt)",
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "city": {
      +      "type": "string"
      +    },
      +    "combined_rating": {
      +      "anyOf": [
      +        {
      +          "type": "number"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "description": "0 to 5, over all rating platforms"
      +    },
      +    "contact": {
      +      "description": "phone and email as the profile shows them",
      +      "properties": {
      +        "email": {
      +          "properties": {
      +            "retrieved_at": {
      +              "anyOf": [
      +                {
      +                  "type": "string"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ]
      +            },
      +            "source": {
      +              "description": "register, or where a newer value was read (website)",
      +              "type": "string"
      +            },
      +            "value": {
      +              "type": "string"
      +            }
      +          },
      +          "type": "object"
      +        },
      +        "phone": {
      +          "properties": {
      +            "retrieved_at": {
      +              "anyOf": [
      +                {
      +                  "type": "string"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ]
      +            },
      +            "source": {
      +              "description": "register, or where a newer value was read (website)",
      +              "type": "string"
      +            },
      +            "value": {
      +              "type": "string"
      +            }
      +          },
      +          "type": "object"
      +        }
      +      },
      +      "type": "object"
      +    },
      +    "contact_notes": {
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "correction_url": {
      +      "type": "string"
      +    },
      +    "detail": {
      +      "type": "string"
      +    },
      +    "distance_km": {
      +      "type": "null"
      +    },
      +    "error": {
      +      "description": "true when the call could not be answered",
      +      "type": "boolean"
      +    },
      +    "fachanwalt": {
      +      "description": "Fachanwalt titles (certified specialist in an area of law)",
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "facts_sources": {
      +      "items": {
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "firm": {
      +      "anyOf": [
      +        {
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "description": "Firm name exactly as on record; null = no firm on record. Do not derive a firm from website, domain, address or colleagues."
      +    },
      +    "focus_areas": {
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "id": {
      +      "type": "string"
      +    },
      +    "languages": {
      +      "description": "Languages other than German that the profile names, verbatim. Report only these; do not add German or any language not listed.",
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "links": {
      +      "additionalProperties": {
      +        "type": "string"
      +      },
      +      "description": "website, linkedin, xing, google",
      +      "type": "object"
      +    },
      +    "name": {
      +      "type": "string"
      +    },
      +    "next": {
      +      "description": "what to call instead",
      +      "type": "string"
      +    },
      +    "note": {
      +      "type": "string"
      +    },
      +    "online_consultation": {
      +      "type": "boolean"
      +    },
      +    "opening_hours": {
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "other_registers": {
      +      "items": {
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "profession": {
      +      "anyOf": [
      +        {
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ]
      +    },
      +    "profile_url": {
      +      "type": "string"
      +    },
      +    "ratings": {
      +      "items": {
      +        "properties": {
      +          "platform": {
      +            "type": "string"
      +          },
      +          "rating": {
      +            "anyOf": [
      +              {
      +                "type": "number"
      +              },
      +              {
      +                "type": "null"
      +              }
      +            ]
      +          },
      +          "retrieved_at": {
      +            "anyOf": [
      +              {
      +                "type": "string"
      +              },
      +              {
      +                "type": "null"
      +              }
      +            ]
      +          },
      +          "review_count": {
      +            "type": "integer"
      +          },
      +          "scale": {
      +            "anyOf": [
      +              {
      +                "type": "number"
      +              },
      +              {
      +                "type": "null"
      +              }
      +            ]
      +          },
      +          "scope": {
      +            "anyOf": [
      +              {
      +                "type": "string"
      +              },
      +              {
      +                "type": "null"
      +              }
      +            ]
      +          },
      +          "url": {
      +            "anyOf": [
      +              {
      +                "type": "string"
      +              },
      +              {
      +                "type": "null"
      +              }
      +            ]
      +          }
      +        },
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "ratings_scope": {
      +      "enum": [
      +        "lawyer",
      +        "firm",
      +        "mixed",
      +        null
      +      ]
      +    },
      +    "reason": {
      +      "description": "machine-readable reason of an error",
      +      "type": "string"
      +    },
      +    "register": {
      +      "anyOf": [
      +        {
      +          "type": "object"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "description": "the entry in the official register of the Bundesrechtsanwaltskammer as the profile shows it; null where the profile has none",
      +      "properties": {
      +        "address": {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "admitted_since": {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "bea_safe_id": {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "chamber": {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "duty_defence_interest": {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "email": {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "fax": {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "firm": {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "first_admitted": {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "mobile": {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "phone": {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "profession": {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "source": {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "verified_on": {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "web": {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "web_parked": {
      +          "type": "boolean"
      +        }
      +      }
      +    },
      +    "review_count": {
      +      "type": "integer"
      +    },
      +    "verified": {
      +      "properties": {
      +        "on": {
      +          "type": "string"
      +        },
      +        "register": {
      +          "type": "string"
      +        }
      +      },
      +      "type": "object"
      +    },
      +    "verified_in_register_on": {
      +      "anyOf": [
      +        {
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "description": "ISO date the register entry was checked"
      +    }
      +  },
      +  "type": "object"
      +}
  2. First observed

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly/idempotent/non-destructive/openWorld=false, so safety is covered. The description adds genuinely new behavior context: the record is an official register entry carrying a "date it was checked" (a freshness signal) and is capped at public-profile visibility, which tells the agent what it will and will not see.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the core statement and the sibling reference, then the payload scope, then a compact example. The enumerated field list is long but earns its place as a quick orientation; it could be trimmed since an output schema exists.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a one-parameter read of a single record, the description covers identity, id provenance, scope limits and freshness. Return values are separately covered by the output schema, so nothing an agent needs in order to call this correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the single `id` parameter already has a pattern and description, so the baseline is 3. The description adds provenance (must be a search_lawyers id) plus a concrete example value, which reduces malformed-id calls beyond what the schema conveys.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource ("One lawyer's profile by `id`") and immediately anchors it against the sibling by naming search_lawyers as the source of the id. It also bounds scope with "It holds what the public profile page (`profile_url`) shows, no more," so an agent can tell exactly which tool returns this data.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Clear about context: the id must come from a search_lawyers result, and the example shows the accepted shape. There is no explicit "when not to use" (e.g. use search_lawyers when you only have a name), so it stops short of full routing guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources