### Description

Before ES 7.x it was possible to provide a list of fields by URL or BODY request for field_caps API.
https://www.elastic.co/guide/en/elasticsearch/reference/6.8/search-field-caps.html
`POST _field_caps
{
   "fields" : ["rating"]
}`

Starting from 7.x this feature was removed, and only one possible way it uses URI but in this case, it is possible to have an error 414 (Request-URI Too Long).

I would like to return this feature back.
server/src/test/java/org/elasticsearch/action/fieldcaps/FieldCapabilitiesRequestTests.java
public void testGetDescription() {
        final FieldCapabilitiesRequest request = new FieldCapabilitiesRequest();
        assertThat(request.getDescription(), equalTo("indices[], fields[], filters[], types[]"));
        request.fields("a", "b");
        assertThat(
            request.getDescription(),
            anyOf(equalTo("indices[], fields[a,b], filters[], types[]"), equalTo("indices[], fields[b,a], filters[], types[]"))
        );
        request.indices("x", "y", "z");
        request.fields("a");
        assertThat(request.getDescription(), equalTo("indices[x,y,z], fields[a], filters[], types[]"));
        request.filters("-metadata", "-multifields");
        assertThat(request.getDescription(), endsWith("filters[-metadata,-multifields], types[]"));
        final String[] lots = new String[between(1024, 2048)];
        for (int i = 0; i < lots.length; i++) {
            lots[i] = "s" + i;
        }
        request.indices("x", "y", "z");
        request.fields(lots);
        request.filters(Strings.EMPTY_ARRAY);
        assertThat(
            request.getDescription(),
            allOf(
                startsWith("indices[x,y,z], fields["),
                containsString("..."),
                containsString(lots.length + " in total"),
                containsString("omitted")
            )
        );
        assertThat(