martinfowler.com
martinfowler.com
Software development is a young profession, and we are still learning the techniques and building the tools to do it effectively. I've been involved in this activity for over three decades and in the last two I've been writing on this website about patterns and practices that make it easier to build useful software. The site began as a place to put my own writing, but I also use it to publish arti
30
Not agent-ready yet
Agent-readiness score out of 100
- ✓ Clear description of the site
- ○ Several pages described
- ✓ Actions agents can take
- ○ 3 or more actions
- ○ Publishes its own LAWP (/.well-known/lawp.json)
- ○ Actions agents can execute
- ○ Business details (address, hours, phone)
How to improve this score
Up to +70 points:
+15 · Several pages described
List your key pages (services, prices, about, contact) in the
List your key pages (services, prices, about, contact) in the
pages of your starter lawp.json, or link them from your homepage and sitemap.+10 · 3 or more actions
Most businesses have at least three: contact, book or order, and view prices.
Most businesses have at least three: contact, book or order, and view prices.
+15 · Publishes its own LAWP (/.well-known/lawp.json)
Publish your starter lawp.json at
Publish your starter lawp.json at
/.well-known/lawp.json. WordPress: install the Actuent plugin. Cloudflare: use the one-click Worker.+15 · Actions agents can execute
Give an action an
Give an action an
endpoint on your domain so agents can do it for the user, not just link to it. See LAWP Actions.+15 · Business details (address, hours, phone)
Add schema.org business data to your homepage (the starter snippet). Google uses it too.
Add schema.org business data to your homepage (the starter snippet). Google uses it too.
Starter lawp.json for martinfowler.com
Made from what Actuent already knows. Edit it, then publish it at
https://martinfowler.com/.well-known/lawp.json. Check it with the LAWP Checker, or edit it in the LAWP Generator.{
"lawp_version": "0.3",
"domain": "martinfowler.com",
"name": "martinfowler.com",
"language": "en",
"pages": {
"/": {
"title": "martinfowler.com",
"content": "Software development is a young profession, and we are still learning the techniques and building the tools to do it effectively. I've been involved in this activity for over three decades and in the last two I've been writing on this website about patterns and practices that make it easier to build useful software. The site began as a place to put my own writing, but I also use it to publish arti"
}
},
"actions": [
{
"id": "search",
"name": "Search the site",
"input": {
"type": "text",
"required": true
},
"intent": [
"search",
"find",
"look up"
],
"description": "Search martinfowler.com"
},
{
"id": "contact",
"name": "Contact",
"description": "Send a message to martinfowler.com",
"intent": [
"contact",
"message",
"email",
"get in touch"
],
"input": {
"type": "object",
"required": true,
"fields": [
{
"name": "name",
"type": "string",
"required": true
},
{
"name": "email",
"type": "email",
"required": true
},
{
"name": "message",
"type": "string",
"required": true
}
]
}
}
]
}Starter schema.org snippet
Replace the example values, then paste into your homepage's <head>.
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "LocalBusiness",
"name": "martinfowler.com",
"url": "https://martinfowler.com",
"telephone": "+00 0000 0000",
"priceRange": "€€",
"address": {
"@type": "PostalAddress",
"streetAddress": "Street 1",
"postalCode": "0000",
"addressLocality": "City",
"addressCountry": "DK"
},
"openingHoursSpecification": [
{
"@type": "OpeningHoursSpecification",
"dayOfWeek": [
"Monday",
"Tuesday",
"Wednesday",
"Thursday",
"Friday"
],
"opens": "09:00",
"closes": "17:00"
}
]
}
</script>What AI agents can do here
Search the site
Search martinfowler.com
searchfindlook upFor AI agents
Get this site as structured JSON:
GET https://api.actuent.ai/api/search?q=martinfowler.com
Or connect Actuent to ChatGPT or Claude:
https://agents.actuent.ai/api/mcpLast updated 26 Sep 2026
Is this your site?
Claim martinfowler.com to edit what AI agents see, make your actions executable, and show your score:
Show your score:
<script src="https://api.actuent.ai/badge.js" data-domain="martinfowler.com" async></script> or the image https://api.actuent.ai/badge.svg?domain=martinfowler.com&style=cardActuent is a search engine for AI agents, made by localilabs. Data is generated automatically from public web content and may be incomplete.
