chrome-extension is not a domain, but a scheme. That's why it doesn't work.
See this answer here: https://github.com/oauth-io/oauthd/issues/52
You need to use
"externally_connectable": {
"matches": ["https://oauth.io/*"]
},
in the manifest, then chrome.sendMessage
will be allowed to execute.